]> source.dussan.org Git - jquery-ui.git/commitdiff
Switched to latest stable jQuery 1.5.1
authorRichard Worth <rdworth@gmail.com>
Thu, 3 Mar 2011 01:44:26 +0000 (20:44 -0500)
committerRichard Worth <rdworth@gmail.com>
Thu, 3 Mar 2011 01:49:20 +0000 (20:49 -0500)
344 files changed:
demos/accordion/collapsible.html
demos/accordion/custom-icons.html
demos/accordion/default.html
demos/accordion/fillspace.html
demos/accordion/hoverintent.html
demos/accordion/mouseover.html
demos/accordion/no-auto-height.html
demos/accordion/sortable.html
demos/addClass/default.html
demos/animate/default.html
demos/autocomplete/categories.html
demos/autocomplete/combobox.html
demos/autocomplete/custom-data.html
demos/autocomplete/default.html
demos/autocomplete/folding.html
demos/autocomplete/maxheight.html
demos/autocomplete/multiple-remote.html
demos/autocomplete/multiple.html
demos/autocomplete/remote-jsonp.html
demos/autocomplete/remote-with-cache.html
demos/autocomplete/remote.html
demos/autocomplete/xml.html
demos/button/checkbox.html
demos/button/default.html
demos/button/icons.html
demos/button/radio.html
demos/button/splitbutton.html
demos/button/toolbar.html
demos/datepicker/alt-field.html
demos/datepicker/animation.html
demos/datepicker/buttonbar.html
demos/datepicker/date-formats.html
demos/datepicker/date-range.html
demos/datepicker/default.html
demos/datepicker/dropdown-month-year.html
demos/datepicker/icon-trigger.html
demos/datepicker/inline.html
demos/datepicker/localization.html
demos/datepicker/min-max.html
demos/datepicker/multiple-calendars.html
demos/datepicker/other-months.html
demos/datepicker/show-week.html
demos/dialog/animated.html
demos/dialog/default.html
demos/dialog/modal-confirmation.html
demos/dialog/modal-form.html
demos/dialog/modal-message.html
demos/dialog/modal.html
demos/draggable/constrain-movement.html
demos/draggable/cursor-style.html
demos/draggable/default.html
demos/draggable/delay-start.html
demos/draggable/events.html
demos/draggable/handle.html
demos/draggable/revert.html
demos/draggable/scroll.html
demos/draggable/snap-to.html
demos/draggable/sortable.html
demos/draggable/visual-feedback.html
demos/droppable/accepted-elements.html
demos/droppable/default.html
demos/droppable/photo-manager.html
demos/droppable/propagation.html
demos/droppable/revert.html
demos/droppable/shopping-cart.html
demos/droppable/visual-feedback.html
demos/effect/default.html
demos/effect/easing.html
demos/hide/default.html
demos/index.html
demos/menu/contextmenu.html
demos/menu/default.html
demos/position/cycler.html
demos/position/default.html
demos/progressbar/animated.html
demos/progressbar/default.html
demos/progressbar/resize.html
demos/removeClass/default.html
demos/resizable/animate.html
demos/resizable/aspect-ratio.html
demos/resizable/constrain-area.html
demos/resizable/default.html
demos/resizable/delay-start.html
demos/resizable/helper.html
demos/resizable/max-min.html
demos/resizable/snap-to-grid.html
demos/resizable/synchronous-resize.html
demos/resizable/textarea.html
demos/resizable/visual-feedback.html
demos/selectable/default.html
demos/selectable/display-grid.html
demos/selectable/serialize.html
demos/show/default.html
demos/slider/colorpicker.html
demos/slider/default.html
demos/slider/hotelrooms.html
demos/slider/multiple-vertical.html
demos/slider/range-vertical.html
demos/slider/range.html
demos/slider/rangemax.html
demos/slider/rangemin.html
demos/slider/side-scroll.html
demos/slider/slider-vertical.html
demos/slider/steps.html
demos/slider/tabs.html
demos/sortable/connect-lists-through-tabs.html
demos/sortable/connect-lists.html
demos/sortable/default.html
demos/sortable/delay-start.html
demos/sortable/display-grid.html
demos/sortable/empty-lists.html
demos/sortable/items.html
demos/sortable/placeholder.html
demos/sortable/portlets.html
demos/spinner/currency.html
demos/spinner/decimal.html
demos/spinner/default.html
demos/spinner/latlong.html
demos/spinner/overflow.html
demos/spinner/time.html
demos/switchClass/default.html
demos/tabs/ajax.html
demos/tabs/bottom.html
demos/tabs/collapsible.html
demos/tabs/cookie.html
demos/tabs/default.html
demos/tabs/manipulation.html
demos/tabs/mouseover.html
demos/tabs/sortable.html
demos/tabs/vertical.html
demos/toggle/default.html
demos/toggleClass/default.html
demos/tooltip/custom-animation.html
demos/tooltip/default.html
demos/tooltip/delegation-mixbag.html
demos/tooltip/forms.html
demos/tooltip/tracking.html
jquery-1.4.4.js [deleted file]
jquery-1.5.1.js [new file with mode: 0644]
tests/index.html
tests/static/accordion/default.html
tests/static/accordion/dl.html
tests/static/accordion/ul.html
tests/static/button/default.html
tests/static/datepicker/datepicker.html
tests/static/datepicker/default.html
tests/static/dialog/default.html
tests/static/dialog/dialog.html
tests/static/draggable/default.html
tests/static/droppable/default.html
tests/static/highlight_error.html
tests/static/icons.html
tests/static/index.html
tests/static/menu/all-menus-icons.html
tests/static/menu/default.html
tests/static/overlay.html
tests/static/progressbar/default.html
tests/static/progressbar/progressbar.html
tests/static/resizable/default.html
tests/static/selectable/default.html
tests/static/slider/default.html
tests/static/slider/default_vertical.html
tests/static/slider/slider_horizontal.html
tests/static/slider/slider_horizontal_range.html
tests/static/slider/slider_horizontal_range_max.html
tests/static/slider/slider_horizontal_range_min.html
tests/static/slider/slider_vertical.html
tests/static/slider/slider_vertical_range.html
tests/static/slider/slider_vertical_range_max.html
tests/static/slider/slider_vertical_range_min.html
tests/static/sortable/default.html
tests/static/tabs/default.html
tests/static/tabs/tabs.html
tests/unit/accordion/accordio.html
tests/unit/accordion/accordion.html
tests/unit/autocomplete/autocomplete.html
tests/unit/button/button.html
tests/unit/core/core.html
tests/unit/datepicker/datepicker.html
tests/unit/dialog/dialog.html
tests/unit/draggable/draggable.html
tests/unit/droppable/droppable.html
tests/unit/menu/menu.html
tests/unit/position/position.html
tests/unit/progressbar/progressbar.html
tests/unit/resizable/resizable.html
tests/unit/selectable/selectable.html
tests/unit/slider/slider.html
tests/unit/sortable/sortable.html
tests/unit/spinner/spinner.html
tests/unit/tabs/tabs.html
tests/unit/tooltip/tooltip.html
tests/unit/widget/widget.html
tests/visual/accordion/accordion.html
tests/visual/accordion/accordion_dl.html
tests/visual/accordion/accordion_method_destroy.html
tests/visual/accordion/accordion_method_disable.html
tests/visual/accordion/accordion_option_animated_bounceslide.html
tests/visual/accordion/accordion_option_animated_easeslide.html
tests/visual/accordion/accordion_option_animated_false.html
tests/visual/accordion/accordion_option_animated_slide.html
tests/visual/accordion/accordion_option_animated_true.html
tests/visual/accordion/accordion_option_autoHeight_false.html
tests/visual/accordion/accordion_option_autoHeight_true.html
tests/visual/accordion/accordion_option_fillSpace_true.html
tests/visual/accordion/accordion_option_navigation_true.html
tests/visual/accordion/accordion_ticket_4322.html
tests/visual/accordion/accordion_ticket_4331.html
tests/visual/accordion/accordion_ticket_4444.html
tests/visual/accordion/accordion_ul.html
tests/visual/addClass/addClass_queue.html
tests/visual/all.html
tests/visual/animate/animate_backgroundColor_hex.html
tests/visual/animate/animate_backgroundColor_rgb.html
tests/visual/animate/animate_color_hex.html
tests/visual/animate/animate_color_rgb.html
tests/visual/autocomplete/autocomplete.html
tests/visual/button/button.html
tests/visual/button/button_disabled_true.html
tests/visual/button/button_input_type_checkbox.html
tests/visual/button/button_option_disabled_true.html
tests/visual/button/button_performance.html
tests/visual/button/button_ticket_5254.html
tests/visual/button/button_ticket_5261.html
tests/visual/button/button_ticket_5278.html
tests/visual/compound/accordion_dialog.html
tests/visual/compound/accordion_tabs.html
tests/visual/compound/datepicker_dialog.html
tests/visual/compound/draggable_accordion.html
tests/visual/compound/draggable_accordion_accordion_tabs_draggable.html
tests/visual/compound/sortable_accordion_sortable_tabs.html
tests/visual/compound/tabs_tabs.html
tests/visual/compound/tabs_tooltips.html
tests/visual/compound/widgets_in_dialog.html
tests/visual/datepicker/datepicker.html
tests/visual/datepicker/datepicker_multi_inline.html
tests/visual/datepicker/datepicker_ticket_4071.html
tests/visual/datepicker/datepicker_ticket_4240.html
tests/visual/datepicker/datepicker_ticket_4443.html
tests/visual/datepicker/datepicker_ticket_5676.html
tests/visual/datepicker/multimonth.html
tests/visual/datepicker/viewport.html
tests/visual/dialog/dialog.html
tests/visual/dialog/dialog_on_page_with_large_dom.html
tests/visual/dialog/dialog_on_page_with_scrollbars.html
tests/visual/dialog/dialog_option_buttons_OK_Cancel.html
tests/visual/dialog/dialog_option_closeOnEscape_false.html
tests/visual/dialog/dialog_option_closeOnEscape_true.html
tests/visual/dialog/dialog_option_modal_false.html
tests/visual/dialog/dialog_option_modal_true.html
tests/visual/dialog/dialog_option_position_right_top.html
tests/visual/dialog/dialog_ticket_4350.html
tests/visual/dialog/dialog_ticket_4826.html
tests/visual/draggable/draggable.html
tests/visual/draggable/draggable.scroll.html
tests/visual/draggable/draggable_option_containment_array.html
tests/visual/draggable/draggable_option_cursorAt_object.html
tests/visual/draggable/draggable_option_handle_selector.html
tests/visual/draggable/draggable_option_iframeFix_false.html
tests/visual/draggable/draggable_option_iframeFix_selector.html
tests/visual/draggable/draggable_option_iframeFix_true.html
tests/visual/droppable/droppable.html
tests/visual/droppable/droppable_option_accept_default.html
tests/visual/droppable/droppable_option_accept_function.html
tests/visual/droppable/droppable_option_accept_selector.html
tests/visual/droppable/droppable_ticket_4087.html
tests/visual/droppable/droppable_ticket_4088.html
tests/visual/effects.all.html
tests/visual/menu/contextmenu.html
tests/visual/menu/drilldown.html
tests/visual/menu/menu.html
tests/visual/menu/menubar.html
tests/visual/menu/tablemenu.html
tests/visual/position/position.html
tests/visual/position/position_margin.html
tests/visual/progressbar/progressbar.html
tests/visual/resizable/resizable.html
tests/visual/resizable/resizable_option_alsoResize_child.html
tests/visual/resizable/resizable_option_aspectRatio_0.5.html
tests/visual/resizable/resizable_option_aspectRatio_1.0.html
tests/visual/resizable/resizable_option_aspectRatio_1.5.html
tests/visual/resizable/resizable_option_aspectRatio_preserve_maxHeight_150.html
tests/visual/resizable/resizable_option_aspectRatio_preserve_maxWidth_150.html
tests/visual/resizable/resizable_option_aspectRatio_preserve_minHeight_50.html
tests/visual/resizable/resizable_option_aspectRatio_preserve_minWidth_50.html
tests/visual/resizable/resizable_option_aspectRatio_preserve_w100xh100.html
tests/visual/resizable/resizable_option_aspectRatio_preserve_w100xh50.html
tests/visual/resizable/resizable_option_aspectRatio_preserve_w50xh100.html
tests/visual/resizable/resizable_ticket_3053.html
tests/visual/resizable/resizable_ticket_4199.html
tests/visual/resizable/resizable_ticket_4217.html
tests/visual/resizable/resizable_ticket_4940.html
tests/visual/resizable/resizable_ticket_5335.html
tests/visual/selectable/selectable.html
tests/visual/selectable/selectable_ticket_4341.html
tests/visual/slider/slider.html
tests/visual/slider/slider_horizontal.html
tests/visual/slider/slider_horizontal_range.html
tests/visual/slider/slider_horizontal_range_max.html
tests/visual/slider/slider_horizontal_range_min.html
tests/visual/slider/slider_in_container_with_scrollbars.html
tests/visual/slider/slider_method_destroy.html
tests/visual/slider/slider_method_disable.html
tests/visual/slider/slider_option_animate_false.html
tests/visual/slider/slider_option_animate_true.html
tests/visual/slider/slider_option_max_3.html
tests/visual/slider/slider_option_max_30.html
tests/visual/slider/slider_option_max_300.html
tests/visual/slider/slider_option_min_-3.html
tests/visual/slider/slider_option_min_-30.html
tests/visual/slider/slider_option_min_-300.html
tests/visual/slider/slider_option_orientation_horizontal.html
tests/visual/slider/slider_option_orientation_vertical.html
tests/visual/slider/slider_option_range_false.html
tests/visual/slider/slider_option_range_max.html
tests/visual/slider/slider_option_range_min.html
tests/visual/slider/slider_option_range_true.html
tests/visual/slider/slider_option_step_25.html
tests/visual/slider/slider_option_step_5.html
tests/visual/slider/slider_option_value_3.html
tests/visual/slider/slider_option_value_30.html
tests/visual/slider/slider_option_values_25_50_75.html
tests/visual/slider/slider_option_values_25_75.html
tests/visual/slider/slider_option_values_50.html
tests/visual/slider/slider_ticket_3736.html
tests/visual/slider/slider_ticket_3762.html
tests/visual/slider/slider_ticket_4385.html
tests/visual/slider/slider_ticket_4467.html
tests/visual/slider/slider_vertical.html
tests/visual/slider/slider_vertical_range.html
tests/visual/slider/slider_vertical_range_max.html
tests/visual/slider/slider_vertical_range_min.html
tests/visual/sortable/sortable.html
tests/visual/sortable/sortable_massive_scale.html
tests/visual/sortable/sortable_option_revert_false.html
tests/visual/sortable/sortable_option_revert_true.html
tests/visual/sortable/sortable_ticket_4231.html
tests/visual/sortable/sortable_ticket_4551.html
tests/visual/sortable/sortable_ticket_5355.html
tests/visual/spinner/spinner.html
tests/visual/tabs/tabs.html
tests/visual/theme.html
tests/visual/tooltip/callout.html
tests/visual/tooltip/tooltip.html

index 8e27e2125247c8e96871116191faf2e46ea0db21..f77fdc05c8c4cfb10957620efef45e4439304723 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Accordion - Collapse content</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.accordion.js"></script>
index 3ec244131a2bbc67e6a708bff002b6706b495394..4f78b47d8c8f5bcaaecb12a8f500f9b0798e9c06 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Accordion - Customize icons</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.accordion.js"></script>
index 974dc0569e3676f959ba6c68c261e9a2d476a19f..e24a5863360406457c9130b23e3c929f16b997fc 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Accordion - Default functionality</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.accordion.js"></script>
index 6cdd691810c47f0ac9d7e9a527f899cd8126fbc2..945ea3d1bc6ec31d555908ceaa8f83b5029cfdae 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Accordion - Fill space</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 6633408b6ac94b2f0966f8bb240fe460872dbf62..570be752d3d3382c12cc530610eaaed7bb730afd 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Accordion - Open on hoverintent</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.accordion.js"></script>
index 836f35530a549a6bef4e447cd0cc256d4c16b3ed..d2cc7dbc0f15eb65bc9620374e2d6be1cfdef40f 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Accordion - Open on mouseover</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.accordion.js"></script>
index 4df1c145dad1c16aa79171bc12a8b174dbddcf59..ffda31965302fbdb5cbef7c2282a4709d07f73b8 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Accordion - No auto height</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.accordion.js"></script>
index e0925c4fca59b8b026bae4d7fdfb3707cdde9802..1bfce6fe190c7ce5f47704c273f89f11e32b5630 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Accordion - Sortable</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index cb1d7408decd4de9a28b0ef6ff613857f4b9a2f1..73502d6fb558b0835108b4b21ad3b1f25e1e9290 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Effects - addClass demo</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.effects.core.js"></script>
        <link rel="stylesheet" href="../demos.css">
        <style>
index 3c5725a81372d3e58522001e36fe33ff0ac2367c..284f0fe4f162880b12d5c75b8e816a2c2e1d2021 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Effects - Animate demo</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.effects.core.js"></script>
        <link rel="stylesheet" href="../demos.css">
        <style>
index 163c969dd74851859767c0440408856b8394d39d..17ec6495de373f9ada7245ff8cd0783e27304cdd 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Autocomplete - Categories</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.position.js"></script>
index 1ccb093857e176c8fc67072371395da6818f5c77..56e4aa0216bf570f1eeabb287aa0b319a1c793e5 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Autocomplete - Combobox</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.button.js"></script>
index 8a3a0b23575bbdf92d2d08b1e57fd3c6afaa968d..a4edc4fccde947c9a2e176d6e518a68cc7cf3e1b 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Autocomplete - Custom data and display</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.position.js"></script>
index 9de61467f2c3596072d86f09a8b09d6f9476fe84..80e7642d42d7090ebe755e754913e5c5354975b7 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Autocomplete - Default functionality</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.position.js"></script>
index cea358a8dd016604437ae5101b945282537074b5..f3e45502bbad1e6ca387820e735bc4e78627d6e3 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Autocomplete - Accent folding</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.position.js"></script>
index 7e0e0f90337eedd80cf8229cec0b87a52ab361ec..fc0b4840c6215f524a7b18e05d0030d5e31f97d5 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Autocomplete - Scrollable results</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.position.js"></script>
index b5111dd4e6165f73a1e569e1db3f1071de058927..9351e8f3b919590ef02e91dd52e7ba6655e39cd8 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Autocomplete - Multiple, remote</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.position.js"></script>
index 0b8e14478d148d29b0077ca011f6d50c8084f24f..4e67bf7e7823e5b8d29a2a2101ee4697ce3473f1 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Autocomplete - Multiple values</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.position.js"></script>
index 986e9f0f037508cc8ea5af026c286d8cc25f1f03..1cc71d1e34ce049bb370c52837f5cc4340c5aa05 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Autocomplete - Remote JSONP datasource</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.position.js"></script>
index a6b02f255cdf6f8507e55522fc62dc9062f63f19..d7aabd72a144f7fa6d2b3f7cc559cdbc9234df56 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Autocomplete - Remote with caching</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.position.js"></script>
index c8ee849fedee7a90bc51b95a871550c06a6be220..5538b28226e7e683666b3f687a608ca9b3842f0d 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Autocomplete - Remote datasource</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.position.js"></script>
index fff432e588e48357bb7bc086e60206fa35b5d8e5..18178391dcf6dbab55617f837514b2edbec313fc 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Autocomplete - XML data parsed once</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.position.js"></script>
index 13af61ff92dff3294c56a9507e754942d525a368..0caf958c3658bfc145b98e797f4ef08d7bac6d1b 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Button - Checkboxes</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.button.js"></script>
index f11fba2f72002e3942bfbfa8f3d925d5169384b5..1ea3fa79652959bed1edf3e454f1549de4aee054 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Button - Default functionality</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.button.js"></script>
index 423a19fcc8f83217f0657f74f7406ba26888b3c2..1badb3f5d077b176712684ca0508b5451b339fa1 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Button - Icons</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.button.js"></script>
index 5c1f87da1354b0d27be0b72d490931dfac787978..5f725ca8d6bb1b8ec4230993b0813f21ab7945e0 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Button - Radios</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.button.js"></script>
index 966ec8b97e018b2ad337b065741069e92e1b67de..215adb6b6cb871d790304ece8171686e1e8ceb13 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Button - Split button</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.button.js"></script>
index 647c4fca8f7ed9708b25234a45a9e978d0ad7cc3..d68b2d9ca64ae82e90b3d713df30a76cd4f5a6e5 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Button - Toolbar</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.button.js"></script>
index aade17748f30cddba957d90792ba1ec8f8455a95..c60b21af7825508c9d924ad8af8c2c1efc00b849 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Datepicker - Populate alternate field</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.datepicker.js"></script>
index 3bfa667306df0ee2e441864de6312f2d6d20148e..9814b98f88cee3548bb400a6f7a9dd38b390d197 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Datepicker - Animations</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.effects.core.js"></script>
index 4e95b1c165ea3362888078d259217880d1afd225..3b3be3bb33f5bc601755f398f64ab43f8c827c93 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Datepicker - Display button bar</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.datepicker.js"></script>
index e208cf62b4cc4a7f14cf1fc190ecdc62337121d7..e1ac6737bc270d4da3e2aebb8dc9c4f4653be612 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Datepicker - Format date</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.datepicker.js"></script>
index 6bce3f776d58964c301325588780a2ab257179b7..bf9b9a3e5c22d7897343db0996f42d8fbbcee39b 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Datepicker - Select a Date Range</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.datepicker.js"></script>
index 5b87830a18b65e24fc82ddf4da3a0093164998bf..d50ac0de7accf80a7be58d7a88585bb68b33012a 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Datepicker - Default functionality</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.datepicker.js"></script>
index db833db843cff6c5d6bbc50a1e997efa454c8090..8392a1593b5edbcb802f9e59c8f15ca4e858256f 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Datepicker - Display month &amp; year menus</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.datepicker.js"></script>
index 95da8dd4b64a68086a09ab73527731f940c02e01..5f4edc7f31722f41036eb3f6b78f0d5f0db5add4 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Datepicker - Icon trigger</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.datepicker.js"></script>
index 8d8cac6ee491b61c2796973f2986d37d7469e4af..19c4b04208818cae7e91365ef447d04a6b90069b 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Datepicker - Display inline</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.datepicker.js"></script>
index 766054c1893183bdb4ca77dd50f43a982a46db10..91036111f898af42fa9bd472f1d8b0dde536c65f 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Datepicker - Localize calendar</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.datepicker.js"></script>
index eb01daacf7531cc420bece2f54ba724583636415..e27339e10f089001bb9abf53d212a7b081ba494a 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Datepicker - Restrict date range</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.datepicker.js"></script>
index 2098941ef9bdb3c735baf8b06e0765a0d35d8d23..0c762f7297013b37db73739d7dab4dfaecd6f296 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Datepicker - Display multiple months</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.datepicker.js"></script>
index ce1d63073a28b1133462f661fe0c2c01a0c6c91d..78a04f2c3f7093875bbb2101e80a74f57fc52fdb 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Datepicker - Dates in other months</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.datepicker.js"></script>
index 5390463c4e8a7cef0f43c8cd03f00be8a1b25cd3..1cdb349bd72427cba200cf260f9000bca0e5e960 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Datepicker - Show week of the year</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.datepicker.js"></script>
index f96fa196dffd5e6c0df6c2ecf9508d47c3732a5d..200db3fe01e9463c6e14dcc729677bc0a57e2ee5 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Dialog - Animation</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../external/jquery.bgiframe-2.1.2.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
index 5dbea34976c1581dc4576a7f8d9b2deb2d22ec0b..083f7aa5403e942fea3221830a05aaf4f11ffc09 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Dialog - Default functionality</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../external/jquery.bgiframe-2.1.2.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
index 3853056f063cf1f864012dfa3ac76f81b2499cda..e316a97bf38890439d7c8949cc315da9dc00122b 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Dialog - Modal confirmation</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../external/jquery.bgiframe-2.1.2.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
index bd8d90cfe69c974eaa838dbf968a25edef3a4a65..5793b32eeb995e3dd05f4f0d2439fa17826617ff 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Dialog - Modal form</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../external/jquery.bgiframe-2.1.2.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
index bbac877697a1bba609c33e0705b60da96434b9e4..90a88c33e7aaa59ac5e472fd41ce9293723f99b4 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Dialog - Modal message</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../external/jquery.bgiframe-2.1.2.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
index abde0f4fe1a0f16a7004d7a64d9622589c55fff8..ce56c30edd7f904249a7bca9e0428cf4c2da667a 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Dialog - Basic modal</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../external/jquery.bgiframe-2.1.2.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
index 6448024971a108973c7f0aab77925d811ff85a1d..9610fc48db721e4907cee6604e9721e86eccdb82 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Draggable - Constrain movement</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 258a29b5d8d43bdc9ad5b950bcdf9badd85f8843..6ef5426ed11bb961ff36bf407f45847c196b36b6 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Draggable - Cursor style</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index fb5e880e21e81125198aa722714fa06f9d02c3f1..d8085b0b854efe1e5b31dae7294aa2efef2332d4 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Draggable - Default functionality</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 34dbcbdf7abe16e2fdaf59684aeee2b15a84cabf..45e3edae2729419b828a09881bbc0aa37d81c9aa 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Draggable - Delay start</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index accf8b562f0e3300ef0ce5c2e5cc510ceda8763d..ed067d12072b355f3dbacf6724409bacedf90cb4 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Draggable - Events</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 6a3a51c5e54f1ea19188e89f53021c7a165960de..dc6d7b9e63bc93d447e159c8c5779177ced288bd 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Draggable - Handles</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 7558008adb5165f924d6638891698bf339e03d94..11f3abdfac941f3c33cb8713d17a428bffd71f35 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Draggable - Revert position</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 943cd0ae1c196175ff52dddad07cb69edffe92e7..a650ed5d96d5b98fe7578630348a3ec5563cd656 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Draggable - Auto-scroll</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 0e4c210aa3f6c9706718cd03f54d1a0281904bb3..14e254e478a03cc794e24ed1310e712a99230985 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Draggable - Snap to element or grid</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 2e526a4cefd392383942034a9bd1e07e601255f2..4bc32986df15f00f6f3f2053cdbf4848d869e866 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Draggable + Sortable</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index f78c8e9f74bbdf97088e7568577b52e3a359e697..5d0ff2668f35423aa0c9f13c291852d34b808259 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Draggable - Visual feedback</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 18ce747e2c7bf67e4fe867273cd8a8d589429582..a2e3b3321cfcb23a054ab155d3caf20a1efe3b51 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Droppable - Accept</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 6f91a3d99798a1acf0225e8fb26fd9e36e8ace1b..4de66d70a2a2390364326d7313ece2313ad1e5bf 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Droppable - Default functionality</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index e1a74b08b9590e827e526f7e3b14f52dab6edcff..2b16eb7b2f69ed80045c93b6a363485e30c18502 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Droppable - Simple photo manager</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.position.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
index 4842f0db45562835c08a140b7daf1ba51b21af67..3275dd2a6ed30f1c040cb503ac766832b309a118 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Droppable - Prevent propagation</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 7bcf545fea238912ccce2b705d1f0927690b423b..24da889b137620cfd5df125cf99e1bfeec643510 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Droppable - Revert draggable position</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 39098f5d0bdf7ccf2c5bfdd048adf8c5ddb1fc2c..4fb9a87bab60f287424b815a360f66934aedb664 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Droppable - Shopping Cart Demo</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 6b58d034e21853029d97ce1244a06975e60728b1..ff2ddc6ca717b8f4c3f8c3bd60d277be5b1d711f 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Droppable - Visual feedback</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index b711f739f15768268bcc85eac0c0d9cd222c0339..6be20f38d059b98bbc030aafe967231f93db18d7 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Effects - Effect demo</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.effects.core.js"></script>
        <script src="../../ui/jquery.effects.blind.js"></script>
        <script src="../../ui/jquery.effects.bounce.js"></script>
index b4901f505c2bcb381e4c7b1d853629305abc04b5..d76957118964e8de532e922e6de0e34e7b40cd3b 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Effects - Easing demo</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.effects.core.js"></script>
        <link rel="stylesheet" href="../demos.css">
        <style>
index 6a2113ee0cd5fdfc68138372cd5787d11c16ff42..1409024cb01e1cd93335428e2f6d07e102852927 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Effects - Hide Demo</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.effects.core.js"></script>
        <script src="../../ui/jquery.effects.blind.js"></script>
        <script src="../../ui/jquery.effects.bounce.js"></script>
index 7147255d7746a84c983b3e39effd13d4ad8d0a5e..22dbfc5c5c32118fda03d3e61de01e9cb7c1e328 100644 (file)
@@ -5,7 +5,7 @@
        <title>jQuery UI Demos</title>
        <link rel="stylesheet" href="../themes/base/jquery.ui.all.css">
        <link rel="stylesheet" href="demos.css">
-       <script src="../jquery-1.4.4.js"></script>
+       <script src="../jquery-1.5.1.js"></script>
        <script src="../external/jquery.bgiframe-2.1.2.js"></script>
        <script src="../external/jquery.global.js"></script>
        <script src="../external/jquery.global.de-DE.js"></script>
index 7869d43643c6b482b859f64d653dd9c8f92e3722..0fb98c140b88acff95512c971de12a5f761b492c 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="UTF-8" />
        <title>jQuery UI Menu - Contextmenu demo</title>
        <link type="text/css" href="../../themes/base/jquery.ui.all.css" rel="stylesheet" />
-       <script type="text/javascript" src="../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.position.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.widget.js"></script>
index 4e2f50002de59564fab3abc3614187fad8a42629..2d9dddf28309c861a381c2f1e209ff734571d771 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="UTF-8" />
        <title>jQuery UI Menu - Default demo</title>
        <link type="text/css" href="../../themes/base/jquery.ui.all.css" rel="stylesheet" />
-       <script type="text/javascript" src="../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.menu.js"></script>
index 69b7fa0f8d5479c5671aecbef587009d4339af1c..b52e22724619936d1271fcea0ea6a3dce3b9a972 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Position - Default functionality</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.position.js"></script>
index 13b2315f7433bd76936e313981e1d99ad2372615..87fc8e38a1f157e566245ca02e160c298912a31b 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Position - Default functionality</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index bf8dbb8d5e4c177879f2f26fc4e905e62d5fa81b..73f5477268023b4b1f9b4b015297c00cf4e7ffb2 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Progressbar - Animated</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.progressbar.js"></script>
index 15133bb8c8aeae96ebe03265fc47a9cdcbcb57c6..5c6ca43db7edb31bd15c652233e7830a3366ba42 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Progressbar - Default functionality</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.progressbar.js"></script>
index 6674c85c3fb7a46fdbf71f662cbc4856873dedd4..adc1fbbfb1e3c5ad4f42db9e3f68ce670620841b 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Progressbar - Resizable</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 11e5cdfa57f22ca73adbb96af2e6864abf481d1c..3bd52e6408908d622acb5506974970ba1fce9ed3 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Effects - removeClass Demo</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.effects.core.js"></script>
        <link rel="stylesheet" href="../demos.css">
        <style>
index 6a4e853dede2efc84723119f5d044a5668b24abc..c288d62bc2ac475f958ee998b647fb6500107b10 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Resizable - Animate</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index dbfa3869020d4631937a8ef8ab213f86d4242500..421f2e4aaee738fc2e0aa7dde61229243051a7a3 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Resizable - Preserve aspect ratio</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index edd3870f60a12b026b6b63802cded779aa82e5bd..a7003352c07849704558ff2516fbd01ce6d4923f 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Resizable - Constrain resize area</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 01efa472d410ba7d825ca6c78bbc9158abfb102e..ded33329fbc4d7b6353af816fa76a77794ed5948 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Resizable - Default functionality</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 66e047a813f94b7443bd959287cbf1594e2cd155..6fc2cc2d61c11214216542a3efbbd9380beb5e77 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Resizable - Delay start</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 6e986c64665a73b992f6102608afb8c4e2f590fa..a3638561769eec2b0b0a14964781ca55b0ae8ec9 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Resizable - Helper</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 11cb407bd741d27ea6d30b1ed0c5abc7862995fc..81be5dd5db0f77ff79fcc982f52b41634e3d53b9 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Resizable - Maximum / minimum size</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 45e299aeafd6239168601bf2278095045ddfd5f1..568c1c743e2f287fc2c8d784e86d1107632e4903 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Resizable - Snap to grid</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 45f0a3eab8f76e851585a8bc186bf47791b9483c..74e54da4794eb177922caa55575651a6c9f98b66 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Resizable - Synchronous resize</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 50f7ee70eaabc5cf22e3faee86346def4e39fc73..2d00e0ded40821faf336949be4ff50e269b56e2c 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Resizable - Textarea</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 79ef57f175bad21e8a995d8f727a18c65a19820f..fc61a6bcba7232282e34c71a10ac0b72de1b31bd 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Resizable - Visual feedback</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index bb3cc05dd8edbfdca32ae8d7eb74b7fb01f854d8..983a04b3f2ac5e2fa830504a3ede9e93d5d2235b 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Selectable - Default functionality</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index e486f830178d8e87535a72a917eb72b1b6edc0e0..b045eb99c173901efc844d37f5e14f9c2688a7bf 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Selectable - Display as grid</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 924a7cc2a63a45c4971319ecd5e45ae53f222a88..18e35dae2c3c28f52e8dc0866be97926053dcea0 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Selectable - Serialize</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 9386ff1e10c1f600b60d0c28a1424c57a4126bd2..49ca85675b3a0d7b6791c5b1ff047bfbe722cb1f 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Effects - Show Demo</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.effects.core.js"></script>
        <script src="../../ui/jquery.effects.blind.js"></script>
        <script src="../../ui/jquery.effects.bounce.js"></script>
index 7aa90d49b96364453dc62115cb4e9763fa8bb544..8192e08a75c459c97794bbca4517637a4f24baac 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Slider - Colorpicker</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index e1aabef4fbc467032c9f9e8e5865cdaaa9c6073a..fdcd4cff956ae728f14dcdb1106525268ab3e378 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8" >
        <title>jQuery UI Slider - Default functionality</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index c5a4954c086396c361818f171db6841186d682fe..2ba4b9970f7a6c45f20d5cea4667a3ab1c13c42c 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Slider - Range with fixed minimum</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 36cde9c643a93a612544a95c80dbb33ea06f9810..372ad2d93cf0972fc980b07270a9378f953ec8a3 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Slider - Multiple sliders</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index eef1e6f99901cc37c2d32190b5d177bf560cf1de..2a1a8b4e957b0b2fbf0b244af834690b8a769c00 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Slider - Vertical range slider</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 4ee752b68adc85fba03f35424e4ccaade9cb332c..3fd156dc33952a09d04953a69c62e6235bb29181 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Slider - Range slider</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 8a8a3ce8075e41c2a4f7f30fad898e53c6fef4bc..899efb28aa24104775e9f830ee8695472535b111 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Slider - Range with fixed maximum</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index e9527dc3cc8e4f9e8270bbbbf5c5a96575440663..3e077d9091ac080ab0bdc76da59757243efbc753 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Slider - Range with fixed minimum</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index c159653a89763cc3ed07792ee25de039d1ceab31..666d480a02882c1632b9852279fe0012973b2bdb 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Slider - Slider scrollbar</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 006f45ec0eae7a8427aea5c495502738a7af1fca..479e778ff9c59a16bdd57e4b3fced93f6b13cd40 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Slider - Vertical slider</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 6a84b2f8a7e348ba1990378a71e6c7776ca3c155..c49e26fb38535ca78941a47bd286ce0f3e17fd3d 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Slider - Snap to increments</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index eabda00aa73a85fcf85a323123af284036a0579b..440ac587d2d5a49b478fe2dae792bd3aa7ede360 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Slider - Snap to increments</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index c5c2dfad15ac4a42dbef192ff921c80fcd5dcc40..d466da80c860ad12bb42f405c74d9643508c8c4d 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Sortable - Connect lists with Tabs</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index e75e231939d08bc23d06681dc042e81ee2294188..d0b2c5ce1d77097d95595b6ee9550a16f0f344c4 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Sortable - Connect lists</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index adf8343c978966f864c98bb52f006cded2205259..d0ef0df69dfe00339319706efba064dec916f9ac 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Sortable - Default functionality</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 35d1d52f5d1f8e095a3e4d881dbc8cad89e6d91f..48a9c1f6396b64a6458997382bca34e75ae4d051 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Sortable - Delay start</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index aed60cdf6b884a6381e068613702a17066f7d340..c32e309f30b01b6dc35220a91a2042bbe8191f75 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Sortable - Display as grid</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index ac269dfe23c76d8966cb4b0ea7f14b4e893d522b..d1c968096d219f5d5d0a2f0897780976d7a76ce3 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Sortable - Handle empty lists</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 8858b30191e1437c119c0f074cbcab4f9b282df3..334cdeb3463bca6963e81b081e4cf2e19cfadb2f 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Sortable - Include / exclude items</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 400c8dce8bbed7100c11abc4f00a3dea1fe10154..90198f3d1a3817d0e1d0ff31faf890a6eef58738 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Sortable - Drop placeholder</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index fc72c8229fd2d59538eb41cdea8908abe19c1642..1e5e956d8a6b0ac0b2bfdd47f0b1d60f2467f455 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Sortable - Portlets</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index 44fed4c42e516e7cf1a89037a508f7ca6d1719aa..8288e4c3de521640d357395076c9b71cd35cf521 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">\r
        <title>jQuery UI Spinner - Default functionality</title>\r
        <link type="text/css" href="../../themes/base/jquery.ui.all.css" rel="stylesheet" />\r
-       <script type="text/javascript" src="../../jquery-1.4.4.js"></script>\r
+       <script type="text/javascript" src="../../jquery-1.5.1.js"></script>\r
        <script type="text/javascript" src="../../external/jquery.mousewheel-3.0.4.js"></script>\r
        <script type="text/javascript" src="../../external/jquery.global.js"></script>\r
        <script type="text/javascript" src="../../external/jquery.global.de-DE.js"></script>\r
index 5b4af2823aa241ea7496ae0002872db2d83edc0b..0a38fc51f8f3a9c0bc9159ab74f1672937d52dc6 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">\r
        <title>jQuery UI Spinner - decimal</title>\r
        <link type="text/css" href="../../themes/base/jquery.ui.all.css" rel="stylesheet" />\r
-       <script type="text/javascript" src="../../jquery-1.4.4.js"></script>\r
+       <script type="text/javascript" src="../../jquery-1.5.1.js"></script>\r
        <script type="text/javascript" src="../../external/jquery.mousewheel-3.0.4.js"></script>\r
        <script type="text/javascript" src="../../external/jquery.global.js"></script>\r
        <script type="text/javascript" src="../../external/jquery.global.de-DE.js"></script>\r
index 14e0cf9f99a8bcf1d1b48725c6ebfcf2b503c0a8..2589c1029357bb1652f449afa43d620cd448ec4b 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">\r
        <title>jQuery UI Spinner - Default functionality</title>\r
        <link type="text/css" href="../../themes/base/jquery.ui.all.css" rel="stylesheet" />\r
-       <script type="text/javascript" src="../../jquery-1.4.4.js"></script>\r
+       <script type="text/javascript" src="../../jquery-1.5.1.js"></script>\r
        <script type="text/javascript" src="../../external/jquery.mousewheel-3.0.4.js"></script>\r
        <script type="text/javascript" src="../../ui/jquery.ui.core.js"></script>\r
        <script type="text/javascript" src="../../ui/jquery.ui.widget.js"></script>\r
index a99caa67b481ef202d30b1ef58ebc6cd7077e26e..0763961cc6872373bf7123c1588ac997c8f66562 100644 (file)
@@ -5,7 +5,7 @@
        <title>jQuery UI Spinner - Map</title>\r
        <link type="text/css" href="../../themes/base/jquery.ui.all.css" rel="stylesheet" />\r
        <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>\r
-       <script type="text/javascript" src="../../jquery-1.4.4.js"></script>\r
+       <script type="text/javascript" src="../../jquery-1.5.1.js"></script>\r
        <script type="text/javascript" src="../../external/jquery.mousewheel-3.0.4.js"></script>\r
        <script type="text/javascript" src="../../ui/jquery.ui.core.js"></script>\r
        <script type="text/javascript" src="../../ui/jquery.ui.widget.js"></script>\r
index bbdc18437983f5b21631b79688d2b45b6ae59f0e..d8b4100f96e1db1b16c32e36034bf62aa4ee657b 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">\r
        <title>jQuery UI Spinner - Default functionality</title>\r
        <link type="text/css" href="../../themes/base/jquery.ui.all.css" rel="stylesheet" />\r
-       <script type="text/javascript" src="../../jquery-1.4.4.js"></script>\r
+       <script type="text/javascript" src="../../jquery-1.5.1.js"></script>\r
        <script type="text/javascript" src="../../external/jquery.mousewheel-3.0.4.js"></script>\r
        <script type="text/javascript" src="../../ui/jquery.ui.core.js"></script>\r
        <script type="text/javascript" src="../../ui/jquery.ui.widget.js"></script>\r
index d92b942dce88af9165a7290c51ce2cb8bcf81132..567ada524eeed6124ef6054b3507efe8fbeee138 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">\r
        <title>jQuery UI Spinner - decimal</title>\r
        <link type="text/css" href="../../themes/base/jquery.ui.all.css" rel="stylesheet" />\r
-       <script type="text/javascript" src="../../jquery-1.4.4.js"></script>\r
+       <script type="text/javascript" src="../../jquery-1.5.1.js"></script>\r
        <script type="text/javascript" src="../../external/jquery.mousewheel-3.0.4.js"></script>\r
        <script type="text/javascript" src="../../external/jquery.global.js"></script>\r
        <script type="text/javascript" src="../../external/jquery.global.de-DE.js"></script>\r
index d7257af455bba340b564e87a078e9a7067e8df23..c0bcd6b315e72484c18d4bf3dd48795ac437d343 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Effects - switchClass Demo</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.effects.core.js"></script>
        <link rel="stylesheet" href="../demos.css">
        <style>
index da976ae75682363f1ea5e37e4d4ec647849b391f..c62625791517bcee087722968152698ab2d89bf6 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Tabs - Content via Ajax</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.tabs.js"></script>
index 6d2148596b2f0b5cb146bd57cfafbcbfe92bca20..4f0e3c2a44130e5f49837c623eb73124405313a4 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Tabs - Tabs at bottom</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.tabs.js"></script>
index 9c3c2615ad9d4140029b820fe2c21e4d6d8f6d15..1fba71041b517a782e5b1d0b84d1fd3d6e4929b1 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Tabs - Collapse content</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.tabs.js"></script>
index e8f9ead65a98a2d189fa0675e4a558836c8b1d75..b168d29ce3633c0677e49be1ebeb5ece8e2771e6 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Tabs - Default functionality</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../external/jquery.cookie.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
index 0f51e45c03147bd427bd5d57dac836035cd2dfb5..a892509ce7733a81a6d873c1b0403979579f670a 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Tabs - Default functionality</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.tabs.js"></script>
index a610138a7a6c38688d3d151763a0ba6426c7e25b..8b8ddf4e6e5b38aabbc38ea9b83b2b1551ca7694 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Tabs - Simple manipulation</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.position.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
index f94295b3d2bdcdd338bd091ad71fa3dbfab4380f..b19b2af09d47d61719c54207c038ea9366980703 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Tabs - Open on mouseover</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.tabs.js"></script>
index 728fcab29810a51d9b094352046519fc04bdac69..ba8196d71746b4f814d77bde9f134398a9a4cd38 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Tabs - Sortable</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.mouse.js"></script>
index eec467b1c92967d064839278936b664c4d7a5903..4ddb5c9c995a44d2a52fc7e8774b267ad7c9e0a8 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Tabs - Vertical Tabs functionality</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.ui.core.js"></script>
        <script src="../../ui/jquery.ui.widget.js"></script>
        <script src="../../ui/jquery.ui.tabs.js"></script>
index 6e38efe4480cfcd1d08851fa1e0d95c60ca07932..475109e1145fe78b47d170194804dd6eea501f05 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Effects - Toggle Demo</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.effects.core.js"></script>
        <script src="../../ui/jquery.effects.blind.js"></script>
        <script src="../../ui/jquery.effects.bounce.js"></script>
index 50f2a82ccff65f546d54109f4ed076b735af829c..ed3eb5179b7aa5792401e13359315bc35d4edea9 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Effects - toggleClass Demo</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
-       <script src="../../jquery-1.4.4.js"></script>
+       <script src="../../jquery-1.5.1.js"></script>
        <script src="../../ui/jquery.effects.core.js"></script>
        <link rel="stylesheet" href="../demos.css">
        <style>
index eb6f3e03802735af53d9a0820efa042d56d8cf70..a9d0df66e877be50c3bf05d075120beb8fff8607 100644 (file)
@@ -3,7 +3,7 @@
 <head>
        <title>jQuery UI Tooltip - Custom animation demo</title>
        <link type="text/css" href="../../themes/base/jquery.ui.all.css" rel="stylesheet" />
-       <script type="text/javascript" src="../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.position.js"></script>
index a0d61147fdfb46d8f26c470ee7b2b1db44b2afe2..9d5502f2b944552d156a34b7111d0a8e81a691de 100644 (file)
@@ -3,7 +3,7 @@
 <head>
        <title>jQuery UI Tooltip - Default demo</title>
        <link type="text/css" href="../../themes/base/jquery.ui.all.css" rel="stylesheet" />
-       <script type="text/javascript" src="../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.position.js"></script>
index 05d3e0fc9e5e086b60fa386b1e1177214ec40c5c..9c524dabeaa2b11acc35a5a5f79064b3fa394f85 100644 (file)
@@ -3,7 +3,7 @@
 <head>
        <title>jQuery UI Tooltip - Default demo</title>
        <link type="text/css" href="../../themes/base/jquery.ui.all.css" rel="stylesheet" />
-       <script type="text/javascript" src="../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.position.js"></script>
index 46ab4e9dcee344f8b9aaa03c0584e20107052bca..983b56bdf978a655a0ef53d9de56b79ff8bc7695 100644 (file)
@@ -3,7 +3,7 @@
 <head>
        <title>jQuery UI Tooltip - Default demo</title>
        <link type="text/css" href="../../themes/base/jquery.ui.all.css" rel="stylesheet" />
-       <script type="text/javascript" src="../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.position.js"></script>
index 495d1aca99647734b51d17c1b20c4035ce2fc319..e3bb19e7463d959d17a7aa621169997a623cb688 100644 (file)
@@ -3,7 +3,7 @@
 <head>
        <title>jQuery UI Tooltip - Default demo</title>
        <link type="text/css" href="../../themes/base/jquery.ui.all.css" rel="stylesheet" />
-       <script type="text/javascript" src="../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.position.js"></script>
diff --git a/jquery-1.4.4.js b/jquery-1.4.4.js
deleted file mode 100644 (file)
index a4f1145..0000000
+++ /dev/null
@@ -1,7179 +0,0 @@
-/*!
- * jQuery JavaScript Library v1.4.4
- * http://jquery.com/
- *
- * Copyright 2010, John Resig
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * Includes Sizzle.js
- * http://sizzlejs.com/
- * Copyright 2010, The Dojo Foundation
- * Released under the MIT, BSD, and GPL Licenses.
- *
- * Date: Thu Nov 11 19:04:53 2010 -0500
- */
-(function( window, undefined ) {
-
-// Use the correct document accordingly with window argument (sandbox)
-var document = window.document;
-var jQuery = (function() {
-
-// Define a local copy of jQuery
-var jQuery = function( selector, context ) {
-               // The jQuery object is actually just the init constructor 'enhanced'
-               return new jQuery.fn.init( selector, context );
-       },
-
-       // Map over jQuery in case of overwrite
-       _jQuery = window.jQuery,
-
-       // Map over the $ in case of overwrite
-       _$ = window.$,
-
-       // A central reference to the root jQuery(document)
-       rootjQuery,
-
-       // A simple way to check for HTML strings or ID strings
-       // (both of which we optimize for)
-       quickExpr = /^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]+)$)/,
-
-       // Is it a simple selector
-       isSimple = /^.[^:#\[\.,]*$/,
-
-       // Check if a string has a non-whitespace character in it
-       rnotwhite = /\S/,
-       rwhite = /\s/,
-
-       // Used for trimming whitespace
-       trimLeft = /^\s+/,
-       trimRight = /\s+$/,
-
-       // Check for non-word characters
-       rnonword = /\W/,
-
-       // Check for digits
-       rdigit = /\d/,
-
-       // Match a standalone tag
-       rsingleTag = /^<(\w+)\s*\/?>(?:<\/\1>)?$/,
-
-       // JSON RegExp
-       rvalidchars = /^[\],:{}\s]*$/,
-       rvalidescape = /\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,
-       rvalidtokens = /"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,
-       rvalidbraces = /(?:^|:|,)(?:\s*\[)+/g,
-
-       // Useragent RegExp
-       rwebkit = /(webkit)[ \/]([\w.]+)/,
-       ropera = /(opera)(?:.*version)?[ \/]([\w.]+)/,
-       rmsie = /(msie) ([\w.]+)/,
-       rmozilla = /(mozilla)(?:.*? rv:([\w.]+))?/,
-
-       // Keep a UserAgent string for use with jQuery.browser
-       userAgent = navigator.userAgent,
-
-       // For matching the engine and version of the browser
-       browserMatch,
-       
-       // Has the ready events already been bound?
-       readyBound = false,
-       
-       // The functions to execute on DOM ready
-       readyList = [],
-
-       // The ready event handler
-       DOMContentLoaded,
-
-       // Save a reference to some core methods
-       toString = Object.prototype.toString,
-       hasOwn = Object.prototype.hasOwnProperty,
-       push = Array.prototype.push,
-       slice = Array.prototype.slice,
-       trim = String.prototype.trim,
-       indexOf = Array.prototype.indexOf,
-       
-       // [[Class]] -> type pairs
-       class2type = {};
-
-jQuery.fn = jQuery.prototype = {
-       init: function( selector, context ) {
-               var match, elem, ret, doc;
-
-               // Handle $(""), $(null), or $(undefined)
-               if ( !selector ) {
-                       return this;
-               }
-
-               // Handle $(DOMElement)
-               if ( selector.nodeType ) {
-                       this.context = this[0] = selector;
-                       this.length = 1;
-                       return this;
-               }
-               
-               // The body element only exists once, optimize finding it
-               if ( selector === "body" && !context && document.body ) {
-                       this.context = document;
-                       this[0] = document.body;
-                       this.selector = "body";
-                       this.length = 1;
-                       return this;
-               }
-
-               // Handle HTML strings
-               if ( typeof selector === "string" ) {
-                       // Are we dealing with HTML string or an ID?
-                       match = quickExpr.exec( selector );
-
-                       // Verify a match, and that no context was specified for #id
-                       if ( match && (match[1] || !context) ) {
-
-                               // HANDLE: $(html) -> $(array)
-                               if ( match[1] ) {
-                                       doc = (context ? context.ownerDocument || context : document);
-
-                                       // If a single string is passed in and it's a single tag
-                                       // just do a createElement and skip the rest
-                                       ret = rsingleTag.exec( selector );
-
-                                       if ( ret ) {
-                                               if ( jQuery.isPlainObject( context ) ) {
-                                                       selector = [ document.createElement( ret[1] ) ];
-                                                       jQuery.fn.attr.call( selector, context, true );
-
-                                               } else {
-                                                       selector = [ doc.createElement( ret[1] ) ];
-                                               }
-
-                                       } else {
-                                               ret = jQuery.buildFragment( [ match[1] ], [ doc ] );
-                                               selector = (ret.cacheable ? ret.fragment.cloneNode(true) : ret.fragment).childNodes;
-                                       }
-                                       
-                                       return jQuery.merge( this, selector );
-                                       
-                               // HANDLE: $("#id")
-                               } else {
-                                       elem = document.getElementById( match[2] );
-
-                                       // Check parentNode to catch when Blackberry 4.6 returns
-                                       // nodes that are no longer in the document #6963
-                                       if ( elem && elem.parentNode ) {
-                                               // Handle the case where IE and Opera return items
-                                               // by name instead of ID
-                                               if ( elem.id !== match[2] ) {
-                                                       return rootjQuery.find( selector );
-                                               }
-
-                                               // Otherwise, we inject the element directly into the jQuery object
-                                               this.length = 1;
-                                               this[0] = elem;
-                                       }
-
-                                       this.context = document;
-                                       this.selector = selector;
-                                       return this;
-                               }
-
-                       // HANDLE: $("TAG")
-                       } else if ( !context && !rnonword.test( selector ) ) {
-                               this.selector = selector;
-                               this.context = document;
-                               selector = document.getElementsByTagName( selector );
-                               return jQuery.merge( this, selector );
-
-                       // HANDLE: $(expr, $(...))
-                       } else if ( !context || context.jquery ) {
-                               return (context || rootjQuery).find( selector );
-
-                       // HANDLE: $(expr, context)
-                       // (which is just equivalent to: $(context).find(expr)
-                       } else {
-                               return jQuery( context ).find( selector );
-                       }
-
-               // HANDLE: $(function)
-               // Shortcut for document ready
-               } else if ( jQuery.isFunction( selector ) ) {
-                       return rootjQuery.ready( selector );
-               }
-
-               if (selector.selector !== undefined) {
-                       this.selector = selector.selector;
-                       this.context = selector.context;
-               }
-
-               return jQuery.makeArray( selector, this );
-       },
-
-       // Start with an empty selector
-       selector: "",
-
-       // The current version of jQuery being used
-       jquery: "1.4.4",
-
-       // The default length of a jQuery object is 0
-       length: 0,
-
-       // The number of elements contained in the matched element set
-       size: function() {
-               return this.length;
-       },
-
-       toArray: function() {
-               return slice.call( this, 0 );
-       },
-
-       // Get the Nth element in the matched element set OR
-       // Get the whole matched element set as a clean array
-       get: function( num ) {
-               return num == null ?
-
-                       // Return a 'clean' array
-                       this.toArray() :
-
-                       // Return just the object
-                       ( num < 0 ? this.slice(num)[ 0 ] : this[ num ] );
-       },
-
-       // Take an array of elements and push it onto the stack
-       // (returning the new matched element set)
-       pushStack: function( elems, name, selector ) {
-               // Build a new jQuery matched element set
-               var ret = jQuery();
-
-               if ( jQuery.isArray( elems ) ) {
-                       push.apply( ret, elems );
-               
-               } else {
-                       jQuery.merge( ret, elems );
-               }
-
-               // Add the old object onto the stack (as a reference)
-               ret.prevObject = this;
-
-               ret.context = this.context;
-
-               if ( name === "find" ) {
-                       ret.selector = this.selector + (this.selector ? " " : "") + selector;
-               } else if ( name ) {
-                       ret.selector = this.selector + "." + name + "(" + selector + ")";
-               }
-
-               // Return the newly-formed element set
-               return ret;
-       },
-
-       // Execute a callback for every element in the matched set.
-       // (You can seed the arguments with an array of args, but this is
-       // only used internally.)
-       each: function( callback, args ) {
-               return jQuery.each( this, callback, args );
-       },
-       
-       ready: function( fn ) {
-               // Attach the listeners
-               jQuery.bindReady();
-
-               // If the DOM is already ready
-               if ( jQuery.isReady ) {
-                       // Execute the function immediately
-                       fn.call( document, jQuery );
-
-               // Otherwise, remember the function for later
-               } else if ( readyList ) {
-                       // Add the function to the wait list
-                       readyList.push( fn );
-               }
-
-               return this;
-       },
-       
-       eq: function( i ) {
-               return i === -1 ?
-                       this.slice( i ) :
-                       this.slice( i, +i + 1 );
-       },
-
-       first: function() {
-               return this.eq( 0 );
-       },
-
-       last: function() {
-               return this.eq( -1 );
-       },
-
-       slice: function() {
-               return this.pushStack( slice.apply( this, arguments ),
-                       "slice", slice.call(arguments).join(",") );
-       },
-
-       map: function( callback ) {
-               return this.pushStack( jQuery.map(this, function( elem, i ) {
-                       return callback.call( elem, i, elem );
-               }));
-       },
-       
-       end: function() {
-               return this.prevObject || jQuery(null);
-       },
-
-       // For internal use only.
-       // Behaves like an Array's method, not like a jQuery method.
-       push: push,
-       sort: [].sort,
-       splice: [].splice
-};
-
-// Give the init function the jQuery prototype for later instantiation
-jQuery.fn.init.prototype = jQuery.fn;
-
-jQuery.extend = jQuery.fn.extend = function() {
-        var options, name, src, copy, copyIsArray, clone,
-               target = arguments[0] || {},
-               i = 1,
-               length = arguments.length,
-               deep = false;
-
-       // Handle a deep copy situation
-       if ( typeof target === "boolean" ) {
-               deep = target;
-               target = arguments[1] || {};
-               // skip the boolean and the target
-               i = 2;
-       }
-
-       // Handle case when target is a string or something (possible in deep copy)
-       if ( typeof target !== "object" && !jQuery.isFunction(target) ) {
-               target = {};
-       }
-
-       // extend jQuery itself if only one argument is passed
-       if ( length === i ) {
-               target = this;
-               --i;
-       }
-
-       for ( ; i < length; i++ ) {
-               // Only deal with non-null/undefined values
-               if ( (options = arguments[ i ]) != null ) {
-                       // Extend the base object
-                       for ( name in options ) {
-                               src = target[ name ];
-                               copy = options[ name ];
-
-                               // Prevent never-ending loop
-                               if ( target === copy ) {
-                                       continue;
-                               }
-
-                               // Recurse if we're merging plain objects or arrays
-                               if ( deep && copy && ( jQuery.isPlainObject(copy) || (copyIsArray = jQuery.isArray(copy)) ) ) {
-                                       if ( copyIsArray ) {
-                                               copyIsArray = false;
-                                               clone = src && jQuery.isArray(src) ? src : [];
-
-                                       } else {
-                                               clone = src && jQuery.isPlainObject(src) ? src : {};
-                                       }
-
-                                       // Never move original objects, clone them
-                                       target[ name ] = jQuery.extend( deep, clone, copy );
-
-                               // Don't bring in undefined values
-                               } else if ( copy !== undefined ) {
-                                       target[ name ] = copy;
-                               }
-                       }
-               }
-       }
-
-       // Return the modified object
-       return target;
-};
-
-jQuery.extend({
-       noConflict: function( deep ) {
-               window.$ = _$;
-
-               if ( deep ) {
-                       window.jQuery = _jQuery;
-               }
-
-               return jQuery;
-       },
-       
-       // Is the DOM ready to be used? Set to true once it occurs.
-       isReady: false,
-
-       // A counter to track how many items to wait for before
-       // the ready event fires. See #6781
-       readyWait: 1,
-       
-       // Handle when the DOM is ready
-       ready: function( wait ) {
-               // A third-party is pushing the ready event forwards
-               if ( wait === true ) {
-                       jQuery.readyWait--;
-               }
-
-               // Make sure that the DOM is not already loaded
-               if ( !jQuery.readyWait || (wait !== true && !jQuery.isReady) ) {
-                       // Make sure body exists, at least, in case IE gets a little overzealous (ticket #5443).
-                       if ( !document.body ) {
-                               return setTimeout( jQuery.ready, 1 );
-                       }
-
-                       // Remember that the DOM is ready
-                       jQuery.isReady = true;
-
-                       // If a normal DOM Ready event fired, decrement, and wait if need be
-                       if ( wait !== true && --jQuery.readyWait > 0 ) {
-                               return;
-                       }
-
-                       // If there are functions bound, to execute
-                       if ( readyList ) {
-                               // Execute all of them
-                               var fn,
-                                       i = 0,
-                                       ready = readyList;
-
-                               // Reset the list of functions
-                               readyList = null;
-
-                               while ( (fn = ready[ i++ ]) ) {
-                                       fn.call( document, jQuery );
-                               }
-
-                               // Trigger any bound ready events
-                               if ( jQuery.fn.trigger ) {
-                                       jQuery( document ).trigger( "ready" ).unbind( "ready" );
-                               }
-                       }
-               }
-       },
-       
-       bindReady: function() {
-               if ( readyBound ) {
-                       return;
-               }
-
-               readyBound = true;
-
-               // Catch cases where $(document).ready() is called after the
-               // browser event has already occurred.
-               if ( document.readyState === "complete" ) {
-                       // Handle it asynchronously to allow scripts the opportunity to delay ready
-                       return setTimeout( jQuery.ready, 1 );
-               }
-
-               // Mozilla, Opera and webkit nightlies currently support this event
-               if ( document.addEventListener ) {
-                       // Use the handy event callback
-                       document.addEventListener( "DOMContentLoaded", DOMContentLoaded, false );
-                       
-                       // A fallback to window.onload, that will always work
-                       window.addEventListener( "load", jQuery.ready, false );
-
-               // If IE event model is used
-               } else if ( document.attachEvent ) {
-                       // ensure firing before onload,
-                       // maybe late but safe also for iframes
-                       document.attachEvent("onreadystatechange", DOMContentLoaded);
-                       
-                       // A fallback to window.onload, that will always work
-                       window.attachEvent( "onload", jQuery.ready );
-
-                       // If IE and not a frame
-                       // continually check to see if the document is ready
-                       var toplevel = false;
-
-                       try {
-                               toplevel = window.frameElement == null;
-                       } catch(e) {}
-
-                       if ( document.documentElement.doScroll && toplevel ) {
-                               doScrollCheck();
-                       }
-               }
-       },
-
-       // See test/unit/core.js for details concerning isFunction.
-       // Since version 1.3, DOM methods and functions like alert
-       // aren't supported. They return false on IE (#2968).
-       isFunction: function( obj ) {
-               return jQuery.type(obj) === "function";
-       },
-
-       isArray: Array.isArray || function( obj ) {
-               return jQuery.type(obj) === "array";
-       },
-
-       // A crude way of determining if an object is a window
-       isWindow: function( obj ) {
-               return obj && typeof obj === "object" && "setInterval" in obj;
-       },
-
-       isNaN: function( obj ) {
-               return obj == null || !rdigit.test( obj ) || isNaN( obj );
-       },
-
-       type: function( obj ) {
-               return obj == null ?
-                       String( obj ) :
-                       class2type[ toString.call(obj) ] || "object";
-       },
-
-       isPlainObject: function( obj ) {
-               // Must be an Object.
-               // Because of IE, we also have to check the presence of the constructor property.
-               // Make sure that DOM nodes and window objects don't pass through, as well
-               if ( !obj || jQuery.type(obj) !== "object" || obj.nodeType || jQuery.isWindow( obj ) ) {
-                       return false;
-               }
-               
-               // Not own constructor property must be Object
-               if ( obj.constructor &&
-                       !hasOwn.call(obj, "constructor") &&
-                       !hasOwn.call(obj.constructor.prototype, "isPrototypeOf") ) {
-                       return false;
-               }
-               
-               // Own properties are enumerated firstly, so to speed up,
-               // if last one is own, then all properties are own.
-       
-               var key;
-               for ( key in obj ) {}
-               
-               return key === undefined || hasOwn.call( obj, key );
-       },
-
-       isEmptyObject: function( obj ) {
-               for ( var name in obj ) {
-                       return false;
-               }
-               return true;
-       },
-       
-       error: function( msg ) {
-               throw msg;
-       },
-       
-       parseJSON: function( data ) {
-               if ( typeof data !== "string" || !data ) {
-                       return null;
-               }
-
-               // Make sure leading/trailing whitespace is removed (IE can't handle it)
-               data = jQuery.trim( data );
-               
-               // Make sure the incoming data is actual JSON
-               // Logic borrowed from http://json.org/json2.js
-               if ( rvalidchars.test(data.replace(rvalidescape, "@")
-                       .replace(rvalidtokens, "]")
-                       .replace(rvalidbraces, "")) ) {
-
-                       // Try to use the native JSON parser first
-                       return window.JSON && window.JSON.parse ?
-                               window.JSON.parse( data ) :
-                               (new Function("return " + data))();
-
-               } else {
-                       jQuery.error( "Invalid JSON: " + data );
-               }
-       },
-
-       noop: function() {},
-
-       // Evalulates a script in a global context
-       globalEval: function( data ) {
-               if ( data && rnotwhite.test(data) ) {
-                       // Inspired by code by Andrea Giammarchi
-                       // http://webreflection.blogspot.com/2007/08/global-scope-evaluation-and-dom.html
-                       var head = document.getElementsByTagName("head")[0] || document.documentElement,
-                               script = document.createElement("script");
-
-                       script.type = "text/javascript";
-
-                       if ( jQuery.support.scriptEval ) {
-                               script.appendChild( document.createTextNode( data ) );
-                       } else {
-                               script.text = data;
-                       }
-
-                       // Use insertBefore instead of appendChild to circumvent an IE6 bug.
-                       // This arises when a base node is used (#2709).
-                       head.insertBefore( script, head.firstChild );
-                       head.removeChild( script );
-               }
-       },
-
-       nodeName: function( elem, name ) {
-               return elem.nodeName && elem.nodeName.toUpperCase() === name.toUpperCase();
-       },
-
-       // args is for internal usage only
-       each: function( object, callback, args ) {
-               var name, i = 0,
-                       length = object.length,
-                       isObj = length === undefined || jQuery.isFunction(object);
-
-               if ( args ) {
-                       if ( isObj ) {
-                               for ( name in object ) {
-                                       if ( callback.apply( object[ name ], args ) === false ) {
-                                               break;
-                                       }
-                               }
-                       } else {
-                               for ( ; i < length; ) {
-                                       if ( callback.apply( object[ i++ ], args ) === false ) {
-                                               break;
-                                       }
-                               }
-                       }
-
-               // A special, fast, case for the most common use of each
-               } else {
-                       if ( isObj ) {
-                               for ( name in object ) {
-                                       if ( callback.call( object[ name ], name, object[ name ] ) === false ) {
-                                               break;
-                                       }
-                               }
-                       } else {
-                               for ( var value = object[0];
-                                       i < length && callback.call( value, i, value ) !== false; value = object[++i] ) {}
-                       }
-               }
-
-               return object;
-       },
-
-       // Use native String.trim function wherever possible
-       trim: trim ?
-               function( text ) {
-                       return text == null ?
-                               "" :
-                               trim.call( text );
-               } :
-
-               // Otherwise use our own trimming functionality
-               function( text ) {
-                       return text == null ?
-                               "" :
-                               text.toString().replace( trimLeft, "" ).replace( trimRight, "" );
-               },
-
-       // results is for internal usage only
-       makeArray: function( array, results ) {
-               var ret = results || [];
-
-               if ( array != null ) {
-                       // The window, strings (and functions) also have 'length'
-                       // The extra typeof function check is to prevent crashes
-                       // in Safari 2 (See: #3039)
-                       // Tweaked logic slightly to handle Blackberry 4.7 RegExp issues #6930
-                       var type = jQuery.type(array);
-
-                       if ( array.length == null || type === "string" || type === "function" || type === "regexp" || jQuery.isWindow( array ) ) {
-                               push.call( ret, array );
-                       } else {
-                               jQuery.merge( ret, array );
-                       }
-               }
-
-               return ret;
-       },
-
-       inArray: function( elem, array ) {
-               if ( array.indexOf ) {
-                       return array.indexOf( elem );
-               }
-
-               for ( var i = 0, length = array.length; i < length; i++ ) {
-                       if ( array[ i ] === elem ) {
-                               return i;
-                       }
-               }
-
-               return -1;
-       },
-
-       merge: function( first, second ) {
-               var i = first.length,
-                       j = 0;
-
-               if ( typeof second.length === "number" ) {
-                       for ( var l = second.length; j < l; j++ ) {
-                               first[ i++ ] = second[ j ];
-                       }
-               
-               } else {
-                       while ( second[j] !== undefined ) {
-                               first[ i++ ] = second[ j++ ];
-                       }
-               }
-
-               first.length = i;
-
-               return first;
-       },
-
-       grep: function( elems, callback, inv ) {
-               var ret = [], retVal;
-               inv = !!inv;
-
-               // Go through the array, only saving the items
-               // that pass the validator function
-               for ( var i = 0, length = elems.length; i < length; i++ ) {
-                       retVal = !!callback( elems[ i ], i );
-                       if ( inv !== retVal ) {
-                               ret.push( elems[ i ] );
-                       }
-               }
-
-               return ret;
-       },
-
-       // arg is for internal usage only
-       map: function( elems, callback, arg ) {
-               var ret = [], value;
-
-               // Go through the array, translating each of the items to their
-               // new value (or values).
-               for ( var i = 0, length = elems.length; i < length; i++ ) {
-                       value = callback( elems[ i ], i, arg );
-
-                       if ( value != null ) {
-                               ret[ ret.length ] = value;
-                       }
-               }
-
-               return ret.concat.apply( [], ret );
-       },
-
-       // A global GUID counter for objects
-       guid: 1,
-
-       proxy: function( fn, proxy, thisObject ) {
-               if ( arguments.length === 2 ) {
-                       if ( typeof proxy === "string" ) {
-                               thisObject = fn;
-                               fn = thisObject[ proxy ];
-                               proxy = undefined;
-
-                       } else if ( proxy && !jQuery.isFunction( proxy ) ) {
-                               thisObject = proxy;
-                               proxy = undefined;
-                       }
-               }
-
-               if ( !proxy && fn ) {
-                       proxy = function() {
-                               return fn.apply( thisObject || this, arguments );
-                       };
-               }
-
-               // Set the guid of unique handler to the same of original handler, so it can be removed
-               if ( fn ) {
-                       proxy.guid = fn.guid = fn.guid || proxy.guid || jQuery.guid++;
-               }
-
-               // So proxy can be declared as an argument
-               return proxy;
-       },
-
-       // Mutifunctional method to get and set values to a collection
-       // The value/s can be optionally by executed if its a function
-       access: function( elems, key, value, exec, fn, pass ) {
-               var length = elems.length;
-       
-               // Setting many attributes
-               if ( typeof key === "object" ) {
-                       for ( var k in key ) {
-                               jQuery.access( elems, k, key[k], exec, fn, value );
-                       }
-                       return elems;
-               }
-       
-               // Setting one attribute
-               if ( value !== undefined ) {
-                       // Optionally, function values get executed if exec is true
-                       exec = !pass && exec && jQuery.isFunction(value);
-               
-                       for ( var i = 0; i < length; i++ ) {
-                               fn( elems[i], key, exec ? value.call( elems[i], i, fn( elems[i], key ) ) : value, pass );
-                       }
-               
-                       return elems;
-               }
-       
-               // Getting an attribute
-               return length ? fn( elems[0], key ) : undefined;
-       },
-
-       now: function() {
-               return (new Date()).getTime();
-       },
-
-       // Use of jQuery.browser is frowned upon.
-       // More details: http://docs.jquery.com/Utilities/jQuery.browser
-       uaMatch: function( ua ) {
-               ua = ua.toLowerCase();
-
-               var match = rwebkit.exec( ua ) ||
-                       ropera.exec( ua ) ||
-                       rmsie.exec( ua ) ||
-                       ua.indexOf("compatible") < 0 && rmozilla.exec( ua ) ||
-                       [];
-
-               return { browser: match[1] || "", version: match[2] || "0" };
-       },
-
-       browser: {}
-});
-
-// Populate the class2type map
-jQuery.each("Boolean Number String Function Array Date RegExp Object".split(" "), function(i, name) {
-       class2type[ "[object " + name + "]" ] = name.toLowerCase();
-});
-
-browserMatch = jQuery.uaMatch( userAgent );
-if ( browserMatch.browser ) {
-       jQuery.browser[ browserMatch.browser ] = true;
-       jQuery.browser.version = browserMatch.version;
-}
-
-// Deprecated, use jQuery.browser.webkit instead
-if ( jQuery.browser.webkit ) {
-       jQuery.browser.safari = true;
-}
-
-if ( indexOf ) {
-       jQuery.inArray = function( elem, array ) {
-               return indexOf.call( array, elem );
-       };
-}
-
-// Verify that \s matches non-breaking spaces
-// (IE fails on this test)
-if ( !rwhite.test( "\xA0" ) ) {
-       trimLeft = /^[\s\xA0]+/;
-       trimRight = /[\s\xA0]+$/;
-}
-
-// All jQuery objects should point back to these
-rootjQuery = jQuery(document);
-
-// Cleanup functions for the document ready method
-if ( document.addEventListener ) {
-       DOMContentLoaded = function() {
-               document.removeEventListener( "DOMContentLoaded", DOMContentLoaded, false );
-               jQuery.ready();
-       };
-
-} else if ( document.attachEvent ) {
-       DOMContentLoaded = function() {
-               // Make sure body exists, at least, in case IE gets a little overzealous (ticket #5443).
-               if ( document.readyState === "complete" ) {
-                       document.detachEvent( "onreadystatechange", DOMContentLoaded );
-                       jQuery.ready();
-               }
-       };
-}
-
-// The DOM ready check for Internet Explorer
-function doScrollCheck() {
-       if ( jQuery.isReady ) {
-               return;
-       }
-
-       try {
-               // If IE is used, use the trick by Diego Perini
-               // http://javascript.nwbox.com/IEContentLoaded/
-               document.documentElement.doScroll("left");
-       } catch(e) {
-               setTimeout( doScrollCheck, 1 );
-               return;
-       }
-
-       // and execute any waiting functions
-       jQuery.ready();
-}
-
-// Expose jQuery to the global object
-return (window.jQuery = window.$ = jQuery);
-
-})();
-
-
-(function() {
-
-       jQuery.support = {};
-
-       var root = document.documentElement,
-               script = document.createElement("script"),
-               div = document.createElement("div"),
-               id = "script" + jQuery.now();
-
-       div.style.display = "none";
-       div.innerHTML = "   <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";
-
-       var all = div.getElementsByTagName("*"),
-               a = div.getElementsByTagName("a")[0],
-               select = document.createElement("select"),
-               opt = select.appendChild( document.createElement("option") );
-
-       // Can't get basic test support
-       if ( !all || !all.length || !a ) {
-               return;
-       }
-
-       jQuery.support = {
-               // IE strips leading whitespace when .innerHTML is used
-               leadingWhitespace: div.firstChild.nodeType === 3,
-
-               // Make sure that tbody elements aren't automatically inserted
-               // IE will insert them into empty tables
-               tbody: !div.getElementsByTagName("tbody").length,
-
-               // Make sure that link elements get serialized correctly by innerHTML
-               // This requires a wrapper element in IE
-               htmlSerialize: !!div.getElementsByTagName("link").length,
-
-               // Get the style information from getAttribute
-               // (IE uses .cssText insted)
-               style: /red/.test( a.getAttribute("style") ),
-
-               // Make sure that URLs aren't manipulated
-               // (IE normalizes it by default)
-               hrefNormalized: a.getAttribute("href") === "/a",
-
-               // Make sure that element opacity exists
-               // (IE uses filter instead)
-               // Use a regex to work around a WebKit issue. See #5145
-               opacity: /^0.55$/.test( a.style.opacity ),
-
-               // Verify style float existence
-               // (IE uses styleFloat instead of cssFloat)
-               cssFloat: !!a.style.cssFloat,
-
-               // Make sure that if no value is specified for a checkbox
-               // that it defaults to "on".
-               // (WebKit defaults to "" instead)
-               checkOn: div.getElementsByTagName("input")[0].value === "on",
-
-               // Make sure that a selected-by-default option has a working selected property.
-               // (WebKit defaults to false instead of true, IE too, if it's in an optgroup)
-               optSelected: opt.selected,
-
-               // Will be defined later
-               deleteExpando: true,
-               optDisabled: false,
-               checkClone: false,
-               scriptEval: false,
-               noCloneEvent: true,
-               boxModel: null,
-               inlineBlockNeedsLayout: false,
-               shrinkWrapBlocks: false,
-               reliableHiddenOffsets: true
-       };
-
-       // Make sure that the options inside disabled selects aren't marked as disabled
-       // (WebKit marks them as diabled)
-       select.disabled = true;
-       jQuery.support.optDisabled = !opt.disabled;
-
-       script.type = "text/javascript";
-       try {
-               script.appendChild( document.createTextNode( "window." + id + "=1;" ) );
-       } catch(e) {}
-
-       root.insertBefore( script, root.firstChild );
-
-       // Make sure that the execution of code works by injecting a script
-       // tag with appendChild/createTextNode
-       // (IE doesn't support this, fails, and uses .text instead)
-       if ( window[ id ] ) {
-               jQuery.support.scriptEval = true;
-               delete window[ id ];
-       }
-
-       // Test to see if it's possible to delete an expando from an element
-       // Fails in Internet Explorer
-       try {
-               delete script.test;
-
-       } catch(e) {
-               jQuery.support.deleteExpando = false;
-       }
-
-       root.removeChild( script );
-
-       if ( div.attachEvent && div.fireEvent ) {
-               div.attachEvent("onclick", function click() {
-                       // Cloning a node shouldn't copy over any
-                       // bound event handlers (IE does this)
-                       jQuery.support.noCloneEvent = false;
-                       div.detachEvent("onclick", click);
-               });
-               div.cloneNode(true).fireEvent("onclick");
-       }
-
-       div = document.createElement("div");
-       div.innerHTML = "<input type='radio' name='radiotest' checked='checked'/>";
-
-       var fragment = document.createDocumentFragment();
-       fragment.appendChild( div.firstChild );
-
-       // WebKit doesn't clone checked state correctly in fragments
-       jQuery.support.checkClone = fragment.cloneNode(true).cloneNode(true).lastChild.checked;
-
-       // Figure out if the W3C box model works as expected
-       // document.body must exist before we can do this
-       jQuery(function() {
-               var div = document.createElement("div");
-               div.style.width = div.style.paddingLeft = "1px";
-
-               document.body.appendChild( div );
-               jQuery.boxModel = jQuery.support.boxModel = div.offsetWidth === 2;
-
-               if ( "zoom" in div.style ) {
-                       // Check if natively block-level elements act like inline-block
-                       // elements when setting their display to 'inline' and giving
-                       // them layout
-                       // (IE < 8 does this)
-                       div.style.display = "inline";
-                       div.style.zoom = 1;
-                       jQuery.support.inlineBlockNeedsLayout = div.offsetWidth === 2;
-
-                       // Check if elements with layout shrink-wrap their children
-                       // (IE 6 does this)
-                       div.style.display = "";
-                       div.innerHTML = "<div style='width:4px;'></div>";
-                       jQuery.support.shrinkWrapBlocks = div.offsetWidth !== 2;
-               }
-
-               div.innerHTML = "<table><tr><td style='padding:0;display:none'></td><td>t</td></tr></table>";
-               var tds = div.getElementsByTagName("td");
-
-               // Check if table cells still have offsetWidth/Height when they are set
-               // to display:none and there are still other visible table cells in a
-               // table row; if so, offsetWidth/Height are not reliable for use when
-               // determining if an element has been hidden directly using
-               // display:none (it is still safe to use offsets if a parent element is
-               // hidden; don safety goggles and see bug #4512 for more information).
-               // (only IE 8 fails this test)
-               jQuery.support.reliableHiddenOffsets = tds[0].offsetHeight === 0;
-
-               tds[0].style.display = "";
-               tds[1].style.display = "none";
-
-               // Check if empty table cells still have offsetWidth/Height
-               // (IE < 8 fail this test)
-               jQuery.support.reliableHiddenOffsets = jQuery.support.reliableHiddenOffsets && tds[0].offsetHeight === 0;
-               div.innerHTML = "";
-
-               document.body.removeChild( div ).style.display = "none";
-               div = tds = null;
-       });
-
-       // Technique from Juriy Zaytsev
-       // http://thinkweb2.com/projects/prototype/detecting-event-support-without-browser-sniffing/
-       var eventSupported = function( eventName ) {
-               var el = document.createElement("div");
-               eventName = "on" + eventName;
-
-               var isSupported = (eventName in el);
-               if ( !isSupported ) {
-                       el.setAttribute(eventName, "return;");
-                       isSupported = typeof el[eventName] === "function";
-               }
-               el = null;
-
-               return isSupported;
-       };
-
-       jQuery.support.submitBubbles = eventSupported("submit");
-       jQuery.support.changeBubbles = eventSupported("change");
-
-       // release memory in IE
-       root = script = div = all = a = null;
-})();
-
-
-
-var windowData = {},
-       rbrace = /^(?:\{.*\}|\[.*\])$/;
-
-jQuery.extend({
-       cache: {},
-
-       // Please use with caution
-       uuid: 0,
-
-       // Unique for each copy of jQuery on the page   
-       expando: "jQuery" + jQuery.now(),
-
-       // The following elements throw uncatchable exceptions if you
-       // attempt to add expando properties to them.
-       noData: {
-               "embed": true,
-               // Ban all objects except for Flash (which handle expandos)
-               "object": "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",
-               "applet": true
-       },
-
-       data: function( elem, name, data ) {
-               if ( !jQuery.acceptData( elem ) ) {
-                       return;
-               }
-
-               elem = elem == window ?
-                       windowData :
-                       elem;
-
-               var isNode = elem.nodeType,
-                       id = isNode ? elem[ jQuery.expando ] : null,
-                       cache = jQuery.cache, thisCache;
-
-               if ( isNode && !id && typeof name === "string" && data === undefined ) {
-                       return;
-               }
-
-               // Get the data from the object directly
-               if ( !isNode ) {
-                       cache = elem;
-
-               // Compute a unique ID for the element
-               } else if ( !id ) {
-                       elem[ jQuery.expando ] = id = ++jQuery.uuid;
-               }
-
-               // Avoid generating a new cache unless none exists and we
-               // want to manipulate it.
-               if ( typeof name === "object" ) {
-                       if ( isNode ) {
-                               cache[ id ] = jQuery.extend(cache[ id ], name);
-
-                       } else {
-                               jQuery.extend( cache, name );
-                       }
-
-               } else if ( isNode && !cache[ id ] ) {
-                       cache[ id ] = {};
-               }
-
-               thisCache = isNode ? cache[ id ] : cache;
-
-               // Prevent overriding the named cache with undefined values
-               if ( data !== undefined ) {
-                       thisCache[ name ] = data;
-               }
-
-               return typeof name === "string" ? thisCache[ name ] : thisCache;
-       },
-
-       removeData: function( elem, name ) {
-               if ( !jQuery.acceptData( elem ) ) {
-                       return;
-               }
-
-               elem = elem == window ?
-                       windowData :
-                       elem;
-
-               var isNode = elem.nodeType,
-                       id = isNode ? elem[ jQuery.expando ] : elem,
-                       cache = jQuery.cache,
-                       thisCache = isNode ? cache[ id ] : id;
-
-               // If we want to remove a specific section of the element's data
-               if ( name ) {
-                       if ( thisCache ) {
-                               // Remove the section of cache data
-                               delete thisCache[ name ];
-
-                               // If we've removed all the data, remove the element's cache
-                               if ( isNode && jQuery.isEmptyObject(thisCache) ) {
-                                       jQuery.removeData( elem );
-                               }
-                       }
-
-               // Otherwise, we want to remove all of the element's data
-               } else {
-                       if ( isNode && jQuery.support.deleteExpando ) {
-                               delete elem[ jQuery.expando ];
-
-                       } else if ( elem.removeAttribute ) {
-                               elem.removeAttribute( jQuery.expando );
-
-                       // Completely remove the data cache
-                       } else if ( isNode ) {
-                               delete cache[ id ];
-
-                       // Remove all fields from the object
-                       } else {
-                               for ( var n in elem ) {
-                                       delete elem[ n ];
-                               }
-                       }
-               }
-       },
-
-       // A method for determining if a DOM node can handle the data expando
-       acceptData: function( elem ) {
-               if ( elem.nodeName ) {
-                       var match = jQuery.noData[ elem.nodeName.toLowerCase() ];
-
-                       if ( match ) {
-                               return !(match === true || elem.getAttribute("classid") !== match);
-                       }
-               }
-
-               return true;
-       }
-});
-
-jQuery.fn.extend({
-       data: function( key, value ) {
-               var data = null;
-
-               if ( typeof key === "undefined" ) {
-                       if ( this.length ) {
-                               var attr = this[0].attributes, name;
-                               data = jQuery.data( this[0] );
-
-                               for ( var i = 0, l = attr.length; i < l; i++ ) {
-                                       name = attr[i].name;
-
-                                       if ( name.indexOf( "data-" ) === 0 ) {
-                                               name = name.substr( 5 );
-                                               dataAttr( this[0], name, data[ name ] );
-                                       }
-                               }
-                       }
-
-                       return data;
-
-               } else if ( typeof key === "object" ) {
-                       return this.each(function() {
-                               jQuery.data( this, key );
-                       });
-               }
-
-               var parts = key.split(".");
-               parts[1] = parts[1] ? "." + parts[1] : "";
-
-               if ( value === undefined ) {
-                       data = this.triggerHandler("getData" + parts[1] + "!", [parts[0]]);
-
-                       // Try to fetch any internally stored data first
-                       if ( data === undefined && this.length ) {
-                               data = jQuery.data( this[0], key );
-                               data = dataAttr( this[0], key, data );
-                       }
-
-                       return data === undefined && parts[1] ?
-                               this.data( parts[0] ) :
-                               data;
-
-               } else {
-                       return this.each(function() {
-                               var $this = jQuery( this ),
-                                       args = [ parts[0], value ];
-
-                               $this.triggerHandler( "setData" + parts[1] + "!", args );
-                               jQuery.data( this, key, value );
-                               $this.triggerHandler( "changeData" + parts[1] + "!", args );
-                       });
-               }
-       },
-
-       removeData: function( key ) {
-               return this.each(function() {
-                       jQuery.removeData( this, key );
-               });
-       }
-});
-
-function dataAttr( elem, key, data ) {
-       // If nothing was found internally, try to fetch any
-       // data from the HTML5 data-* attribute
-       if ( data === undefined && elem.nodeType === 1 ) {
-               data = elem.getAttribute( "data-" + key );
-
-               if ( typeof data === "string" ) {
-                       try {
-                               data = data === "true" ? true :
-                               data === "false" ? false :
-                               data === "null" ? null :
-                               !jQuery.isNaN( data ) ? parseFloat( data ) :
-                                       rbrace.test( data ) ? jQuery.parseJSON( data ) :
-                                       data;
-                       } catch( e ) {}
-
-                       // Make sure we set the data so it isn't changed later
-                       jQuery.data( elem, key, data );
-
-               } else {
-                       data = undefined;
-               }
-       }
-
-       return data;
-}
-
-
-
-
-jQuery.extend({
-       queue: function( elem, type, data ) {
-               if ( !elem ) {
-                       return;
-               }
-
-               type = (type || "fx") + "queue";
-               var q = jQuery.data( elem, type );
-
-               // Speed up dequeue by getting out quickly if this is just a lookup
-               if ( !data ) {
-                       return q || [];
-               }
-
-               if ( !q || jQuery.isArray(data) ) {
-                       q = jQuery.data( elem, type, jQuery.makeArray(data) );
-
-               } else {
-                       q.push( data );
-               }
-
-               return q;
-       },
-
-       dequeue: function( elem, type ) {
-               type = type || "fx";
-
-               var queue = jQuery.queue( elem, type ),
-                       fn = queue.shift();
-
-               // If the fx queue is dequeued, always remove the progress sentinel
-               if ( fn === "inprogress" ) {
-                       fn = queue.shift();
-               }
-
-               if ( fn ) {
-                       // Add a progress sentinel to prevent the fx queue from being
-                       // automatically dequeued
-                       if ( type === "fx" ) {
-                               queue.unshift("inprogress");
-                       }
-
-                       fn.call(elem, function() {
-                               jQuery.dequeue(elem, type);
-                       });
-               }
-       }
-});
-
-jQuery.fn.extend({
-       queue: function( type, data ) {
-               if ( typeof type !== "string" ) {
-                       data = type;
-                       type = "fx";
-               }
-
-               if ( data === undefined ) {
-                       return jQuery.queue( this[0], type );
-               }
-               return this.each(function( i ) {
-                       var queue = jQuery.queue( this, type, data );
-
-                       if ( type === "fx" && queue[0] !== "inprogress" ) {
-                               jQuery.dequeue( this, type );
-                       }
-               });
-       },
-       dequeue: function( type ) {
-               return this.each(function() {
-                       jQuery.dequeue( this, type );
-               });
-       },
-
-       // Based off of the plugin by Clint Helfers, with permission.
-       // http://blindsignals.com/index.php/2009/07/jquery-delay/
-       delay: function( time, type ) {
-               time = jQuery.fx ? jQuery.fx.speeds[time] || time : time;
-               type = type || "fx";
-
-               return this.queue( type, function() {
-                       var elem = this;
-                       setTimeout(function() {
-                               jQuery.dequeue( elem, type );
-                       }, time );
-               });
-       },
-
-       clearQueue: function( type ) {
-               return this.queue( type || "fx", [] );
-       }
-});
-
-
-
-
-var rclass = /[\n\t]/g,
-       rspaces = /\s+/,
-       rreturn = /\r/g,
-       rspecialurl = /^(?:href|src|style)$/,
-       rtype = /^(?:button|input)$/i,
-       rfocusable = /^(?:button|input|object|select|textarea)$/i,
-       rclickable = /^a(?:rea)?$/i,
-       rradiocheck = /^(?:radio|checkbox)$/i;
-
-jQuery.props = {
-       "for": "htmlFor",
-       "class": "className",
-       readonly: "readOnly",
-       maxlength: "maxLength",
-       cellspacing: "cellSpacing",
-       rowspan: "rowSpan",
-       colspan: "colSpan",
-       tabindex: "tabIndex",
-       usemap: "useMap",
-       frameborder: "frameBorder"
-};
-
-jQuery.fn.extend({
-       attr: function( name, value ) {
-               return jQuery.access( this, name, value, true, jQuery.attr );
-       },
-
-       removeAttr: function( name, fn ) {
-               return this.each(function(){
-                       jQuery.attr( this, name, "" );
-                       if ( this.nodeType === 1 ) {
-                               this.removeAttribute( name );
-                       }
-               });
-       },
-
-       addClass: function( value ) {
-               if ( jQuery.isFunction(value) ) {
-                       return this.each(function(i) {
-                               var self = jQuery(this);
-                               self.addClass( value.call(this, i, self.attr("class")) );
-                       });
-               }
-
-               if ( value && typeof value === "string" ) {
-                       var classNames = (value || "").split( rspaces );
-
-                       for ( var i = 0, l = this.length; i < l; i++ ) {
-                               var elem = this[i];
-
-                               if ( elem.nodeType === 1 ) {
-                                       if ( !elem.className ) {
-                                               elem.className = value;
-
-                                       } else {
-                                               var className = " " + elem.className + " ",
-                                                       setClass = elem.className;
-
-                                               for ( var c = 0, cl = classNames.length; c < cl; c++ ) {
-                                                       if ( className.indexOf( " " + classNames[c] + " " ) < 0 ) {
-                                                               setClass += " " + classNames[c];
-                                                       }
-                                               }
-                                               elem.className = jQuery.trim( setClass );
-                                       }
-                               }
-                       }
-               }
-
-               return this;
-       },
-
-       removeClass: function( value ) {
-               if ( jQuery.isFunction(value) ) {
-                       return this.each(function(i) {
-                               var self = jQuery(this);
-                               self.removeClass( value.call(this, i, self.attr("class")) );
-                       });
-               }
-
-               if ( (value && typeof value === "string") || value === undefined ) {
-                       var classNames = (value || "").split( rspaces );
-
-                       for ( var i = 0, l = this.length; i < l; i++ ) {
-                               var elem = this[i];
-
-                               if ( elem.nodeType === 1 && elem.className ) {
-                                       if ( value ) {
-                                               var className = (" " + elem.className + " ").replace(rclass, " ");
-                                               for ( var c = 0, cl = classNames.length; c < cl; c++ ) {
-                                                       className = className.replace(" " + classNames[c] + " ", " ");
-                                               }
-                                               elem.className = jQuery.trim( className );
-
-                                       } else {
-                                               elem.className = "";
-                                       }
-                               }
-                       }
-               }
-
-               return this;
-       },
-
-       toggleClass: function( value, stateVal ) {
-               var type = typeof value,
-                       isBool = typeof stateVal === "boolean";
-
-               if ( jQuery.isFunction( value ) ) {
-                       return this.each(function(i) {
-                               var self = jQuery(this);
-                               self.toggleClass( value.call(this, i, self.attr("class"), stateVal), stateVal );
-                       });
-               }
-
-               return this.each(function() {
-                       if ( type === "string" ) {
-                               // toggle individual class names
-                               var className,
-                                       i = 0,
-                                       self = jQuery( this ),
-                                       state = stateVal,
-                                       classNames = value.split( rspaces );
-
-                               while ( (className = classNames[ i++ ]) ) {
-                                       // check each className given, space seperated list
-                                       state = isBool ? state : !self.hasClass( className );
-                                       self[ state ? "addClass" : "removeClass" ]( className );
-                               }
-
-                       } else if ( type === "undefined" || type === "boolean" ) {
-                               if ( this.className ) {
-                                       // store className if set
-                                       jQuery.data( this, "__className__", this.className );
-                               }
-
-                               // toggle whole className
-                               this.className = this.className || value === false ? "" : jQuery.data( this, "__className__" ) || "";
-                       }
-               });
-       },
-
-       hasClass: function( selector ) {
-               var className = " " + selector + " ";
-               for ( var i = 0, l = this.length; i < l; i++ ) {
-                       if ( (" " + this[i].className + " ").replace(rclass, " ").indexOf( className ) > -1 ) {
-                               return true;
-                       }
-               }
-
-               return false;
-       },
-
-       val: function( value ) {
-               if ( !arguments.length ) {
-                       var elem = this[0];
-
-                       if ( elem ) {
-                               if ( jQuery.nodeName( elem, "option" ) ) {
-                                       // attributes.value is undefined in Blackberry 4.7 but
-                                       // uses .value. See #6932
-                                       var val = elem.attributes.value;
-                                       return !val || val.specified ? elem.value : elem.text;
-                               }
-
-                               // We need to handle select boxes special
-                               if ( jQuery.nodeName( elem, "select" ) ) {
-                                       var index = elem.selectedIndex,
-                                               values = [],
-                                               options = elem.options,
-                                               one = elem.type === "select-one";
-
-                                       // Nothing was selected
-                                       if ( index < 0 ) {
-                                               return null;
-                                       }
-
-                                       // Loop through all the selected options
-                                       for ( var i = one ? index : 0, max = one ? index + 1 : options.length; i < max; i++ ) {
-                                               var option = options[ i ];
-
-                                               // Don't return options that are disabled or in a disabled optgroup
-                                               if ( option.selected && (jQuery.support.optDisabled ? !option.disabled : option.getAttribute("disabled") === null) && 
-                                                               (!option.parentNode.disabled || !jQuery.nodeName( option.parentNode, "optgroup" )) ) {
-
-                                                       // Get the specific value for the option
-                                                       value = jQuery(option).val();
-
-                                                       // We don't need an array for one selects
-                                                       if ( one ) {
-                                                               return value;
-                                                       }
-
-                                                       // Multi-Selects return an array
-                                                       values.push( value );
-                                               }
-                                       }
-
-                                       return values;
-                               }
-
-                               // Handle the case where in Webkit "" is returned instead of "on" if a value isn't specified
-                               if ( rradiocheck.test( elem.type ) && !jQuery.support.checkOn ) {
-                                       return elem.getAttribute("value") === null ? "on" : elem.value;
-                               }
-                               
-
-                               // Everything else, we just grab the value
-                               return (elem.value || "").replace(rreturn, "");
-
-                       }
-
-                       return undefined;
-               }
-
-               var isFunction = jQuery.isFunction(value);
-
-               return this.each(function(i) {
-                       var self = jQuery(this), val = value;
-
-                       if ( this.nodeType !== 1 ) {
-                               return;
-                       }
-
-                       if ( isFunction ) {
-                               val = value.call(this, i, self.val());
-                       }
-
-                       // Treat null/undefined as ""; convert numbers to string
-                       if ( val == null ) {
-                               val = "";
-                       } else if ( typeof val === "number" ) {
-                               val += "";
-                       } else if ( jQuery.isArray(val) ) {
-                               val = jQuery.map(val, function (value) {
-                                       return value == null ? "" : value + "";
-                               });
-                       }
-
-                       if ( jQuery.isArray(val) && rradiocheck.test( this.type ) ) {
-                               this.checked = jQuery.inArray( self.val(), val ) >= 0;
-
-                       } else if ( jQuery.nodeName( this, "select" ) ) {
-                               var values = jQuery.makeArray(val);
-
-                               jQuery( "option", this ).each(function() {
-                                       this.selected = jQuery.inArray( jQuery(this).val(), values ) >= 0;
-                               });
-
-                               if ( !values.length ) {
-                                       this.selectedIndex = -1;
-                               }
-
-                       } else {
-                               this.value = val;
-                       }
-               });
-       }
-});
-
-jQuery.extend({
-       attrFn: {
-               val: true,
-               css: true,
-               html: true,
-               text: true,
-               data: true,
-               width: true,
-               height: true,
-               offset: true
-       },
-               
-       attr: function( elem, name, value, pass ) {
-               // don't set attributes on text and comment nodes
-               if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 ) {
-                       return undefined;
-               }
-
-               if ( pass && name in jQuery.attrFn ) {
-                       return jQuery(elem)[name](value);
-               }
-
-               var notxml = elem.nodeType !== 1 || !jQuery.isXMLDoc( elem ),
-                       // Whether we are setting (or getting)
-                       set = value !== undefined;
-
-               // Try to normalize/fix the name
-               name = notxml && jQuery.props[ name ] || name;
-
-               // These attributes require special treatment
-               var special = rspecialurl.test( name );
-
-               // Safari mis-reports the default selected property of an option
-               // Accessing the parent's selectedIndex property fixes it
-               if ( name === "selected" && !jQuery.support.optSelected ) {
-                       var parent = elem.parentNode;
-                       if ( parent ) {
-                               parent.selectedIndex;
-
-                               // Make sure that it also works with optgroups, see #5701
-                               if ( parent.parentNode ) {
-                                       parent.parentNode.selectedIndex;
-                               }
-                       }
-               }
-
-               // If applicable, access the attribute via the DOM 0 way
-               // 'in' checks fail in Blackberry 4.7 #6931
-               if ( (name in elem || elem[ name ] !== undefined) && notxml && !special ) {
-                       if ( set ) {
-                               // We can't allow the type property to be changed (since it causes problems in IE)
-                               if ( name === "type" && rtype.test( elem.nodeName ) && elem.parentNode ) {
-                                       jQuery.error( "type property can't be changed" );
-                               }
-
-                               if ( value === null ) {
-                                       if ( elem.nodeType === 1 ) {
-                                               elem.removeAttribute( name );
-                                       }
-
-                               } else {
-                                       elem[ name ] = value;
-                               }
-                       }
-
-                       // browsers index elements by id/name on forms, give priority to attributes.
-                       if ( jQuery.nodeName( elem, "form" ) && elem.getAttributeNode(name) ) {
-                               return elem.getAttributeNode( name ).nodeValue;
-                       }
-
-                       // elem.tabIndex doesn't always return the correct value when it hasn't been explicitly set
-                       // http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/
-                       if ( name === "tabIndex" ) {
-                               var attributeNode = elem.getAttributeNode( "tabIndex" );
-
-                               return attributeNode && attributeNode.specified ?
-                                       attributeNode.value :
-                                       rfocusable.test( elem.nodeName ) || rclickable.test( elem.nodeName ) && elem.href ?
-                                               0 :
-                                               undefined;
-                       }
-
-                       return elem[ name ];
-               }
-
-               if ( !jQuery.support.style && notxml && name === "style" ) {
-                       if ( set ) {
-                               elem.style.cssText = "" + value;
-                       }
-
-                       return elem.style.cssText;
-               }
-
-               if ( set ) {
-                       // convert the value to a string (all browsers do this but IE) see #1070
-                       elem.setAttribute( name, "" + value );
-               }
-
-               // Ensure that missing attributes return undefined
-               // Blackberry 4.7 returns "" from getAttribute #6938
-               if ( !elem.attributes[ name ] && (elem.hasAttribute && !elem.hasAttribute( name )) ) {
-                       return undefined;
-               }
-
-               var attr = !jQuery.support.hrefNormalized && notxml && special ?
-                               // Some attributes require a special call on IE
-                               elem.getAttribute( name, 2 ) :
-                               elem.getAttribute( name );
-
-               // Non-existent attributes return null, we normalize to undefined
-               return attr === null ? undefined : attr;
-       }
-});
-
-
-
-
-var rnamespaces = /\.(.*)$/,
-       rformElems = /^(?:textarea|input|select)$/i,
-       rperiod = /\./g,
-       rspace = / /g,
-       rescape = /[^\w\s.|`]/g,
-       fcleanup = function( nm ) {
-               return nm.replace(rescape, "\\$&");
-       },
-       focusCounts = { focusin: 0, focusout: 0 };
-
-/*
- * A number of helper functions used for managing events.
- * Many of the ideas behind this code originated from
- * Dean Edwards' addEvent library.
- */
-jQuery.event = {
-
-       // Bind an event to an element
-       // Original by Dean Edwards
-       add: function( elem, types, handler, data ) {
-               if ( elem.nodeType === 3 || elem.nodeType === 8 ) {
-                       return;
-               }
-
-               // For whatever reason, IE has trouble passing the window object
-               // around, causing it to be cloned in the process
-               if ( jQuery.isWindow( elem ) && ( elem !== window && !elem.frameElement ) ) {
-                       elem = window;
-               }
-
-               if ( handler === false ) {
-                       handler = returnFalse;
-               } else if ( !handler ) {
-                       // Fixes bug #7229. Fix recommended by jdalton
-                 return;
-               }
-
-               var handleObjIn, handleObj;
-
-               if ( handler.handler ) {
-                       handleObjIn = handler;
-                       handler = handleObjIn.handler;
-               }
-
-               // Make sure that the function being executed has a unique ID
-               if ( !handler.guid ) {
-                       handler.guid = jQuery.guid++;
-               }
-
-               // Init the element's event structure
-               var elemData = jQuery.data( elem );
-
-               // If no elemData is found then we must be trying to bind to one of the
-               // banned noData elements
-               if ( !elemData ) {
-                       return;
-               }
-
-               // Use a key less likely to result in collisions for plain JS objects.
-               // Fixes bug #7150.
-               var eventKey = elem.nodeType ? "events" : "__events__",
-                       events = elemData[ eventKey ],
-                       eventHandle = elemData.handle;
-                       
-               if ( typeof events === "function" ) {
-                       // On plain objects events is a fn that holds the the data
-                       // which prevents this data from being JSON serialized
-                       // the function does not need to be called, it just contains the data
-                       eventHandle = events.handle;
-                       events = events.events;
-
-               } else if ( !events ) {
-                       if ( !elem.nodeType ) {
-                               // On plain objects, create a fn that acts as the holder
-                               // of the values to avoid JSON serialization of event data
-                               elemData[ eventKey ] = elemData = function(){};
-                       }
-
-                       elemData.events = events = {};
-               }
-
-               if ( !eventHandle ) {
-                       elemData.handle = eventHandle = function() {
-                               // Handle the second event of a trigger and when
-                               // an event is called after a page has unloaded
-                               return typeof jQuery !== "undefined" && !jQuery.event.triggered ?
-                                       jQuery.event.handle.apply( eventHandle.elem, arguments ) :
-                                       undefined;
-                       };
-               }
-
-               // Add elem as a property of the handle function
-               // This is to prevent a memory leak with non-native events in IE.
-               eventHandle.elem = elem;
-
-               // Handle multiple events separated by a space
-               // jQuery(...).bind("mouseover mouseout", fn);
-               types = types.split(" ");
-
-               var type, i = 0, namespaces;
-
-               while ( (type = types[ i++ ]) ) {
-                       handleObj = handleObjIn ?
-                               jQuery.extend({}, handleObjIn) :
-                               { handler: handler, data: data };
-
-                       // Namespaced event handlers
-                       if ( type.indexOf(".") > -1 ) {
-                               namespaces = type.split(".");
-                               type = namespaces.shift();
-                               handleObj.namespace = namespaces.slice(0).sort().join(".");
-
-                       } else {
-                               namespaces = [];
-                               handleObj.namespace = "";
-                       }
-
-                       handleObj.type = type;
-                       if ( !handleObj.guid ) {
-                               handleObj.guid = handler.guid;
-                       }
-
-                       // Get the current list of functions bound to this event
-                       var handlers = events[ type ],
-                               special = jQuery.event.special[ type ] || {};
-
-                       // Init the event handler queue
-                       if ( !handlers ) {
-                               handlers = events[ type ] = [];
-
-                               // Check for a special event handler
-                               // Only use addEventListener/attachEvent if the special
-                               // events handler returns false
-                               if ( !special.setup || special.setup.call( elem, data, namespaces, eventHandle ) === false ) {
-                                       // Bind the global event handler to the element
-                                       if ( elem.addEventListener ) {
-                                               elem.addEventListener( type, eventHandle, false );
-
-                                       } else if ( elem.attachEvent ) {
-                                               elem.attachEvent( "on" + type, eventHandle );
-                                       }
-                               }
-                       }
-                       
-                       if ( special.add ) { 
-                               special.add.call( elem, handleObj ); 
-
-                               if ( !handleObj.handler.guid ) {
-                                       handleObj.handler.guid = handler.guid;
-                               }
-                       }
-
-                       // Add the function to the element's handler list
-                       handlers.push( handleObj );
-
-                       // Keep track of which events have been used, for global triggering
-                       jQuery.event.global[ type ] = true;
-               }
-
-               // Nullify elem to prevent memory leaks in IE
-               elem = null;
-       },
-
-       global: {},
-
-       // Detach an event or set of events from an element
-       remove: function( elem, types, handler, pos ) {
-               // don't do events on text and comment nodes
-               if ( elem.nodeType === 3 || elem.nodeType === 8 ) {
-                       return;
-               }
-
-               if ( handler === false ) {
-                       handler = returnFalse;
-               }
-
-               var ret, type, fn, j, i = 0, all, namespaces, namespace, special, eventType, handleObj, origType,
-                       eventKey = elem.nodeType ? "events" : "__events__",
-                       elemData = jQuery.data( elem ),
-                       events = elemData && elemData[ eventKey ];
-
-               if ( !elemData || !events ) {
-                       return;
-               }
-               
-               if ( typeof events === "function" ) {
-                       elemData = events;
-                       events = events.events;
-               }
-
-               // types is actually an event object here
-               if ( types && types.type ) {
-                       handler = types.handler;
-                       types = types.type;
-               }
-
-               // Unbind all events for the element
-               if ( !types || typeof types === "string" && types.charAt(0) === "." ) {
-                       types = types || "";
-
-                       for ( type in events ) {
-                               jQuery.event.remove( elem, type + types );
-                       }
-
-                       return;
-               }
-
-               // Handle multiple events separated by a space
-               // jQuery(...).unbind("mouseover mouseout", fn);
-               types = types.split(" ");
-
-               while ( (type = types[ i++ ]) ) {
-                       origType = type;
-                       handleObj = null;
-                       all = type.indexOf(".") < 0;
-                       namespaces = [];
-
-                       if ( !all ) {
-                               // Namespaced event handlers
-                               namespaces = type.split(".");
-                               type = namespaces.shift();
-
-                               namespace = new RegExp("(^|\\.)" + 
-                                       jQuery.map( namespaces.slice(0).sort(), fcleanup ).join("\\.(?:.*\\.)?") + "(\\.|$)");
-                       }
-
-                       eventType = events[ type ];
-
-                       if ( !eventType ) {
-                               continue;
-                       }
-
-                       if ( !handler ) {
-                               for ( j = 0; j < eventType.length; j++ ) {
-                                       handleObj = eventType[ j ];
-
-                                       if ( all || namespace.test( handleObj.namespace ) ) {
-                                               jQuery.event.remove( elem, origType, handleObj.handler, j );
-                                               eventType.splice( j--, 1 );
-                                       }
-                               }
-
-                               continue;
-                       }
-
-                       special = jQuery.event.special[ type ] || {};
-
-                       for ( j = pos || 0; j < eventType.length; j++ ) {
-                               handleObj = eventType[ j ];
-
-                               if ( handler.guid === handleObj.guid ) {
-                                       // remove the given handler for the given type
-                                       if ( all || namespace.test( handleObj.namespace ) ) {
-                                               if ( pos == null ) {
-                                                       eventType.splice( j--, 1 );
-                                               }
-
-                                               if ( special.remove ) {
-                                                       special.remove.call( elem, handleObj );
-                                               }
-                                       }
-
-                                       if ( pos != null ) {
-                                               break;
-                                       }
-                               }
-                       }
-
-                       // remove generic event handler if no more handlers exist
-                       if ( eventType.length === 0 || pos != null && eventType.length === 1 ) {
-                               if ( !special.teardown || special.teardown.call( elem, namespaces ) === false ) {
-                                       jQuery.removeEvent( elem, type, elemData.handle );
-                               }
-
-                               ret = null;
-                               delete events[ type ];
-                       }
-               }
-
-               // Remove the expando if it's no longer used
-               if ( jQuery.isEmptyObject( events ) ) {
-                       var handle = elemData.handle;
-                       if ( handle ) {
-                               handle.elem = null;
-                       }
-
-                       delete elemData.events;
-                       delete elemData.handle;
-
-                       if ( typeof elemData === "function" ) {
-                               jQuery.removeData( elem, eventKey );
-
-                       } else if ( jQuery.isEmptyObject( elemData ) ) {
-                               jQuery.removeData( elem );
-                       }
-               }
-       },
-
-       // bubbling is internal
-       trigger: function( event, data, elem /*, bubbling */ ) {
-               // Event object or event type
-               var type = event.type || event,
-                       bubbling = arguments[3];
-
-               if ( !bubbling ) {
-                       event = typeof event === "object" ?
-                               // jQuery.Event object
-                               event[ jQuery.expando ] ? event :
-                               // Object literal
-                               jQuery.extend( jQuery.Event(type), event ) :
-                               // Just the event type (string)
-                               jQuery.Event(type);
-
-                       if ( type.indexOf("!") >= 0 ) {
-                               event.type = type = type.slice(0, -1);
-                               event.exclusive = true;
-                       }
-
-                       // Handle a global trigger
-                       if ( !elem ) {
-                               // Don't bubble custom events when global (to avoid too much overhead)
-                               event.stopPropagation();
-
-                               // Only trigger if we've ever bound an event for it
-                               if ( jQuery.event.global[ type ] ) {
-                                       jQuery.each( jQuery.cache, function() {
-                                               if ( this.events && this.events[type] ) {
-                                                       jQuery.event.trigger( event, data, this.handle.elem );
-                                               }
-                                       });
-                               }
-                       }
-
-                       // Handle triggering a single element
-
-                       // don't do events on text and comment nodes
-                       if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 ) {
-                               return undefined;
-                       }
-
-                       // Clean up in case it is reused
-                       event.result = undefined;
-                       event.target = elem;
-
-                       // Clone the incoming data, if any
-                       data = jQuery.makeArray( data );
-                       data.unshift( event );
-               }
-
-               event.currentTarget = elem;
-
-               // Trigger the event, it is assumed that "handle" is a function
-               var handle = elem.nodeType ?
-                       jQuery.data( elem, "handle" ) :
-                       (jQuery.data( elem, "__events__" ) || {}).handle;
-
-               if ( handle ) {
-                       handle.apply( elem, data );
-               }
-
-               var parent = elem.parentNode || elem.ownerDocument;
-
-               // Trigger an inline bound script
-               try {
-                       if ( !(elem && elem.nodeName && jQuery.noData[elem.nodeName.toLowerCase()]) ) {
-                               if ( elem[ "on" + type ] && elem[ "on" + type ].apply( elem, data ) === false ) {
-                                       event.result = false;
-                                       event.preventDefault();
-                               }
-                       }
-
-               // prevent IE from throwing an error for some elements with some event types, see #3533
-               } catch (inlineError) {}
-
-               if ( !event.isPropagationStopped() && parent ) {
-                       jQuery.event.trigger( event, data, parent, true );
-
-               } else if ( !event.isDefaultPrevented() ) {
-                       var old,
-                               target = event.target,
-                               targetType = type.replace( rnamespaces, "" ),
-                               isClick = jQuery.nodeName( target, "a" ) && targetType === "click",
-                               special = jQuery.event.special[ targetType ] || {};
-
-                       if ( (!special._default || special._default.call( elem, event ) === false) && 
-                               !isClick && !(target && target.nodeName && jQuery.noData[target.nodeName.toLowerCase()]) ) {
-
-                               try {
-                                       if ( target[ targetType ] ) {
-                                               // Make sure that we don't accidentally re-trigger the onFOO events
-                                               old = target[ "on" + targetType ];
-
-                                               if ( old ) {
-                                                       target[ "on" + targetType ] = null;
-                                               }
-
-                                               jQuery.event.triggered = true;
-                                               target[ targetType ]();
-                                       }
-
-                               // prevent IE from throwing an error for some elements with some event types, see #3533
-                               } catch (triggerError) {}
-
-                               if ( old ) {
-                                       target[ "on" + targetType ] = old;
-                               }
-
-                               jQuery.event.triggered = false;
-                       }
-               }
-       },
-
-       handle: function( event ) {
-               var all, handlers, namespaces, namespace_re, events,
-                       namespace_sort = [],
-                       args = jQuery.makeArray( arguments );
-
-               event = args[0] = jQuery.event.fix( event || window.event );
-               event.currentTarget = this;
-
-               // Namespaced event handlers
-               all = event.type.indexOf(".") < 0 && !event.exclusive;
-
-               if ( !all ) {
-                       namespaces = event.type.split(".");
-                       event.type = namespaces.shift();
-                       namespace_sort = namespaces.slice(0).sort();
-                       namespace_re = new RegExp("(^|\\.)" + namespace_sort.join("\\.(?:.*\\.)?") + "(\\.|$)");
-               }
-
-               event.namespace = event.namespace || namespace_sort.join(".");
-
-               events = jQuery.data(this, this.nodeType ? "events" : "__events__");
-
-               if ( typeof events === "function" ) {
-                       events = events.events;
-               }
-
-               handlers = (events || {})[ event.type ];
-
-               if ( events && handlers ) {
-                       // Clone the handlers to prevent manipulation
-                       handlers = handlers.slice(0);
-
-                       for ( var j = 0, l = handlers.length; j < l; j++ ) {
-                               var handleObj = handlers[ j ];
-
-                               // Filter the functions by class
-                               if ( all || namespace_re.test( handleObj.namespace ) ) {
-                                       // Pass in a reference to the handler function itself
-                                       // So that we can later remove it
-                                       event.handler = handleObj.handler;
-                                       event.data = handleObj.data;
-                                       event.handleObj = handleObj;
-       
-                                       var ret = handleObj.handler.apply( this, args );
-
-                                       if ( ret !== undefined ) {
-                                               event.result = ret;
-                                               if ( ret === false ) {
-                                                       event.preventDefault();
-                                                       event.stopPropagation();
-                                               }
-                                       }
-
-                                       if ( event.isImmediatePropagationStopped() ) {
-                                               break;
-                                       }
-                               }
-                       }
-               }
-
-               return event.result;
-       },
-
-       props: "altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),
-
-       fix: function( event ) {
-               if ( event[ jQuery.expando ] ) {
-                       return event;
-               }
-
-               // store a copy of the original event object
-               // and "clone" to set read-only properties
-               var originalEvent = event;
-               event = jQuery.Event( originalEvent );
-
-               for ( var i = this.props.length, prop; i; ) {
-                       prop = this.props[ --i ];
-                       event[ prop ] = originalEvent[ prop ];
-               }
-
-               // Fix target property, if necessary
-               if ( !event.target ) {
-                       // Fixes #1925 where srcElement might not be defined either
-                       event.target = event.srcElement || document;
-               }
-
-               // check if target is a textnode (safari)
-               if ( event.target.nodeType === 3 ) {
-                       event.target = event.target.parentNode;
-               }
-
-               // Add relatedTarget, if necessary
-               if ( !event.relatedTarget && event.fromElement ) {
-                       event.relatedTarget = event.fromElement === event.target ? event.toElement : event.fromElement;
-               }
-
-               // Calculate pageX/Y if missing and clientX/Y available
-               if ( event.pageX == null && event.clientX != null ) {
-                       var doc = document.documentElement,
-                               body = document.body;
-
-                       event.pageX = event.clientX + (doc && doc.scrollLeft || body && body.scrollLeft || 0) - (doc && doc.clientLeft || body && body.clientLeft || 0);
-                       event.pageY = event.clientY + (doc && doc.scrollTop  || body && body.scrollTop  || 0) - (doc && doc.clientTop  || body && body.clientTop  || 0);
-               }
-
-               // Add which for key events
-               if ( event.which == null && (event.charCode != null || event.keyCode != null) ) {
-                       event.which = event.charCode != null ? event.charCode : event.keyCode;
-               }
-
-               // Add metaKey to non-Mac browsers (use ctrl for PC's and Meta for Macs)
-               if ( !event.metaKey && event.ctrlKey ) {
-                       event.metaKey = event.ctrlKey;
-               }
-
-               // Add which for click: 1 === left; 2 === middle; 3 === right
-               // Note: button is not normalized, so don't use it
-               if ( !event.which && event.button !== undefined ) {
-                       event.which = (event.button & 1 ? 1 : ( event.button & 2 ? 3 : ( event.button & 4 ? 2 : 0 ) ));
-               }
-
-               return event;
-       },
-
-       // Deprecated, use jQuery.guid instead
-       guid: 1E8,
-
-       // Deprecated, use jQuery.proxy instead
-       proxy: jQuery.proxy,
-
-       special: {
-               ready: {
-                       // Make sure the ready event is setup
-                       setup: jQuery.bindReady,
-                       teardown: jQuery.noop
-               },
-
-               live: {
-                       add: function( handleObj ) {
-                               jQuery.event.add( this,
-                                       liveConvert( handleObj.origType, handleObj.selector ),
-                                       jQuery.extend({}, handleObj, {handler: liveHandler, guid: handleObj.handler.guid}) ); 
-                       },
-
-                       remove: function( handleObj ) {
-                               jQuery.event.remove( this, liveConvert( handleObj.origType, handleObj.selector ), handleObj );
-                       }
-               },
-
-               beforeunload: {
-                       setup: function( data, namespaces, eventHandle ) {
-                               // We only want to do this special case on windows
-                               if ( jQuery.isWindow( this ) ) {
-                                       this.onbeforeunload = eventHandle;
-                               }
-                       },
-
-                       teardown: function( namespaces, eventHandle ) {
-                               if ( this.onbeforeunload === eventHandle ) {
-                                       this.onbeforeunload = null;
-                               }
-                       }
-               }
-       }
-};
-
-jQuery.removeEvent = document.removeEventListener ?
-       function( elem, type, handle ) {
-               if ( elem.removeEventListener ) {
-                       elem.removeEventListener( type, handle, false );
-               }
-       } : 
-       function( elem, type, handle ) {
-               if ( elem.detachEvent ) {
-                       elem.detachEvent( "on" + type, handle );
-               }
-       };
-
-jQuery.Event = function( src ) {
-       // Allow instantiation without the 'new' keyword
-       if ( !this.preventDefault ) {
-               return new jQuery.Event( src );
-       }
-
-       // Event object
-       if ( src && src.type ) {
-               this.originalEvent = src;
-               this.type = src.type;
-       // Event type
-       } else {
-               this.type = src;
-       }
-
-       // timeStamp is buggy for some events on Firefox(#3843)
-       // So we won't rely on the native value
-       this.timeStamp = jQuery.now();
-
-       // Mark it as fixed
-       this[ jQuery.expando ] = true;
-};
-
-function returnFalse() {
-       return false;
-}
-function returnTrue() {
-       return true;
-}
-
-// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding
-// http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html
-jQuery.Event.prototype = {
-       preventDefault: function() {
-               this.isDefaultPrevented = returnTrue;
-
-               var e = this.originalEvent;
-               if ( !e ) {
-                       return;
-               }
-               
-               // if preventDefault exists run it on the original event
-               if ( e.preventDefault ) {
-                       e.preventDefault();
-
-               // otherwise set the returnValue property of the original event to false (IE)
-               } else {
-                       e.returnValue = false;
-               }
-       },
-       stopPropagation: function() {
-               this.isPropagationStopped = returnTrue;
-
-               var e = this.originalEvent;
-               if ( !e ) {
-                       return;
-               }
-               // if stopPropagation exists run it on the original event
-               if ( e.stopPropagation ) {
-                       e.stopPropagation();
-               }
-               // otherwise set the cancelBubble property of the original event to true (IE)
-               e.cancelBubble = true;
-       },
-       stopImmediatePropagation: function() {
-               this.isImmediatePropagationStopped = returnTrue;
-               this.stopPropagation();
-       },
-       isDefaultPrevented: returnFalse,
-       isPropagationStopped: returnFalse,
-       isImmediatePropagationStopped: returnFalse
-};
-
-// Checks if an event happened on an element within another element
-// Used in jQuery.event.special.mouseenter and mouseleave handlers
-var withinElement = function( event ) {
-       // Check if mouse(over|out) are still within the same parent element
-       var parent = event.relatedTarget;
-
-       // Firefox sometimes assigns relatedTarget a XUL element
-       // which we cannot access the parentNode property of
-       try {
-               // Traverse up the tree
-               while ( parent && parent !== this ) {
-                       parent = parent.parentNode;
-               }
-
-               if ( parent !== this ) {
-                       // set the correct event type
-                       event.type = event.data;
-
-                       // handle event if we actually just moused on to a non sub-element
-                       jQuery.event.handle.apply( this, arguments );
-               }
-
-       // assuming we've left the element since we most likely mousedover a xul element
-       } catch(e) { }
-},
-
-// In case of event delegation, we only need to rename the event.type,
-// liveHandler will take care of the rest.
-delegate = function( event ) {
-       event.type = event.data;
-       jQuery.event.handle.apply( this, arguments );
-};
-
-// Create mouseenter and mouseleave events
-jQuery.each({
-       mouseenter: "mouseover",
-       mouseleave: "mouseout"
-}, function( orig, fix ) {
-       jQuery.event.special[ orig ] = {
-               setup: function( data ) {
-                       jQuery.event.add( this, fix, data && data.selector ? delegate : withinElement, orig );
-               },
-               teardown: function( data ) {
-                       jQuery.event.remove( this, fix, data && data.selector ? delegate : withinElement );
-               }
-       };
-});
-
-// submit delegation
-if ( !jQuery.support.submitBubbles ) {
-
-       jQuery.event.special.submit = {
-               setup: function( data, namespaces ) {
-                       if ( this.nodeName.toLowerCase() !== "form" ) {
-                               jQuery.event.add(this, "click.specialSubmit", function( e ) {
-                                       var elem = e.target,
-                                               type = elem.type;
-
-                                       if ( (type === "submit" || type === "image") && jQuery( elem ).closest("form").length ) {
-                                               e.liveFired = undefined;
-                                               return trigger( "submit", this, arguments );
-                                       }
-                               });
-        
-                               jQuery.event.add(this, "keypress.specialSubmit", function( e ) {
-                                       var elem = e.target,
-                                               type = elem.type;
-
-                                       if ( (type === "text" || type === "password") && jQuery( elem ).closest("form").length && e.keyCode === 13 ) {
-                                               e.liveFired = undefined;
-                                               return trigger( "submit", this, arguments );
-                                       }
-                               });
-
-                       } else {
-                               return false;
-                       }
-               },
-
-               teardown: function( namespaces ) {
-                       jQuery.event.remove( this, ".specialSubmit" );
-               }
-       };
-
-}
-
-// change delegation, happens here so we have bind.
-if ( !jQuery.support.changeBubbles ) {
-
-       var changeFilters,
-
-       getVal = function( elem ) {
-               var type = elem.type, val = elem.value;
-
-               if ( type === "radio" || type === "checkbox" ) {
-                       val = elem.checked;
-
-               } else if ( type === "select-multiple" ) {
-                       val = elem.selectedIndex > -1 ?
-                               jQuery.map( elem.options, function( elem ) {
-                                       return elem.selected;
-                               }).join("-") :
-                               "";
-
-               } else if ( elem.nodeName.toLowerCase() === "select" ) {
-                       val = elem.selectedIndex;
-               }
-
-               return val;
-       },
-
-       testChange = function testChange( e ) {
-               var elem = e.target, data, val;
-
-               if ( !rformElems.test( elem.nodeName ) || elem.readOnly ) {
-                       return;
-               }
-
-               data = jQuery.data( elem, "_change_data" );
-               val = getVal(elem);
-
-               // the current data will be also retrieved by beforeactivate
-               if ( e.type !== "focusout" || elem.type !== "radio" ) {
-                       jQuery.data( elem, "_change_data", val );
-               }
-               
-               if ( data === undefined || val === data ) {
-                       return;
-               }
-
-               if ( data != null || val ) {
-                       e.type = "change";
-                       e.liveFired = undefined;
-                       return jQuery.event.trigger( e, arguments[1], elem );
-               }
-       };
-
-       jQuery.event.special.change = {
-               filters: {
-                       focusout: testChange, 
-
-                       beforedeactivate: testChange,
-
-                       click: function( e ) {
-                               var elem = e.target, type = elem.type;
-
-                               if ( type === "radio" || type === "checkbox" || elem.nodeName.toLowerCase() === "select" ) {
-                                       return testChange.call( this, e );
-                               }
-                       },
-
-                       // Change has to be called before submit
-                       // Keydown will be called before keypress, which is used in submit-event delegation
-                       keydown: function( e ) {
-                               var elem = e.target, type = elem.type;
-
-                               if ( (e.keyCode === 13 && elem.nodeName.toLowerCase() !== "textarea") ||
-                                       (e.keyCode === 32 && (type === "checkbox" || type === "radio")) ||
-                                       type === "select-multiple" ) {
-                                       return testChange.call( this, e );
-                               }
-                       },
-
-                       // Beforeactivate happens also before the previous element is blurred
-                       // with this event you can't trigger a change event, but you can store
-                       // information
-                       beforeactivate: function( e ) {
-                               var elem = e.target;
-                               jQuery.data( elem, "_change_data", getVal(elem) );
-                       }
-               },
-
-               setup: function( data, namespaces ) {
-                       if ( this.type === "file" ) {
-                               return false;
-                       }
-
-                       for ( var type in changeFilters ) {
-                               jQuery.event.add( this, type + ".specialChange", changeFilters[type] );
-                       }
-
-                       return rformElems.test( this.nodeName );
-               },
-
-               teardown: function( namespaces ) {
-                       jQuery.event.remove( this, ".specialChange" );
-
-                       return rformElems.test( this.nodeName );
-               }
-       };
-
-       changeFilters = jQuery.event.special.change.filters;
-
-       // Handle when the input is .focus()'d
-       changeFilters.focus = changeFilters.beforeactivate;
-}
-
-function trigger( type, elem, args ) {
-       args[0].type = type;
-       return jQuery.event.handle.apply( elem, args );
-}
-
-// Create "bubbling" focus and blur events
-if ( document.addEventListener ) {
-       jQuery.each({ focus: "focusin", blur: "focusout" }, function( orig, fix ) {
-               jQuery.event.special[ fix ] = {
-                       setup: function() {
-                               if ( focusCounts[fix]++ === 0 ) {
-                                       document.addEventListener( orig, handler, true );
-                               }
-                       }, 
-                       teardown: function() { 
-                               if ( --focusCounts[fix] === 0 ) {
-                                       document.removeEventListener( orig, handler, true );
-                               }
-                       }
-               };
-
-               function handler( e ) { 
-                       e = jQuery.event.fix( e );
-                       e.type = fix;
-                       return jQuery.event.trigger( e, null, e.target );
-               }
-       });
-}
-
-jQuery.each(["bind", "one"], function( i, name ) {
-       jQuery.fn[ name ] = function( type, data, fn ) {
-               // Handle object literals
-               if ( typeof type === "object" ) {
-                       for ( var key in type ) {
-                               this[ name ](key, data, type[key], fn);
-                       }
-                       return this;
-               }
-               
-               if ( jQuery.isFunction( data ) || data === false ) {
-                       fn = data;
-                       data = undefined;
-               }
-
-               var handler = name === "one" ? jQuery.proxy( fn, function( event ) {
-                       jQuery( this ).unbind( event, handler );
-                       return fn.apply( this, arguments );
-               }) : fn;
-
-               if ( type === "unload" && name !== "one" ) {
-                       this.one( type, data, fn );
-
-               } else {
-                       for ( var i = 0, l = this.length; i < l; i++ ) {
-                               jQuery.event.add( this[i], type, handler, data );
-                       }
-               }
-
-               return this;
-       };
-});
-
-jQuery.fn.extend({
-       unbind: function( type, fn ) {
-               // Handle object literals
-               if ( typeof type === "object" && !type.preventDefault ) {
-                       for ( var key in type ) {
-                               this.unbind(key, type[key]);
-                       }
-
-               } else {
-                       for ( var i = 0, l = this.length; i < l; i++ ) {
-                               jQuery.event.remove( this[i], type, fn );
-                       }
-               }
-
-               return this;
-       },
-       
-       delegate: function( selector, types, data, fn ) {
-               return this.live( types, data, fn, selector );
-       },
-       
-       undelegate: function( selector, types, fn ) {
-               if ( arguments.length === 0 ) {
-                               return this.unbind( "live" );
-               
-               } else {
-                       return this.die( types, null, fn, selector );
-               }
-       },
-       
-       trigger: function( type, data ) {
-               return this.each(function() {
-                       jQuery.event.trigger( type, data, this );
-               });
-       },
-
-       triggerHandler: function( type, data ) {
-               if ( this[0] ) {
-                       var event = jQuery.Event( type );
-                       event.preventDefault();
-                       event.stopPropagation();
-                       jQuery.event.trigger( event, data, this[0] );
-                       return event.result;
-               }
-       },
-
-       toggle: function( fn ) {
-               // Save reference to arguments for access in closure
-               var args = arguments,
-                       i = 1;
-
-               // link all the functions, so any of them can unbind this click handler
-               while ( i < args.length ) {
-                       jQuery.proxy( fn, args[ i++ ] );
-               }
-
-               return this.click( jQuery.proxy( fn, function( event ) {
-                       // Figure out which function to execute
-                       var lastToggle = ( jQuery.data( this, "lastToggle" + fn.guid ) || 0 ) % i;
-                       jQuery.data( this, "lastToggle" + fn.guid, lastToggle + 1 );
-
-                       // Make sure that clicks stop
-                       event.preventDefault();
-
-                       // and execute the function
-                       return args[ lastToggle ].apply( this, arguments ) || false;
-               }));
-       },
-
-       hover: function( fnOver, fnOut ) {
-               return this.mouseenter( fnOver ).mouseleave( fnOut || fnOver );
-       }
-});
-
-var liveMap = {
-       focus: "focusin",
-       blur: "focusout",
-       mouseenter: "mouseover",
-       mouseleave: "mouseout"
-};
-
-jQuery.each(["live", "die"], function( i, name ) {
-       jQuery.fn[ name ] = function( types, data, fn, origSelector /* Internal Use Only */ ) {
-               var type, i = 0, match, namespaces, preType,
-                       selector = origSelector || this.selector,
-                       context = origSelector ? this : jQuery( this.context );
-               
-               if ( typeof types === "object" && !types.preventDefault ) {
-                       for ( var key in types ) {
-                               context[ name ]( key, data, types[key], selector );
-                       }
-                       
-                       return this;
-               }
-
-               if ( jQuery.isFunction( data ) ) {
-                       fn = data;
-                       data = undefined;
-               }
-
-               types = (types || "").split(" ");
-
-               while ( (type = types[ i++ ]) != null ) {
-                       match = rnamespaces.exec( type );
-                       namespaces = "";
-
-                       if ( match )  {
-                               namespaces = match[0];
-                               type = type.replace( rnamespaces, "" );
-                       }
-
-                       if ( type === "hover" ) {
-                               types.push( "mouseenter" + namespaces, "mouseleave" + namespaces );
-                               continue;
-                       }
-
-                       preType = type;
-
-                       if ( type === "focus" || type === "blur" ) {
-                               types.push( liveMap[ type ] + namespaces );
-                               type = type + namespaces;
-
-                       } else {
-                               type = (liveMap[ type ] || type) + namespaces;
-                       }
-
-                       if ( name === "live" ) {
-                               // bind live handler
-                               for ( var j = 0, l = context.length; j < l; j++ ) {
-                                       jQuery.event.add( context[j], "live." + liveConvert( type, selector ),
-                                               { data: data, selector: selector, handler: fn, origType: type, origHandler: fn, preType: preType } );
-                               }
-
-                       } else {
-                               // unbind live handler
-                               context.unbind( "live." + liveConvert( type, selector ), fn );
-                       }
-               }
-               
-               return this;
-       };
-});
-
-function liveHandler( event ) {
-       var stop, maxLevel, related, match, handleObj, elem, j, i, l, data, close, namespace, ret,
-               elems = [],
-               selectors = [],
-               events = jQuery.data( this, this.nodeType ? "events" : "__events__" );
-
-       if ( typeof events === "function" ) {
-               events = events.events;
-       }
-
-       // Make sure we avoid non-left-click bubbling in Firefox (#3861)
-       if ( event.liveFired === this || !events || !events.live || event.button && event.type === "click" ) {
-               return;
-       }
-       
-       if ( event.namespace ) {
-               namespace = new RegExp("(^|\\.)" + event.namespace.split(".").join("\\.(?:.*\\.)?") + "(\\.|$)");
-       }
-
-       event.liveFired = this;
-
-       var live = events.live.slice(0);
-
-       for ( j = 0; j < live.length; j++ ) {
-               handleObj = live[j];
-
-               if ( handleObj.origType.replace( rnamespaces, "" ) === event.type ) {
-                       selectors.push( handleObj.selector );
-
-               } else {
-                       live.splice( j--, 1 );
-               }
-       }
-
-       match = jQuery( event.target ).closest( selectors, event.currentTarget );
-
-       for ( i = 0, l = match.length; i < l; i++ ) {
-               close = match[i];
-
-               for ( j = 0; j < live.length; j++ ) {
-                       handleObj = live[j];
-
-                       if ( close.selector === handleObj.selector && (!namespace || namespace.test( handleObj.namespace )) ) {
-                               elem = close.elem;
-                               related = null;
-
-                               // Those two events require additional checking
-                               if ( handleObj.preType === "mouseenter" || handleObj.preType === "mouseleave" ) {
-                                       event.type = handleObj.preType;
-                                       related = jQuery( event.relatedTarget ).closest( handleObj.selector )[0];
-                               }
-
-                               if ( !related || related !== elem ) {
-                                       elems.push({ elem: elem, handleObj: handleObj, level: close.level });
-                               }
-                       }
-               }
-       }
-
-       for ( i = 0, l = elems.length; i < l; i++ ) {
-               match = elems[i];
-
-               if ( maxLevel && match.level > maxLevel ) {
-                       break;
-               }
-
-               event.currentTarget = match.elem;
-               event.data = match.handleObj.data;
-               event.handleObj = match.handleObj;
-
-               ret = match.handleObj.origHandler.apply( match.elem, arguments );
-
-               if ( ret === false || event.isPropagationStopped() ) {
-                       maxLevel = match.level;
-
-                       if ( ret === false ) {
-                               stop = false;
-                       }
-                       if ( event.isImmediatePropagationStopped() ) {
-                               break;
-                       }
-               }
-       }
-
-       return stop;
-}
-
-function liveConvert( type, selector ) {
-       return (type && type !== "*" ? type + "." : "") + selector.replace(rperiod, "`").replace(rspace, "&");
-}
-
-jQuery.each( ("blur focus focusin focusout load resize scroll unload click dblclick " +
-       "mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " +
-       "change select submit keydown keypress keyup error").split(" "), function( i, name ) {
-
-       // Handle event binding
-       jQuery.fn[ name ] = function( data, fn ) {
-               if ( fn == null ) {
-                       fn = data;
-                       data = null;
-               }
-
-               return arguments.length > 0 ?
-                       this.bind( name, data, fn ) :
-                       this.trigger( name );
-       };
-
-       if ( jQuery.attrFn ) {
-               jQuery.attrFn[ name ] = true;
-       }
-});
-
-// Prevent memory leaks in IE
-// Window isn't included so as not to unbind existing unload events
-// More info:
-//  - http://isaacschlueter.com/2006/10/msie-memory-leaks/
-if ( window.attachEvent && !window.addEventListener ) {
-       jQuery(window).bind("unload", function() {
-               for ( var id in jQuery.cache ) {
-                       if ( jQuery.cache[ id ].handle ) {
-                               // Try/Catch is to handle iframes being unloaded, see #4280
-                               try {
-                                       jQuery.event.remove( jQuery.cache[ id ].handle.elem );
-                               } catch(e) {}
-                       }
-               }
-       });
-}
-
-
-/*!
- * Sizzle CSS Selector Engine - v1.0
- *  Copyright 2009, The Dojo Foundation
- *  Released under the MIT, BSD, and GPL Licenses.
- *  More information: http://sizzlejs.com/
- */
-(function(){
-
-var chunker = /((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,
-       done = 0,
-       toString = Object.prototype.toString,
-       hasDuplicate = false,
-       baseHasDuplicate = true;
-
-// Here we check if the JavaScript engine is using some sort of
-// optimization where it does not always call our comparision
-// function. If that is the case, discard the hasDuplicate value.
-//   Thus far that includes Google Chrome.
-[0, 0].sort(function() {
-       baseHasDuplicate = false;
-       return 0;
-});
-
-var Sizzle = function( selector, context, results, seed ) {
-       results = results || [];
-       context = context || document;
-
-       var origContext = context;
-
-       if ( context.nodeType !== 1 && context.nodeType !== 9 ) {
-               return [];
-       }
-       
-       if ( !selector || typeof selector !== "string" ) {
-               return results;
-       }
-
-       var m, set, checkSet, extra, ret, cur, pop, i,
-               prune = true,
-               contextXML = Sizzle.isXML( context ),
-               parts = [],
-               soFar = selector;
-       
-       // Reset the position of the chunker regexp (start from head)
-       do {
-               chunker.exec( "" );
-               m = chunker.exec( soFar );
-
-               if ( m ) {
-                       soFar = m[3];
-               
-                       parts.push( m[1] );
-               
-                       if ( m[2] ) {
-                               extra = m[3];
-                               break;
-                       }
-               }
-       } while ( m );
-
-       if ( parts.length > 1 && origPOS.exec( selector ) ) {
-
-               if ( parts.length === 2 && Expr.relative[ parts[0] ] ) {
-                       set = posProcess( parts[0] + parts[1], context );
-
-               } else {
-                       set = Expr.relative[ parts[0] ] ?
-                               [ context ] :
-                               Sizzle( parts.shift(), context );
-
-                       while ( parts.length ) {
-                               selector = parts.shift();
-
-                               if ( Expr.relative[ selector ] ) {
-                                       selector += parts.shift();
-                               }
-                               
-                               set = posProcess( selector, set );
-                       }
-               }
-
-       } else {
-               // Take a shortcut and set the context if the root selector is an ID
-               // (but not if it'll be faster if the inner selector is an ID)
-               if ( !seed && parts.length > 1 && context.nodeType === 9 && !contextXML &&
-                               Expr.match.ID.test(parts[0]) && !Expr.match.ID.test(parts[parts.length - 1]) ) {
-
-                       ret = Sizzle.find( parts.shift(), context, contextXML );
-                       context = ret.expr ?
-                               Sizzle.filter( ret.expr, ret.set )[0] :
-                               ret.set[0];
-               }
-
-               if ( context ) {
-                       ret = seed ?
-                               { expr: parts.pop(), set: makeArray(seed) } :
-                               Sizzle.find( parts.pop(), parts.length === 1 && (parts[0] === "~" || parts[0] === "+") && context.parentNode ? context.parentNode : context, contextXML );
-
-                       set = ret.expr ?
-                               Sizzle.filter( ret.expr, ret.set ) :
-                               ret.set;
-
-                       if ( parts.length > 0 ) {
-                               checkSet = makeArray( set );
-
-                       } else {
-                               prune = false;
-                       }
-
-                       while ( parts.length ) {
-                               cur = parts.pop();
-                               pop = cur;
-
-                               if ( !Expr.relative[ cur ] ) {
-                                       cur = "";
-                               } else {
-                                       pop = parts.pop();
-                               }
-
-                               if ( pop == null ) {
-                                       pop = context;
-                               }
-
-                               Expr.relative[ cur ]( checkSet, pop, contextXML );
-                       }
-
-               } else {
-                       checkSet = parts = [];
-               }
-       }
-
-       if ( !checkSet ) {
-               checkSet = set;
-       }
-
-       if ( !checkSet ) {
-               Sizzle.error( cur || selector );
-       }
-
-       if ( toString.call(checkSet) === "[object Array]" ) {
-               if ( !prune ) {
-                       results.push.apply( results, checkSet );
-
-               } else if ( context && context.nodeType === 1 ) {
-                       for ( i = 0; checkSet[i] != null; i++ ) {
-                               if ( checkSet[i] && (checkSet[i] === true || checkSet[i].nodeType === 1 && Sizzle.contains(context, checkSet[i])) ) {
-                                       results.push( set[i] );
-                               }
-                       }
-
-               } else {
-                       for ( i = 0; checkSet[i] != null; i++ ) {
-                               if ( checkSet[i] && checkSet[i].nodeType === 1 ) {
-                                       results.push( set[i] );
-                               }
-                       }
-               }
-
-       } else {
-               makeArray( checkSet, results );
-       }
-
-       if ( extra ) {
-               Sizzle( extra, origContext, results, seed );
-               Sizzle.uniqueSort( results );
-       }
-
-       return results;
-};
-
-Sizzle.uniqueSort = function( results ) {
-       if ( sortOrder ) {
-               hasDuplicate = baseHasDuplicate;
-               results.sort( sortOrder );
-
-               if ( hasDuplicate ) {
-                       for ( var i = 1; i < results.length; i++ ) {
-                               if ( results[i] === results[ i - 1 ] ) {
-                                       results.splice( i--, 1 );
-                               }
-                       }
-               }
-       }
-
-       return results;
-};
-
-Sizzle.matches = function( expr, set ) {
-       return Sizzle( expr, null, null, set );
-};
-
-Sizzle.matchesSelector = function( node, expr ) {
-       return Sizzle( expr, null, null, [node] ).length > 0;
-};
-
-Sizzle.find = function( expr, context, isXML ) {
-       var set;
-
-       if ( !expr ) {
-               return [];
-       }
-
-       for ( var i = 0, l = Expr.order.length; i < l; i++ ) {
-               var match,
-                       type = Expr.order[i];
-               
-               if ( (match = Expr.leftMatch[ type ].exec( expr )) ) {
-                       var left = match[1];
-                       match.splice( 1, 1 );
-
-                       if ( left.substr( left.length - 1 ) !== "\\" ) {
-                               match[1] = (match[1] || "").replace(/\\/g, "");
-                               set = Expr.find[ type ]( match, context, isXML );
-
-                               if ( set != null ) {
-                                       expr = expr.replace( Expr.match[ type ], "" );
-                                       break;
-                               }
-                       }
-               }
-       }
-
-       if ( !set ) {
-               set = context.getElementsByTagName( "*" );
-       }
-
-       return { set: set, expr: expr };
-};
-
-Sizzle.filter = function( expr, set, inplace, not ) {
-       var match, anyFound,
-               old = expr,
-               result = [],
-               curLoop = set,
-               isXMLFilter = set && set[0] && Sizzle.isXML( set[0] );
-
-       while ( expr && set.length ) {
-               for ( var type in Expr.filter ) {
-                       if ( (match = Expr.leftMatch[ type ].exec( expr )) != null && match[2] ) {
-                               var found, item,
-                                       filter = Expr.filter[ type ],
-                                       left = match[1];
-
-                               anyFound = false;
-
-                               match.splice(1,1);
-
-                               if ( left.substr( left.length - 1 ) === "\\" ) {
-                                       continue;
-                               }
-
-                               if ( curLoop === result ) {
-                                       result = [];
-                               }
-
-                               if ( Expr.preFilter[ type ] ) {
-                                       match = Expr.preFilter[ type ]( match, curLoop, inplace, result, not, isXMLFilter );
-
-                                       if ( !match ) {
-                                               anyFound = found = true;
-
-                                       } else if ( match === true ) {
-                                               continue;
-                                       }
-                               }
-
-                               if ( match ) {
-                                       for ( var i = 0; (item = curLoop[i]) != null; i++ ) {
-                                               if ( item ) {
-                                                       found = filter( item, match, i, curLoop );
-                                                       var pass = not ^ !!found;
-
-                                                       if ( inplace && found != null ) {
-                                                               if ( pass ) {
-                                                                       anyFound = true;
-
-                                                               } else {
-                                                                       curLoop[i] = false;
-                                                               }
-
-                                                       } else if ( pass ) {
-                                                               result.push( item );
-                                                               anyFound = true;
-                                                       }
-                                               }
-                                       }
-                               }
-
-                               if ( found !== undefined ) {
-                                       if ( !inplace ) {
-                                               curLoop = result;
-                                       }
-
-                                       expr = expr.replace( Expr.match[ type ], "" );
-
-                                       if ( !anyFound ) {
-                                               return [];
-                                       }
-
-                                       break;
-                               }
-                       }
-               }
-
-               // Improper expression
-               if ( expr === old ) {
-                       if ( anyFound == null ) {
-                               Sizzle.error( expr );
-
-                       } else {
-                               break;
-                       }
-               }
-
-               old = expr;
-       }
-
-       return curLoop;
-};
-
-Sizzle.error = function( msg ) {
-       throw "Syntax error, unrecognized expression: " + msg;
-};
-
-var Expr = Sizzle.selectors = {
-       order: [ "ID", "NAME", "TAG" ],
-
-       match: {
-               ID: /#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,
-               CLASS: /\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,
-               NAME: /\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,
-               ATTR: /\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,
-               TAG: /^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,
-               CHILD: /:(only|nth|last|first)-child(?:\((even|odd|[\dn+\-]*)\))?/,
-               POS: /:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,
-               PSEUDO: /:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/
-       },
-
-       leftMatch: {},
-
-       attrMap: {
-               "class": "className",
-               "for": "htmlFor"
-       },
-
-       attrHandle: {
-               href: function( elem ) {
-                       return elem.getAttribute( "href" );
-               }
-       },
-
-       relative: {
-               "+": function(checkSet, part){
-                       var isPartStr = typeof part === "string",
-                               isTag = isPartStr && !/\W/.test( part ),
-                               isPartStrNotTag = isPartStr && !isTag;
-
-                       if ( isTag ) {
-                               part = part.toLowerCase();
-                       }
-
-                       for ( var i = 0, l = checkSet.length, elem; i < l; i++ ) {
-                               if ( (elem = checkSet[i]) ) {
-                                       while ( (elem = elem.previousSibling) && elem.nodeType !== 1 ) {}
-
-                                       checkSet[i] = isPartStrNotTag || elem && elem.nodeName.toLowerCase() === part ?
-                                               elem || false :
-                                               elem === part;
-                               }
-                       }
-
-                       if ( isPartStrNotTag ) {
-                               Sizzle.filter( part, checkSet, true );
-                       }
-               },
-
-               ">": function( checkSet, part ) {
-                       var elem,
-                               isPartStr = typeof part === "string",
-                               i = 0,
-                               l = checkSet.length;
-
-                       if ( isPartStr && !/\W/.test( part ) ) {
-                               part = part.toLowerCase();
-
-                               for ( ; i < l; i++ ) {
-                                       elem = checkSet[i];
-
-                                       if ( elem ) {
-                                               var parent = elem.parentNode;
-                                               checkSet[i] = parent.nodeName.toLowerCase() === part ? parent : false;
-                                       }
-                               }
-
-                       } else {
-                               for ( ; i < l; i++ ) {
-                                       elem = checkSet[i];
-
-                                       if ( elem ) {
-                                               checkSet[i] = isPartStr ?
-                                                       elem.parentNode :
-                                                       elem.parentNode === part;
-                                       }
-                               }
-
-                               if ( isPartStr ) {
-                                       Sizzle.filter( part, checkSet, true );
-                               }
-                       }
-               },
-
-               "": function(checkSet, part, isXML){
-                       var nodeCheck,
-                               doneName = done++,
-                               checkFn = dirCheck;
-
-                       if ( typeof part === "string" && !/\W/.test(part) ) {
-                               part = part.toLowerCase();
-                               nodeCheck = part;
-                               checkFn = dirNodeCheck;
-                       }
-
-                       checkFn( "parentNode", part, doneName, checkSet, nodeCheck, isXML );
-               },
-
-               "~": function( checkSet, part, isXML ) {
-                       var nodeCheck,
-                               doneName = done++,
-                               checkFn = dirCheck;
-
-                       if ( typeof part === "string" && !/\W/.test( part ) ) {
-                               part = part.toLowerCase();
-                               nodeCheck = part;
-                               checkFn = dirNodeCheck;
-                       }
-
-                       checkFn( "previousSibling", part, doneName, checkSet, nodeCheck, isXML );
-               }
-       },
-
-       find: {
-               ID: function( match, context, isXML ) {
-                       if ( typeof context.getElementById !== "undefined" && !isXML ) {
-                               var m = context.getElementById(match[1]);
-                               // Check parentNode to catch when Blackberry 4.6 returns
-                               // nodes that are no longer in the document #6963
-                               return m && m.parentNode ? [m] : [];
-                       }
-               },
-
-               NAME: function( match, context ) {
-                       if ( typeof context.getElementsByName !== "undefined" ) {
-                               var ret = [],
-                                       results = context.getElementsByName( match[1] );
-
-                               for ( var i = 0, l = results.length; i < l; i++ ) {
-                                       if ( results[i].getAttribute("name") === match[1] ) {
-                                               ret.push( results[i] );
-                                       }
-                               }
-
-                               return ret.length === 0 ? null : ret;
-                       }
-               },
-
-               TAG: function( match, context ) {
-                       return context.getElementsByTagName( match[1] );
-               }
-       },
-       preFilter: {
-               CLASS: function( match, curLoop, inplace, result, not, isXML ) {
-                       match = " " + match[1].replace(/\\/g, "") + " ";
-
-                       if ( isXML ) {
-                               return match;
-                       }
-
-                       for ( var i = 0, elem; (elem = curLoop[i]) != null; i++ ) {
-                               if ( elem ) {
-                                       if ( not ^ (elem.className && (" " + elem.className + " ").replace(/[\t\n]/g, " ").indexOf(match) >= 0) ) {
-                                               if ( !inplace ) {
-                                                       result.push( elem );
-                                               }
-
-                                       } else if ( inplace ) {
-                                               curLoop[i] = false;
-                                       }
-                               }
-                       }
-
-                       return false;
-               },
-
-               ID: function( match ) {
-                       return match[1].replace(/\\/g, "");
-               },
-
-               TAG: function( match, curLoop ) {
-                       return match[1].toLowerCase();
-               },
-
-               CHILD: function( match ) {
-                       if ( match[1] === "nth" ) {
-                               // parse equations like 'even', 'odd', '5', '2n', '3n+2', '4n-1', '-n+6'
-                               var test = /(-?)(\d*)n((?:\+|-)?\d*)/.exec(
-                                       match[2] === "even" && "2n" || match[2] === "odd" && "2n+1" ||
-                                       !/\D/.test( match[2] ) && "0n+" + match[2] || match[2]);
-
-                               // calculate the numbers (first)n+(last) including if they are negative
-                               match[2] = (test[1] + (test[2] || 1)) - 0;
-                               match[3] = test[3] - 0;
-                       }
-
-                       // TODO: Move to normal caching system
-                       match[0] = done++;
-
-                       return match;
-               },
-
-               ATTR: function( match, curLoop, inplace, result, not, isXML ) {
-                       var name = match[1].replace(/\\/g, "");
-                       
-                       if ( !isXML && Expr.attrMap[name] ) {
-                               match[1] = Expr.attrMap[name];
-                       }
-
-                       if ( match[2] === "~=" ) {
-                               match[4] = " " + match[4] + " ";
-                       }
-
-                       return match;
-               },
-
-               PSEUDO: function( match, curLoop, inplace, result, not ) {
-                       if ( match[1] === "not" ) {
-                               // If we're dealing with a complex expression, or a simple one
-                               if ( ( chunker.exec(match[3]) || "" ).length > 1 || /^\w/.test(match[3]) ) {
-                                       match[3] = Sizzle(match[3], null, null, curLoop);
-
-                               } else {
-                                       var ret = Sizzle.filter(match[3], curLoop, inplace, true ^ not);
-
-                                       if ( !inplace ) {
-                                               result.push.apply( result, ret );
-                                       }
-
-                                       return false;
-                               }
-
-                       } else if ( Expr.match.POS.test( match[0] ) || Expr.match.CHILD.test( match[0] ) ) {
-                               return true;
-                       }
-                       
-                       return match;
-               },
-
-               POS: function( match ) {
-                       match.unshift( true );
-
-                       return match;
-               }
-       },
-       
-       filters: {
-               enabled: function( elem ) {
-                       return elem.disabled === false && elem.type !== "hidden";
-               },
-
-               disabled: function( elem ) {
-                       return elem.disabled === true;
-               },
-
-               checked: function( elem ) {
-                       return elem.checked === true;
-               },
-               
-               selected: function( elem ) {
-                       // Accessing this property makes selected-by-default
-                       // options in Safari work properly
-                       elem.parentNode.selectedIndex;
-                       
-                       return elem.selected === true;
-               },
-
-               parent: function( elem ) {
-                       return !!elem.firstChild;
-               },
-
-               empty: function( elem ) {
-                       return !elem.firstChild;
-               },
-
-               has: function( elem, i, match ) {
-                       return !!Sizzle( match[3], elem ).length;
-               },
-
-               header: function( elem ) {
-                       return (/h\d/i).test( elem.nodeName );
-               },
-
-               text: function( elem ) {
-                       return "text" === elem.type;
-               },
-               radio: function( elem ) {
-                       return "radio" === elem.type;
-               },
-
-               checkbox: function( elem ) {
-                       return "checkbox" === elem.type;
-               },
-
-               file: function( elem ) {
-                       return "file" === elem.type;
-               },
-               password: function( elem ) {
-                       return "password" === elem.type;
-               },
-
-               submit: function( elem ) {
-                       return "submit" === elem.type;
-               },
-
-               image: function( elem ) {
-                       return "image" === elem.type;
-               },
-
-               reset: function( elem ) {
-                       return "reset" === elem.type;
-               },
-
-               button: function( elem ) {
-                       return "button" === elem.type || elem.nodeName.toLowerCase() === "button";
-               },
-
-               input: function( elem ) {
-                       return (/input|select|textarea|button/i).test( elem.nodeName );
-               }
-       },
-       setFilters: {
-               first: function( elem, i ) {
-                       return i === 0;
-               },
-
-               last: function( elem, i, match, array ) {
-                       return i === array.length - 1;
-               },
-
-               even: function( elem, i ) {
-                       return i % 2 === 0;
-               },
-
-               odd: function( elem, i ) {
-                       return i % 2 === 1;
-               },
-
-               lt: function( elem, i, match ) {
-                       return i < match[3] - 0;
-               },
-
-               gt: function( elem, i, match ) {
-                       return i > match[3] - 0;
-               },
-
-               nth: function( elem, i, match ) {
-                       return match[3] - 0 === i;
-               },
-
-               eq: function( elem, i, match ) {
-                       return match[3] - 0 === i;
-               }
-       },
-       filter: {
-               PSEUDO: function( elem, match, i, array ) {
-                       var name = match[1],
-                               filter = Expr.filters[ name ];
-
-                       if ( filter ) {
-                               return filter( elem, i, match, array );
-
-                       } else if ( name === "contains" ) {
-                               return (elem.textContent || elem.innerText || Sizzle.getText([ elem ]) || "").indexOf(match[3]) >= 0;
-
-                       } else if ( name === "not" ) {
-                               var not = match[3];
-
-                               for ( var j = 0, l = not.length; j < l; j++ ) {
-                                       if ( not[j] === elem ) {
-                                               return false;
-                                       }
-                               }
-
-                               return true;
-
-                       } else {
-                               Sizzle.error( "Syntax error, unrecognized expression: " + name );
-                       }
-               },
-
-               CHILD: function( elem, match ) {
-                       var type = match[1],
-                               node = elem;
-
-                       switch ( type ) {
-                               case "only":
-                               case "first":
-                                       while ( (node = node.previousSibling) )  {
-                                               if ( node.nodeType === 1 ) { 
-                                                       return false; 
-                                               }
-                                       }
-
-                                       if ( type === "first" ) { 
-                                               return true; 
-                                       }
-
-                                       node = elem;
-
-                               case "last":
-                                       while ( (node = node.nextSibling) )      {
-                                               if ( node.nodeType === 1 ) { 
-                                                       return false; 
-                                               }
-                                       }
-
-                                       return true;
-
-                               case "nth":
-                                       var first = match[2],
-                                               last = match[3];
-
-                                       if ( first === 1 && last === 0 ) {
-                                               return true;
-                                       }
-                                       
-                                       var doneName = match[0],
-                                               parent = elem.parentNode;
-       
-                                       if ( parent && (parent.sizcache !== doneName || !elem.nodeIndex) ) {
-                                               var count = 0;
-                                               
-                                               for ( node = parent.firstChild; node; node = node.nextSibling ) {
-                                                       if ( node.nodeType === 1 ) {
-                                                               node.nodeIndex = ++count;
-                                                       }
-                                               } 
-
-                                               parent.sizcache = doneName;
-                                       }
-                                       
-                                       var diff = elem.nodeIndex - last;
-
-                                       if ( first === 0 ) {
-                                               return diff === 0;
-
-                                       } else {
-                                               return ( diff % first === 0 && diff / first >= 0 );
-                                       }
-                       }
-               },
-
-               ID: function( elem, match ) {
-                       return elem.nodeType === 1 && elem.getAttribute("id") === match;
-               },
-
-               TAG: function( elem, match ) {
-                       return (match === "*" && elem.nodeType === 1) || elem.nodeName.toLowerCase() === match;
-               },
-               
-               CLASS: function( elem, match ) {
-                       return (" " + (elem.className || elem.getAttribute("class")) + " ")
-                               .indexOf( match ) > -1;
-               },
-
-               ATTR: function( elem, match ) {
-                       var name = match[1],
-                               result = Expr.attrHandle[ name ] ?
-                                       Expr.attrHandle[ name ]( elem ) :
-                                       elem[ name ] != null ?
-                                               elem[ name ] :
-                                               elem.getAttribute( name ),
-                               value = result + "",
-                               type = match[2],
-                               check = match[4];
-
-                       return result == null ?
-                               type === "!=" :
-                               type === "=" ?
-                               value === check :
-                               type === "*=" ?
-                               value.indexOf(check) >= 0 :
-                               type === "~=" ?
-                               (" " + value + " ").indexOf(check) >= 0 :
-                               !check ?
-                               value && result !== false :
-                               type === "!=" ?
-                               value !== check :
-                               type === "^=" ?
-                               value.indexOf(check) === 0 :
-                               type === "$=" ?
-                               value.substr(value.length - check.length) === check :
-                               type === "|=" ?
-                               value === check || value.substr(0, check.length + 1) === check + "-" :
-                               false;
-               },
-
-               POS: function( elem, match, i, array ) {
-                       var name = match[2],
-                               filter = Expr.setFilters[ name ];
-
-                       if ( filter ) {
-                               return filter( elem, i, match, array );
-                       }
-               }
-       }
-};
-
-var origPOS = Expr.match.POS,
-       fescape = function(all, num){
-               return "\\" + (num - 0 + 1);
-       };
-
-for ( var type in Expr.match ) {
-       Expr.match[ type ] = new RegExp( Expr.match[ type ].source + (/(?![^\[]*\])(?![^\(]*\))/.source) );
-       Expr.leftMatch[ type ] = new RegExp( /(^(?:.|\r|\n)*?)/.source + Expr.match[ type ].source.replace(/\\(\d+)/g, fescape) );
-}
-
-var makeArray = function( array, results ) {
-       array = Array.prototype.slice.call( array, 0 );
-
-       if ( results ) {
-               results.push.apply( results, array );
-               return results;
-       }
-       
-       return array;
-};
-
-// Perform a simple check to determine if the browser is capable of
-// converting a NodeList to an array using builtin methods.
-// Also verifies that the returned array holds DOM nodes
-// (which is not the case in the Blackberry browser)
-try {
-       Array.prototype.slice.call( document.documentElement.childNodes, 0 )[0].nodeType;
-
-// Provide a fallback method if it does not work
-} catch( e ) {
-       makeArray = function( array, results ) {
-               var i = 0,
-                       ret = results || [];
-
-               if ( toString.call(array) === "[object Array]" ) {
-                       Array.prototype.push.apply( ret, array );
-
-               } else {
-                       if ( typeof array.length === "number" ) {
-                               for ( var l = array.length; i < l; i++ ) {
-                                       ret.push( array[i] );
-                               }
-
-                       } else {
-                               for ( ; array[i]; i++ ) {
-                                       ret.push( array[i] );
-                               }
-                       }
-               }
-
-               return ret;
-       };
-}
-
-var sortOrder, siblingCheck;
-
-if ( document.documentElement.compareDocumentPosition ) {
-       sortOrder = function( a, b ) {
-               if ( a === b ) {
-                       hasDuplicate = true;
-                       return 0;
-               }
-
-               if ( !a.compareDocumentPosition || !b.compareDocumentPosition ) {
-                       return a.compareDocumentPosition ? -1 : 1;
-               }
-
-               return a.compareDocumentPosition(b) & 4 ? -1 : 1;
-       };
-
-} else {
-       sortOrder = function( a, b ) {
-               var al, bl,
-                       ap = [],
-                       bp = [],
-                       aup = a.parentNode,
-                       bup = b.parentNode,
-                       cur = aup;
-
-               // The nodes are identical, we can exit early
-               if ( a === b ) {
-                       hasDuplicate = true;
-                       return 0;
-
-               // If the nodes are siblings (or identical) we can do a quick check
-               } else if ( aup === bup ) {
-                       return siblingCheck( a, b );
-
-               // If no parents were found then the nodes are disconnected
-               } else if ( !aup ) {
-                       return -1;
-
-               } else if ( !bup ) {
-                       return 1;
-               }
-
-               // Otherwise they're somewhere else in the tree so we need
-               // to build up a full list of the parentNodes for comparison
-               while ( cur ) {
-                       ap.unshift( cur );
-                       cur = cur.parentNode;
-               }
-
-               cur = bup;
-
-               while ( cur ) {
-                       bp.unshift( cur );
-                       cur = cur.parentNode;
-               }
-
-               al = ap.length;
-               bl = bp.length;
-
-               // Start walking down the tree looking for a discrepancy
-               for ( var i = 0; i < al && i < bl; i++ ) {
-                       if ( ap[i] !== bp[i] ) {
-                               return siblingCheck( ap[i], bp[i] );
-                       }
-               }
-
-               // We ended someplace up the tree so do a sibling check
-               return i === al ?
-                       siblingCheck( a, bp[i], -1 ) :
-                       siblingCheck( ap[i], b, 1 );
-       };
-
-       siblingCheck = function( a, b, ret ) {
-               if ( a === b ) {
-                       return ret;
-               }
-
-               var cur = a.nextSibling;
-
-               while ( cur ) {
-                       if ( cur === b ) {
-                               return -1;
-                       }
-
-                       cur = cur.nextSibling;
-               }
-
-               return 1;
-       };
-}
-
-// Utility function for retreiving the text value of an array of DOM nodes
-Sizzle.getText = function( elems ) {
-       var ret = "", elem;
-
-       for ( var i = 0; elems[i]; i++ ) {
-               elem = elems[i];
-
-               // Get the text from text nodes and CDATA nodes
-               if ( elem.nodeType === 3 || elem.nodeType === 4 ) {
-                       ret += elem.nodeValue;
-
-               // Traverse everything else, except comment nodes
-               } else if ( elem.nodeType !== 8 ) {
-                       ret += Sizzle.getText( elem.childNodes );
-               }
-       }
-
-       return ret;
-};
-
-// Check to see if the browser returns elements by name when
-// querying by getElementById (and provide a workaround)
-(function(){
-       // We're going to inject a fake input element with a specified name
-       var form = document.createElement("div"),
-               id = "script" + (new Date()).getTime(),
-               root = document.documentElement;
-
-       form.innerHTML = "<a name='" + id + "'/>";
-
-       // Inject it into the root element, check its status, and remove it quickly
-       root.insertBefore( form, root.firstChild );
-
-       // The workaround has to do additional checks after a getElementById
-       // Which slows things down for other browsers (hence the branching)
-       if ( document.getElementById( id ) ) {
-               Expr.find.ID = function( match, context, isXML ) {
-                       if ( typeof context.getElementById !== "undefined" && !isXML ) {
-                               var m = context.getElementById(match[1]);
-
-                               return m ?
-                                       m.id === match[1] || typeof m.getAttributeNode !== "undefined" && m.getAttributeNode("id").nodeValue === match[1] ?
-                                               [m] :
-                                               undefined :
-                                       [];
-                       }
-               };
-
-               Expr.filter.ID = function( elem, match ) {
-                       var node = typeof elem.getAttributeNode !== "undefined" && elem.getAttributeNode("id");
-
-                       return elem.nodeType === 1 && node && node.nodeValue === match;
-               };
-       }
-
-       root.removeChild( form );
-
-       // release memory in IE
-       root = form = null;
-})();
-
-(function(){
-       // Check to see if the browser returns only elements
-       // when doing getElementsByTagName("*")
-
-       // Create a fake element
-       var div = document.createElement("div");
-       div.appendChild( document.createComment("") );
-
-       // Make sure no comments are found
-       if ( div.getElementsByTagName("*").length > 0 ) {
-               Expr.find.TAG = function( match, context ) {
-                       var results = context.getElementsByTagName( match[1] );
-
-                       // Filter out possible comments
-                       if ( match[1] === "*" ) {
-                               var tmp = [];
-
-                               for ( var i = 0; results[i]; i++ ) {
-                                       if ( results[i].nodeType === 1 ) {
-                                               tmp.push( results[i] );
-                                       }
-                               }
-
-                               results = tmp;
-                       }
-
-                       return results;
-               };
-       }
-
-       // Check to see if an attribute returns normalized href attributes
-       div.innerHTML = "<a href='#'></a>";
-
-       if ( div.firstChild && typeof div.firstChild.getAttribute !== "undefined" &&
-                       div.firstChild.getAttribute("href") !== "#" ) {
-
-               Expr.attrHandle.href = function( elem ) {
-                       return elem.getAttribute( "href", 2 );
-               };
-       }
-
-       // release memory in IE
-       div = null;
-})();
-
-if ( document.querySelectorAll ) {
-       (function(){
-               var oldSizzle = Sizzle,
-                       div = document.createElement("div"),
-                       id = "__sizzle__";
-
-               div.innerHTML = "<p class='TEST'></p>";
-
-               // Safari can't handle uppercase or unicode characters when
-               // in quirks mode.
-               if ( div.querySelectorAll && div.querySelectorAll(".TEST").length === 0 ) {
-                       return;
-               }
-       
-               Sizzle = function( query, context, extra, seed ) {
-                       context = context || document;
-
-                       // Make sure that attribute selectors are quoted
-                       query = query.replace(/\=\s*([^'"\]]*)\s*\]/g, "='$1']");
-
-                       // Only use querySelectorAll on non-XML documents
-                       // (ID selectors don't work in non-HTML documents)
-                       if ( !seed && !Sizzle.isXML(context) ) {
-                               if ( context.nodeType === 9 ) {
-                                       try {
-                                               return makeArray( context.querySelectorAll(query), extra );
-                                       } catch(qsaError) {}
-
-                               // qSA works strangely on Element-rooted queries
-                               // We can work around this by specifying an extra ID on the root
-                               // and working up from there (Thanks to Andrew Dupont for the technique)
-                               // IE 8 doesn't work on object elements
-                               } else if ( context.nodeType === 1 && context.nodeName.toLowerCase() !== "object" ) {
-                                       var old = context.getAttribute( "id" ),
-                                               nid = old || id;
-
-                                       if ( !old ) {
-                                               context.setAttribute( "id", nid );
-                                       }
-
-                                       try {
-                                               return makeArray( context.querySelectorAll( "#" + nid + " " + query ), extra );
-
-                                       } catch(pseudoError) {
-                                       } finally {
-                                               if ( !old ) {
-                                                       context.removeAttribute( "id" );
-                                               }
-                                       }
-                               }
-                       }
-               
-                       return oldSizzle(query, context, extra, seed);
-               };
-
-               for ( var prop in oldSizzle ) {
-                       Sizzle[ prop ] = oldSizzle[ prop ];
-               }
-
-               // release memory in IE
-               div = null;
-       })();
-}
-
-(function(){
-       var html = document.documentElement,
-               matches = html.matchesSelector || html.mozMatchesSelector || html.webkitMatchesSelector || html.msMatchesSelector,
-               pseudoWorks = false;
-
-       try {
-               // This should fail with an exception
-               // Gecko does not error, returns false instead
-               matches.call( document.documentElement, "[test!='']:sizzle" );
-       
-       } catch( pseudoError ) {
-               pseudoWorks = true;
-       }
-
-       if ( matches ) {
-               Sizzle.matchesSelector = function( node, expr ) {
-                       // Make sure that attribute selectors are quoted
-                       expr = expr.replace(/\=\s*([^'"\]]*)\s*\]/g, "='$1']");
-
-                       if ( !Sizzle.isXML( node ) ) {
-                               try { 
-                                       if ( pseudoWorks || !Expr.match.PSEUDO.test( expr ) && !/!=/.test( expr ) ) {
-                                               return matches.call( node, expr );
-                                       }
-                               } catch(e) {}
-                       }
-
-                       return Sizzle(expr, null, null, [node]).length > 0;
-               };
-       }
-})();
-
-(function(){
-       var div = document.createElement("div");
-
-       div.innerHTML = "<div class='test e'></div><div class='test'></div>";
-
-       // Opera can't find a second classname (in 9.6)
-       // Also, make sure that getElementsByClassName actually exists
-       if ( !div.getElementsByClassName || div.getElementsByClassName("e").length === 0 ) {
-               return;
-       }
-
-       // Safari caches class attributes, doesn't catch changes (in 3.2)
-       div.lastChild.className = "e";
-
-       if ( div.getElementsByClassName("e").length === 1 ) {
-               return;
-       }
-       
-       Expr.order.splice(1, 0, "CLASS");
-       Expr.find.CLASS = function( match, context, isXML ) {
-               if ( typeof context.getElementsByClassName !== "undefined" && !isXML ) {
-                       return context.getElementsByClassName(match[1]);
-               }
-       };
-
-       // release memory in IE
-       div = null;
-})();
-
-function dirNodeCheck( dir, cur, doneName, checkSet, nodeCheck, isXML ) {
-       for ( var i = 0, l = checkSet.length; i < l; i++ ) {
-               var elem = checkSet[i];
-
-               if ( elem ) {
-                       var match = false;
-
-                       elem = elem[dir];
-
-                       while ( elem ) {
-                               if ( elem.sizcache === doneName ) {
-                                       match = checkSet[elem.sizset];
-                                       break;
-                               }
-
-                               if ( elem.nodeType === 1 && !isXML ){
-                                       elem.sizcache = doneName;
-                                       elem.sizset = i;
-                               }
-
-                               if ( elem.nodeName.toLowerCase() === cur ) {
-                                       match = elem;
-                                       break;
-                               }
-
-                               elem = elem[dir];
-                       }
-
-                       checkSet[i] = match;
-               }
-       }
-}
-
-function dirCheck( dir, cur, doneName, checkSet, nodeCheck, isXML ) {
-       for ( var i = 0, l = checkSet.length; i < l; i++ ) {
-               var elem = checkSet[i];
-
-               if ( elem ) {
-                       var match = false;
-                       
-                       elem = elem[dir];
-
-                       while ( elem ) {
-                               if ( elem.sizcache === doneName ) {
-                                       match = checkSet[elem.sizset];
-                                       break;
-                               }
-
-                               if ( elem.nodeType === 1 ) {
-                                       if ( !isXML ) {
-                                               elem.sizcache = doneName;
-                                               elem.sizset = i;
-                                       }
-
-                                       if ( typeof cur !== "string" ) {
-                                               if ( elem === cur ) {
-                                                       match = true;
-                                                       break;
-                                               }
-
-                                       } else if ( Sizzle.filter( cur, [elem] ).length > 0 ) {
-                                               match = elem;
-                                               break;
-                                       }
-                               }
-
-                               elem = elem[dir];
-                       }
-
-                       checkSet[i] = match;
-               }
-       }
-}
-
-if ( document.documentElement.contains ) {
-       Sizzle.contains = function( a, b ) {
-               return a !== b && (a.contains ? a.contains(b) : true);
-       };
-
-} else if ( document.documentElement.compareDocumentPosition ) {
-       Sizzle.contains = function( a, b ) {
-               return !!(a.compareDocumentPosition(b) & 16);
-       };
-
-} else {
-       Sizzle.contains = function() {
-               return false;
-       };
-}
-
-Sizzle.isXML = function( elem ) {
-       // documentElement is verified for cases where it doesn't yet exist
-       // (such as loading iframes in IE - #4833) 
-       var documentElement = (elem ? elem.ownerDocument || elem : 0).documentElement;
-
-       return documentElement ? documentElement.nodeName !== "HTML" : false;
-};
-
-var posProcess = function( selector, context ) {
-       var match,
-               tmpSet = [],
-               later = "",
-               root = context.nodeType ? [context] : context;
-
-       // Position selectors must be done after the filter
-       // And so must :not(positional) so we move all PSEUDOs to the end
-       while ( (match = Expr.match.PSEUDO.exec( selector )) ) {
-               later += match[0];
-               selector = selector.replace( Expr.match.PSEUDO, "" );
-       }
-
-       selector = Expr.relative[selector] ? selector + "*" : selector;
-
-       for ( var i = 0, l = root.length; i < l; i++ ) {
-               Sizzle( selector, root[i], tmpSet );
-       }
-
-       return Sizzle.filter( later, tmpSet );
-};
-
-// EXPOSE
-jQuery.find = Sizzle;
-jQuery.expr = Sizzle.selectors;
-jQuery.expr[":"] = jQuery.expr.filters;
-jQuery.unique = Sizzle.uniqueSort;
-jQuery.text = Sizzle.getText;
-jQuery.isXMLDoc = Sizzle.isXML;
-jQuery.contains = Sizzle.contains;
-
-
-})();
-
-
-var runtil = /Until$/,
-       rparentsprev = /^(?:parents|prevUntil|prevAll)/,
-       // Note: This RegExp should be improved, or likely pulled from Sizzle
-       rmultiselector = /,/,
-       isSimple = /^.[^:#\[\.,]*$/,
-       slice = Array.prototype.slice,
-       POS = jQuery.expr.match.POS;
-
-jQuery.fn.extend({
-       find: function( selector ) {
-               var ret = this.pushStack( "", "find", selector ),
-                       length = 0;
-
-               for ( var i = 0, l = this.length; i < l; i++ ) {
-                       length = ret.length;
-                       jQuery.find( selector, this[i], ret );
-
-                       if ( i > 0 ) {
-                               // Make sure that the results are unique
-                               for ( var n = length; n < ret.length; n++ ) {
-                                       for ( var r = 0; r < length; r++ ) {
-                                               if ( ret[r] === ret[n] ) {
-                                                       ret.splice(n--, 1);
-                                                       break;
-                                               }
-                                       }
-                               }
-                       }
-               }
-
-               return ret;
-       },
-
-       has: function( target ) {
-               var targets = jQuery( target );
-               return this.filter(function() {
-                       for ( var i = 0, l = targets.length; i < l; i++ ) {
-                               if ( jQuery.contains( this, targets[i] ) ) {
-                                       return true;
-                               }
-                       }
-               });
-       },
-
-       not: function( selector ) {
-               return this.pushStack( winnow(this, selector, false), "not", selector);
-       },
-
-       filter: function( selector ) {
-               return this.pushStack( winnow(this, selector, true), "filter", selector );
-       },
-       
-       is: function( selector ) {
-               return !!selector && jQuery.filter( selector, this ).length > 0;
-       },
-
-       closest: function( selectors, context ) {
-               var ret = [], i, l, cur = this[0];
-
-               if ( jQuery.isArray( selectors ) ) {
-                       var match, selector,
-                               matches = {},
-                               level = 1;
-
-                       if ( cur && selectors.length ) {
-                               for ( i = 0, l = selectors.length; i < l; i++ ) {
-                                       selector = selectors[i];
-
-                                       if ( !matches[selector] ) {
-                                               matches[selector] = jQuery.expr.match.POS.test( selector ) ? 
-                                                       jQuery( selector, context || this.context ) :
-                                                       selector;
-                                       }
-                               }
-
-                               while ( cur && cur.ownerDocument && cur !== context ) {
-                                       for ( selector in matches ) {
-                                               match = matches[selector];
-
-                                               if ( match.jquery ? match.index(cur) > -1 : jQuery(cur).is(match) ) {
-                                                       ret.push({ selector: selector, elem: cur, level: level });
-                                               }
-                                       }
-
-                                       cur = cur.parentNode;
-                                       level++;
-                               }
-                       }
-
-                       return ret;
-               }
-
-               var pos = POS.test( selectors ) ? 
-                       jQuery( selectors, context || this.context ) : null;
-
-               for ( i = 0, l = this.length; i < l; i++ ) {
-                       cur = this[i];
-
-                       while ( cur ) {
-                               if ( pos ? pos.index(cur) > -1 : jQuery.find.matchesSelector(cur, selectors) ) {
-                                       ret.push( cur );
-                                       break;
-
-                               } else {
-                                       cur = cur.parentNode;
-                                       if ( !cur || !cur.ownerDocument || cur === context ) {
-                                               break;
-                                       }
-                               }
-                       }
-               }
-
-               ret = ret.length > 1 ? jQuery.unique(ret) : ret;
-               
-               return this.pushStack( ret, "closest", selectors );
-       },
-       
-       // Determine the position of an element within
-       // the matched set of elements
-       index: function( elem ) {
-               if ( !elem || typeof elem === "string" ) {
-                       return jQuery.inArray( this[0],
-                               // If it receives a string, the selector is used
-                               // If it receives nothing, the siblings are used
-                               elem ? jQuery( elem ) : this.parent().children() );
-               }
-               // Locate the position of the desired element
-               return jQuery.inArray(
-                       // If it receives a jQuery object, the first element is used
-                       elem.jquery ? elem[0] : elem, this );
-       },
-
-       add: function( selector, context ) {
-               var set = typeof selector === "string" ?
-                               jQuery( selector, context || this.context ) :
-                               jQuery.makeArray( selector ),
-                       all = jQuery.merge( this.get(), set );
-
-               return this.pushStack( isDisconnected( set[0] ) || isDisconnected( all[0] ) ?
-                       all :
-                       jQuery.unique( all ) );
-       },
-
-       andSelf: function() {
-               return this.add( this.prevObject );
-       }
-});
-
-// A painfully simple check to see if an element is disconnected
-// from a document (should be improved, where feasible).
-function isDisconnected( node ) {
-       return !node || !node.parentNode || node.parentNode.nodeType === 11;
-}
-
-jQuery.each({
-       parent: function( elem ) {
-               var parent = elem.parentNode;
-               return parent && parent.nodeType !== 11 ? parent : null;
-       },
-       parents: function( elem ) {
-               return jQuery.dir( elem, "parentNode" );
-       },
-       parentsUntil: function( elem, i, until ) {
-               return jQuery.dir( elem, "parentNode", until );
-       },
-       next: function( elem ) {
-               return jQuery.nth( elem, 2, "nextSibling" );
-       },
-       prev: function( elem ) {
-               return jQuery.nth( elem, 2, "previousSibling" );
-       },
-       nextAll: function( elem ) {
-               return jQuery.dir( elem, "nextSibling" );
-       },
-       prevAll: function( elem ) {
-               return jQuery.dir( elem, "previousSibling" );
-       },
-       nextUntil: function( elem, i, until ) {
-               return jQuery.dir( elem, "nextSibling", until );
-       },
-       prevUntil: function( elem, i, until ) {
-               return jQuery.dir( elem, "previousSibling", until );
-       },
-       siblings: function( elem ) {
-               return jQuery.sibling( elem.parentNode.firstChild, elem );
-       },
-       children: function( elem ) {
-               return jQuery.sibling( elem.firstChild );
-       },
-       contents: function( elem ) {
-               return jQuery.nodeName( elem, "iframe" ) ?
-                       elem.contentDocument || elem.contentWindow.document :
-                       jQuery.makeArray( elem.childNodes );
-       }
-}, function( name, fn ) {
-       jQuery.fn[ name ] = function( until, selector ) {
-               var ret = jQuery.map( this, fn, until );
-               
-               if ( !runtil.test( name ) ) {
-                       selector = until;
-               }
-
-               if ( selector && typeof selector === "string" ) {
-                       ret = jQuery.filter( selector, ret );
-               }
-
-               ret = this.length > 1 ? jQuery.unique( ret ) : ret;
-
-               if ( (this.length > 1 || rmultiselector.test( selector )) && rparentsprev.test( name ) ) {
-                       ret = ret.reverse();
-               }
-
-               return this.pushStack( ret, name, slice.call(arguments).join(",") );
-       };
-});
-
-jQuery.extend({
-       filter: function( expr, elems, not ) {
-               if ( not ) {
-                       expr = ":not(" + expr + ")";
-               }
-
-               return elems.length === 1 ?
-                       jQuery.find.matchesSelector(elems[0], expr) ? [ elems[0] ] : [] :
-                       jQuery.find.matches(expr, elems);
-       },
-       
-       dir: function( elem, dir, until ) {
-               var matched = [],
-                       cur = elem[ dir ];
-
-               while ( cur && cur.nodeType !== 9 && (until === undefined || cur.nodeType !== 1 || !jQuery( cur ).is( until )) ) {
-                       if ( cur.nodeType === 1 ) {
-                               matched.push( cur );
-                       }
-                       cur = cur[dir];
-               }
-               return matched;
-       },
-
-       nth: function( cur, result, dir, elem ) {
-               result = result || 1;
-               var num = 0;
-
-               for ( ; cur; cur = cur[dir] ) {
-                       if ( cur.nodeType === 1 && ++num === result ) {
-                               break;
-                       }
-               }
-
-               return cur;
-       },
-
-       sibling: function( n, elem ) {
-               var r = [];
-
-               for ( ; n; n = n.nextSibling ) {
-                       if ( n.nodeType === 1 && n !== elem ) {
-                               r.push( n );
-                       }
-               }
-
-               return r;
-       }
-});
-
-// Implement the identical functionality for filter and not
-function winnow( elements, qualifier, keep ) {
-       if ( jQuery.isFunction( qualifier ) ) {
-               return jQuery.grep(elements, function( elem, i ) {
-                       var retVal = !!qualifier.call( elem, i, elem );
-                       return retVal === keep;
-               });
-
-       } else if ( qualifier.nodeType ) {
-               return jQuery.grep(elements, function( elem, i ) {
-                       return (elem === qualifier) === keep;
-               });
-
-       } else if ( typeof qualifier === "string" ) {
-               var filtered = jQuery.grep(elements, function( elem ) {
-                       return elem.nodeType === 1;
-               });
-
-               if ( isSimple.test( qualifier ) ) {
-                       return jQuery.filter(qualifier, filtered, !keep);
-               } else {
-                       qualifier = jQuery.filter( qualifier, filtered );
-               }
-       }
-
-       return jQuery.grep(elements, function( elem, i ) {
-               return (jQuery.inArray( elem, qualifier ) >= 0) === keep;
-       });
-}
-
-
-
-
-var rinlinejQuery = / jQuery\d+="(?:\d+|null)"/g,
-       rleadingWhitespace = /^\s+/,
-       rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,
-       rtagName = /<([\w:]+)/,
-       rtbody = /<tbody/i,
-       rhtml = /<|&#?\w+;/,
-       rnocache = /<(?:script|object|embed|option|style)/i,
-       // checked="checked" or checked (html5)
-       rchecked = /checked\s*(?:[^=]|=\s*.checked.)/i,
-       raction = /\=([^="'>\s]+\/)>/g,
-       wrapMap = {
-               option: [ 1, "<select multiple='multiple'>", "</select>" ],
-               legend: [ 1, "<fieldset>", "</fieldset>" ],
-               thead: [ 1, "<table>", "</table>" ],
-               tr: [ 2, "<table><tbody>", "</tbody></table>" ],
-               td: [ 3, "<table><tbody><tr>", "</tr></tbody></table>" ],
-               col: [ 2, "<table><tbody></tbody><colgroup>", "</colgroup></table>" ],
-               area: [ 1, "<map>", "</map>" ],
-               _default: [ 0, "", "" ]
-       };
-
-wrapMap.optgroup = wrapMap.option;
-wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead;
-wrapMap.th = wrapMap.td;
-
-// IE can't serialize <link> and <script> tags normally
-if ( !jQuery.support.htmlSerialize ) {
-       wrapMap._default = [ 1, "div<div>", "</div>" ];
-}
-
-jQuery.fn.extend({
-       text: function( text ) {
-               if ( jQuery.isFunction(text) ) {
-                       return this.each(function(i) {
-                               var self = jQuery( this );
-
-                               self.text( text.call(this, i, self.text()) );
-                       });
-               }
-
-               if ( typeof text !== "object" && text !== undefined ) {
-                       return this.empty().append( (this[0] && this[0].ownerDocument || document).createTextNode( text ) );
-               }
-
-               return jQuery.text( this );
-       },
-
-       wrapAll: function( html ) {
-               if ( jQuery.isFunction( html ) ) {
-                       return this.each(function(i) {
-                               jQuery(this).wrapAll( html.call(this, i) );
-                       });
-               }
-
-               if ( this[0] ) {
-                       // The elements to wrap the target around
-                       var wrap = jQuery( html, this[0].ownerDocument ).eq(0).clone(true);
-
-                       if ( this[0].parentNode ) {
-                               wrap.insertBefore( this[0] );
-                       }
-
-                       wrap.map(function() {
-                               var elem = this;
-
-                               while ( elem.firstChild && elem.firstChild.nodeType === 1 ) {
-                                       elem = elem.firstChild;
-                               }
-
-                               return elem;
-                       }).append(this);
-               }
-
-               return this;
-       },
-
-       wrapInner: function( html ) {
-               if ( jQuery.isFunction( html ) ) {
-                       return this.each(function(i) {
-                               jQuery(this).wrapInner( html.call(this, i) );
-                       });
-               }
-
-               return this.each(function() {
-                       var self = jQuery( this ),
-                               contents = self.contents();
-
-                       if ( contents.length ) {
-                               contents.wrapAll( html );
-
-                       } else {
-                               self.append( html );
-                       }
-               });
-       },
-
-       wrap: function( html ) {
-               return this.each(function() {
-                       jQuery( this ).wrapAll( html );
-               });
-       },
-
-       unwrap: function() {
-               return this.parent().each(function() {
-                       if ( !jQuery.nodeName( this, "body" ) ) {
-                               jQuery( this ).replaceWith( this.childNodes );
-                       }
-               }).end();
-       },
-
-       append: function() {
-               return this.domManip(arguments, true, function( elem ) {
-                       if ( this.nodeType === 1 ) {
-                               this.appendChild( elem );
-                       }
-               });
-       },
-
-       prepend: function() {
-               return this.domManip(arguments, true, function( elem ) {
-                       if ( this.nodeType === 1 ) {
-                               this.insertBefore( elem, this.firstChild );
-                       }
-               });
-       },
-
-       before: function() {
-               if ( this[0] && this[0].parentNode ) {
-                       return this.domManip(arguments, false, function( elem ) {
-                               this.parentNode.insertBefore( elem, this );
-                       });
-               } else if ( arguments.length ) {
-                       var set = jQuery(arguments[0]);
-                       set.push.apply( set, this.toArray() );
-                       return this.pushStack( set, "before", arguments );
-               }
-       },
-
-       after: function() {
-               if ( this[0] && this[0].parentNode ) {
-                       return this.domManip(arguments, false, function( elem ) {
-                               this.parentNode.insertBefore( elem, this.nextSibling );
-                       });
-               } else if ( arguments.length ) {
-                       var set = this.pushStack( this, "after", arguments );
-                       set.push.apply( set, jQuery(arguments[0]).toArray() );
-                       return set;
-               }
-       },
-       
-       // keepData is for internal use only--do not document
-       remove: function( selector, keepData ) {
-               for ( var i = 0, elem; (elem = this[i]) != null; i++ ) {
-                       if ( !selector || jQuery.filter( selector, [ elem ] ).length ) {
-                               if ( !keepData && elem.nodeType === 1 ) {
-                                       jQuery.cleanData( elem.getElementsByTagName("*") );
-                                       jQuery.cleanData( [ elem ] );
-                               }
-
-                               if ( elem.parentNode ) {
-                                        elem.parentNode.removeChild( elem );
-                               }
-                       }
-               }
-               
-               return this;
-       },
-
-       empty: function() {
-               for ( var i = 0, elem; (elem = this[i]) != null; i++ ) {
-                       // Remove element nodes and prevent memory leaks
-                       if ( elem.nodeType === 1 ) {
-                               jQuery.cleanData( elem.getElementsByTagName("*") );
-                       }
-
-                       // Remove any remaining nodes
-                       while ( elem.firstChild ) {
-                               elem.removeChild( elem.firstChild );
-                       }
-               }
-               
-               return this;
-       },
-
-       clone: function( events ) {
-               // Do the clone
-               var ret = this.map(function() {
-                       if ( !jQuery.support.noCloneEvent && !jQuery.isXMLDoc(this) ) {
-                               // IE copies events bound via attachEvent when
-                               // using cloneNode. Calling detachEvent on the
-                               // clone will also remove the events from the orignal
-                               // In order to get around this, we use innerHTML.
-                               // Unfortunately, this means some modifications to
-                               // attributes in IE that are actually only stored
-                               // as properties will not be copied (such as the
-                               // the name attribute on an input).
-                               var html = this.outerHTML,
-                                       ownerDocument = this.ownerDocument;
-
-                               if ( !html ) {
-                                       var div = ownerDocument.createElement("div");
-                                       div.appendChild( this.cloneNode(true) );
-                                       html = div.innerHTML;
-                               }
-
-                               return jQuery.clean([html.replace(rinlinejQuery, "")
-                                       // Handle the case in IE 8 where action=/test/> self-closes a tag
-                                       .replace(raction, '="$1">')
-                                       .replace(rleadingWhitespace, "")], ownerDocument)[0];
-                       } else {
-                               return this.cloneNode(true);
-                       }
-               });
-
-               // Copy the events from the original to the clone
-               if ( events === true ) {
-                       cloneCopyEvent( this, ret );
-                       cloneCopyEvent( this.find("*"), ret.find("*") );
-               }
-
-               // Return the cloned set
-               return ret;
-       },
-
-       html: function( value ) {
-               if ( value === undefined ) {
-                       return this[0] && this[0].nodeType === 1 ?
-                               this[0].innerHTML.replace(rinlinejQuery, "") :
-                               null;
-
-               // See if we can take a shortcut and just use innerHTML
-               } else if ( typeof value === "string" && !rnocache.test( value ) &&
-                       (jQuery.support.leadingWhitespace || !rleadingWhitespace.test( value )) &&
-                       !wrapMap[ (rtagName.exec( value ) || ["", ""])[1].toLowerCase() ] ) {
-
-                       value = value.replace(rxhtmlTag, "<$1></$2>");
-
-                       try {
-                               for ( var i = 0, l = this.length; i < l; i++ ) {
-                                       // Remove element nodes and prevent memory leaks
-                                       if ( this[i].nodeType === 1 ) {
-                                               jQuery.cleanData( this[i].getElementsByTagName("*") );
-                                               this[i].innerHTML = value;
-                                       }
-                               }
-
-                       // If using innerHTML throws an exception, use the fallback method
-                       } catch(e) {
-                               this.empty().append( value );
-                       }
-
-               } else if ( jQuery.isFunction( value ) ) {
-                       this.each(function(i){
-                               var self = jQuery( this );
-
-                               self.html( value.call(this, i, self.html()) );
-                       });
-
-               } else {
-                       this.empty().append( value );
-               }
-
-               return this;
-       },
-
-       replaceWith: function( value ) {
-               if ( this[0] && this[0].parentNode ) {
-                       // Make sure that the elements are removed from the DOM before they are inserted
-                       // this can help fix replacing a parent with child elements
-                       if ( jQuery.isFunction( value ) ) {
-                               return this.each(function(i) {
-                                       var self = jQuery(this), old = self.html();
-                                       self.replaceWith( value.call( this, i, old ) );
-                               });
-                       }
-
-                       if ( typeof value !== "string" ) {
-                               value = jQuery( value ).detach();
-                       }
-
-                       return this.each(function() {
-                               var next = this.nextSibling,
-                                       parent = this.parentNode;
-
-                               jQuery( this ).remove();
-
-                               if ( next ) {
-                                       jQuery(next).before( value );
-                               } else {
-                                       jQuery(parent).append( value );
-                               }
-                       });
-               } else {
-                       return this.pushStack( jQuery(jQuery.isFunction(value) ? value() : value), "replaceWith", value );
-               }
-       },
-
-       detach: function( selector ) {
-               return this.remove( selector, true );
-       },
-
-       domManip: function( args, table, callback ) {
-               var results, first, fragment, parent,
-                       value = args[0],
-                       scripts = [];
-
-               // We can't cloneNode fragments that contain checked, in WebKit
-               if ( !jQuery.support.checkClone && arguments.length === 3 && typeof value === "string" && rchecked.test( value ) ) {
-                       return this.each(function() {
-                               jQuery(this).domManip( args, table, callback, true );
-                       });
-               }
-
-               if ( jQuery.isFunction(value) ) {
-                       return this.each(function(i) {
-                               var self = jQuery(this);
-                               args[0] = value.call(this, i, table ? self.html() : undefined);
-                               self.domManip( args, table, callback );
-                       });
-               }
-
-               if ( this[0] ) {
-                       parent = value && value.parentNode;
-
-                       // If we're in a fragment, just use that instead of building a new one
-                       if ( jQuery.support.parentNode && parent && parent.nodeType === 11 && parent.childNodes.length === this.length ) {
-                               results = { fragment: parent };
-
-                       } else {
-                               results = jQuery.buildFragment( args, this, scripts );
-                       }
-                       
-                       fragment = results.fragment;
-                       
-                       if ( fragment.childNodes.length === 1 ) {
-                               first = fragment = fragment.firstChild;
-                       } else {
-                               first = fragment.firstChild;
-                       }
-
-                       if ( first ) {
-                               table = table && jQuery.nodeName( first, "tr" );
-
-                               for ( var i = 0, l = this.length; i < l; i++ ) {
-                                       callback.call(
-                                               table ?
-                                                       root(this[i], first) :
-                                                       this[i],
-                                               i > 0 || results.cacheable || this.length > 1  ?
-                                                       fragment.cloneNode(true) :
-                                                       fragment
-                                       );
-                               }
-                       }
-
-                       if ( scripts.length ) {
-                               jQuery.each( scripts, evalScript );
-                       }
-               }
-
-               return this;
-       }
-});
-
-function root( elem, cur ) {
-       return jQuery.nodeName(elem, "table") ?
-               (elem.getElementsByTagName("tbody")[0] ||
-               elem.appendChild(elem.ownerDocument.createElement("tbody"))) :
-               elem;
-}
-
-function cloneCopyEvent(orig, ret) {
-       var i = 0;
-
-       ret.each(function() {
-               if ( this.nodeName !== (orig[i] && orig[i].nodeName) ) {
-                       return;
-               }
-
-               var oldData = jQuery.data( orig[i++] ),
-                       curData = jQuery.data( this, oldData ),
-                       events = oldData && oldData.events;
-
-               if ( events ) {
-                       delete curData.handle;
-                       curData.events = {};
-
-                       for ( var type in events ) {
-                               for ( var handler in events[ type ] ) {
-                                       jQuery.event.add( this, type, events[ type ][ handler ], events[ type ][ handler ].data );
-                               }
-                       }
-               }
-       });
-}
-
-jQuery.buildFragment = function( args, nodes, scripts ) {
-       var fragment, cacheable, cacheresults,
-               doc = (nodes && nodes[0] ? nodes[0].ownerDocument || nodes[0] : document);
-
-       // Only cache "small" (1/2 KB) strings that are associated with the main document
-       // Cloning options loses the selected state, so don't cache them
-       // IE 6 doesn't like it when you put <object> or <embed> elements in a fragment
-       // Also, WebKit does not clone 'checked' attributes on cloneNode, so don't cache
-       if ( args.length === 1 && typeof args[0] === "string" && args[0].length < 512 && doc === document &&
-               !rnocache.test( args[0] ) && (jQuery.support.checkClone || !rchecked.test( args[0] )) ) {
-
-               cacheable = true;
-               cacheresults = jQuery.fragments[ args[0] ];
-               if ( cacheresults ) {
-                       if ( cacheresults !== 1 ) {
-                               fragment = cacheresults;
-                       }
-               }
-       }
-
-       if ( !fragment ) {
-               fragment = doc.createDocumentFragment();
-               jQuery.clean( args, doc, fragment, scripts );
-       }
-
-       if ( cacheable ) {
-               jQuery.fragments[ args[0] ] = cacheresults ? fragment : 1;
-       }
-
-       return { fragment: fragment, cacheable: cacheable };
-};
-
-jQuery.fragments = {};
-
-jQuery.each({
-       appendTo: "append",
-       prependTo: "prepend",
-       insertBefore: "before",
-       insertAfter: "after",
-       replaceAll: "replaceWith"
-}, function( name, original ) {
-       jQuery.fn[ name ] = function( selector ) {
-               var ret = [],
-                       insert = jQuery( selector ),
-                       parent = this.length === 1 && this[0].parentNode;
-               
-               if ( parent && parent.nodeType === 11 && parent.childNodes.length === 1 && insert.length === 1 ) {
-                       insert[ original ]( this[0] );
-                       return this;
-                       
-               } else {
-                       for ( var i = 0, l = insert.length; i < l; i++ ) {
-                               var elems = (i > 0 ? this.clone(true) : this).get();
-                               jQuery( insert[i] )[ original ]( elems );
-                               ret = ret.concat( elems );
-                       }
-               
-                       return this.pushStack( ret, name, insert.selector );
-               }
-       };
-});
-
-jQuery.extend({
-       clean: function( elems, context, fragment, scripts ) {
-               context = context || document;
-
-               // !context.createElement fails in IE with an error but returns typeof 'object'
-               if ( typeof context.createElement === "undefined" ) {
-                       context = context.ownerDocument || context[0] && context[0].ownerDocument || document;
-               }
-
-               var ret = [];
-
-               for ( var i = 0, elem; (elem = elems[i]) != null; i++ ) {
-                       if ( typeof elem === "number" ) {
-                               elem += "";
-                       }
-
-                       if ( !elem ) {
-                               continue;
-                       }
-
-                       // Convert html string into DOM nodes
-                       if ( typeof elem === "string" && !rhtml.test( elem ) ) {
-                               elem = context.createTextNode( elem );
-
-                       } else if ( typeof elem === "string" ) {
-                               // Fix "XHTML"-style tags in all browsers
-                               elem = elem.replace(rxhtmlTag, "<$1></$2>");
-
-                               // Trim whitespace, otherwise indexOf won't work as expected
-                               var tag = (rtagName.exec( elem ) || ["", ""])[1].toLowerCase(),
-                                       wrap = wrapMap[ tag ] || wrapMap._default,
-                                       depth = wrap[0],
-                                       div = context.createElement("div");
-
-                               // Go to html and back, then peel off extra wrappers
-                               div.innerHTML = wrap[1] + elem + wrap[2];
-
-                               // Move to the right depth
-                               while ( depth-- ) {
-                                       div = div.lastChild;
-                               }
-
-                               // Remove IE's autoinserted <tbody> from table fragments
-                               if ( !jQuery.support.tbody ) {
-
-                                       // String was a <table>, *may* have spurious <tbody>
-                                       var hasBody = rtbody.test(elem),
-                                               tbody = tag === "table" && !hasBody ?
-                                                       div.firstChild && div.firstChild.childNodes :
-
-                                                       // String was a bare <thead> or <tfoot>
-                                                       wrap[1] === "<table>" && !hasBody ?
-                                                               div.childNodes :
-                                                               [];
-
-                                       for ( var j = tbody.length - 1; j >= 0 ; --j ) {
-                                               if ( jQuery.nodeName( tbody[ j ], "tbody" ) && !tbody[ j ].childNodes.length ) {
-                                                       tbody[ j ].parentNode.removeChild( tbody[ j ] );
-                                               }
-                                       }
-
-                               }
-
-                               // IE completely kills leading whitespace when innerHTML is used
-                               if ( !jQuery.support.leadingWhitespace && rleadingWhitespace.test( elem ) ) {
-                                       div.insertBefore( context.createTextNode( rleadingWhitespace.exec(elem)[0] ), div.firstChild );
-                               }
-
-                               elem = div.childNodes;
-                       }
-
-                       if ( elem.nodeType ) {
-                               ret.push( elem );
-                       } else {
-                               ret = jQuery.merge( ret, elem );
-                       }
-               }
-
-               if ( fragment ) {
-                       for ( i = 0; ret[i]; i++ ) {
-                               if ( scripts && jQuery.nodeName( ret[i], "script" ) && (!ret[i].type || ret[i].type.toLowerCase() === "text/javascript") ) {
-                                       scripts.push( ret[i].parentNode ? ret[i].parentNode.removeChild( ret[i] ) : ret[i] );
-                               
-                               } else {
-                                       if ( ret[i].nodeType === 1 ) {
-                                               ret.splice.apply( ret, [i + 1, 0].concat(jQuery.makeArray(ret[i].getElementsByTagName("script"))) );
-                                       }
-                                       fragment.appendChild( ret[i] );
-                               }
-                       }
-               }
-
-               return ret;
-       },
-       
-       cleanData: function( elems ) {
-               var data, id, cache = jQuery.cache,
-                       special = jQuery.event.special,
-                       deleteExpando = jQuery.support.deleteExpando;
-               
-               for ( var i = 0, elem; (elem = elems[i]) != null; i++ ) {
-                       if ( elem.nodeName && jQuery.noData[elem.nodeName.toLowerCase()] ) {
-                               continue;
-                       }
-
-                       id = elem[ jQuery.expando ];
-                       
-                       if ( id ) {
-                               data = cache[ id ];
-                               
-                               if ( data && data.events ) {
-                                       for ( var type in data.events ) {
-                                               if ( special[ type ] ) {
-                                                       jQuery.event.remove( elem, type );
-
-                                               } else {
-                                                       jQuery.removeEvent( elem, type, data.handle );
-                                               }
-                                       }
-                               }
-                               
-                               if ( deleteExpando ) {
-                                       delete elem[ jQuery.expando ];
-
-                               } else if ( elem.removeAttribute ) {
-                                       elem.removeAttribute( jQuery.expando );
-                               }
-                               
-                               delete cache[ id ];
-                       }
-               }
-       }
-});
-
-function evalScript( i, elem ) {
-       if ( elem.src ) {
-               jQuery.ajax({
-                       url: elem.src,
-                       async: false,
-                       dataType: "script"
-               });
-       } else {
-               jQuery.globalEval( elem.text || elem.textContent || elem.innerHTML || "" );
-       }
-
-       if ( elem.parentNode ) {
-               elem.parentNode.removeChild( elem );
-       }
-}
-
-
-
-
-var ralpha = /alpha\([^)]*\)/i,
-       ropacity = /opacity=([^)]*)/,
-       rdashAlpha = /-([a-z])/ig,
-       rupper = /([A-Z])/g,
-       rnumpx = /^-?\d+(?:px)?$/i,
-       rnum = /^-?\d/,
-
-       cssShow = { position: "absolute", visibility: "hidden", display: "block" },
-       cssWidth = [ "Left", "Right" ],
-       cssHeight = [ "Top", "Bottom" ],
-       curCSS,
-
-       getComputedStyle,
-       currentStyle,
-
-       fcamelCase = function( all, letter ) {
-               return letter.toUpperCase();
-       };
-
-jQuery.fn.css = function( name, value ) {
-       // Setting 'undefined' is a no-op
-       if ( arguments.length === 2 && value === undefined ) {
-               return this;
-       }
-
-       return jQuery.access( this, name, value, true, function( elem, name, value ) {
-               return value !== undefined ?
-                       jQuery.style( elem, name, value ) :
-                       jQuery.css( elem, name );
-       });
-};
-
-jQuery.extend({
-       // Add in style property hooks for overriding the default
-       // behavior of getting and setting a style property
-       cssHooks: {
-               opacity: {
-                       get: function( elem, computed ) {
-                               if ( computed ) {
-                                       // We should always get a number back from opacity
-                                       var ret = curCSS( elem, "opacity", "opacity" );
-                                       return ret === "" ? "1" : ret;
-
-                               } else {
-                                       return elem.style.opacity;
-                               }
-                       }
-               }
-       },
-
-       // Exclude the following css properties to add px
-       cssNumber: {
-               "zIndex": true,
-               "fontWeight": true,
-               "opacity": true,
-               "zoom": true,
-               "lineHeight": true
-       },
-
-       // Add in properties whose names you wish to fix before
-       // setting or getting the value
-       cssProps: {
-               // normalize float css property
-               "float": jQuery.support.cssFloat ? "cssFloat" : "styleFloat"
-       },
-
-       // Get and set the style property on a DOM Node
-       style: function( elem, name, value, extra ) {
-               // Don't set styles on text and comment nodes
-               if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style ) {
-                       return;
-               }
-
-               // Make sure that we're working with the right name
-               var ret, origName = jQuery.camelCase( name ),
-                       style = elem.style, hooks = jQuery.cssHooks[ origName ];
-
-               name = jQuery.cssProps[ origName ] || origName;
-
-               // Check if we're setting a value
-               if ( value !== undefined ) {
-                       // Make sure that NaN and null values aren't set. See: #7116
-                       if ( typeof value === "number" && isNaN( value ) || value == null ) {
-                               return;
-                       }
-
-                       // If a number was passed in, add 'px' to the (except for certain CSS properties)
-                       if ( typeof value === "number" && !jQuery.cssNumber[ origName ] ) {
-                               value += "px";
-                       }
-
-                       // If a hook was provided, use that value, otherwise just set the specified value
-                       if ( !hooks || !("set" in hooks) || (value = hooks.set( elem, value )) !== undefined ) {
-                               // Wrapped to prevent IE from throwing errors when 'invalid' values are provided
-                               // Fixes bug #5509
-                               try {
-                                       style[ name ] = value;
-                               } catch(e) {}
-                       }
-
-               } else {
-                       // If a hook was provided get the non-computed value from there
-                       if ( hooks && "get" in hooks && (ret = hooks.get( elem, false, extra )) !== undefined ) {
-                               return ret;
-                       }
-
-                       // Otherwise just get the value from the style object
-                       return style[ name ];
-               }
-       },
-
-       css: function( elem, name, extra ) {
-               // Make sure that we're working with the right name
-               var ret, origName = jQuery.camelCase( name ),
-                       hooks = jQuery.cssHooks[ origName ];
-
-               name = jQuery.cssProps[ origName ] || origName;
-
-               // If a hook was provided get the computed value from there
-               if ( hooks && "get" in hooks && (ret = hooks.get( elem, true, extra )) !== undefined ) {
-                       return ret;
-
-               // Otherwise, if a way to get the computed value exists, use that
-               } else if ( curCSS ) {
-                       return curCSS( elem, name, origName );
-               }
-       },
-
-       // A method for quickly swapping in/out CSS properties to get correct calculations
-       swap: function( elem, options, callback ) {
-               var old = {};
-
-               // Remember the old values, and insert the new ones
-               for ( var name in options ) {
-                       old[ name ] = elem.style[ name ];
-                       elem.style[ name ] = options[ name ];
-               }
-
-               callback.call( elem );
-
-               // Revert the old values
-               for ( name in options ) {
-                       elem.style[ name ] = old[ name ];
-               }
-       },
-
-       camelCase: function( string ) {
-               return string.replace( rdashAlpha, fcamelCase );
-       }
-});
-
-// DEPRECATED, Use jQuery.css() instead
-jQuery.curCSS = jQuery.css;
-
-jQuery.each(["height", "width"], function( i, name ) {
-       jQuery.cssHooks[ name ] = {
-               get: function( elem, computed, extra ) {
-                       var val;
-
-                       if ( computed ) {
-                               if ( elem.offsetWidth !== 0 ) {
-                                       val = getWH( elem, name, extra );
-
-                               } else {
-                                       jQuery.swap( elem, cssShow, function() {
-                                               val = getWH( elem, name, extra );
-                                       });
-                               }
-
-                               if ( val <= 0 ) {
-                                       val = curCSS( elem, name, name );
-
-                                       if ( val === "0px" && currentStyle ) {
-                                               val = currentStyle( elem, name, name );
-                                       }
-
-                                       if ( val != null ) {
-                                               // Should return "auto" instead of 0, use 0 for
-                                               // temporary backwards-compat
-                                               return val === "" || val === "auto" ? "0px" : val;
-                                       }
-                               }
-
-                               if ( val < 0 || val == null ) {
-                                       val = elem.style[ name ];
-
-                                       // Should return "auto" instead of 0, use 0 for
-                                       // temporary backwards-compat
-                                       return val === "" || val === "auto" ? "0px" : val;
-                               }
-
-                               return typeof val === "string" ? val : val + "px";
-                       }
-               },
-
-               set: function( elem, value ) {
-                       if ( rnumpx.test( value ) ) {
-                               // ignore negative width and height values #1599
-                               value = parseFloat(value);
-
-                               if ( value >= 0 ) {
-                                       return value + "px";
-                               }
-
-                       } else {
-                               return value;
-                       }
-               }
-       };
-});
-
-if ( !jQuery.support.opacity ) {
-       jQuery.cssHooks.opacity = {
-               get: function( elem, computed ) {
-                       // IE uses filters for opacity
-                       return ropacity.test((computed && elem.currentStyle ? elem.currentStyle.filter : elem.style.filter) || "") ?
-                               (parseFloat(RegExp.$1) / 100) + "" :
-                               computed ? "1" : "";
-               },
-
-               set: function( elem, value ) {
-                       var style = elem.style;
-
-                       // IE has trouble with opacity if it does not have layout
-                       // Force it by setting the zoom level
-                       style.zoom = 1;
-
-                       // Set the alpha filter to set the opacity
-                       var opacity = jQuery.isNaN(value) ?
-                               "" :
-                               "alpha(opacity=" + value * 100 + ")",
-                               filter = style.filter || "";
-
-                       style.filter = ralpha.test(filter) ?
-                               filter.replace(ralpha, opacity) :
-                               style.filter + ' ' + opacity;
-               }
-       };
-}
-
-if ( document.defaultView && document.defaultView.getComputedStyle ) {
-       getComputedStyle = function( elem, newName, name ) {
-               var ret, defaultView, computedStyle;
-
-               name = name.replace( rupper, "-$1" ).toLowerCase();
-
-               if ( !(defaultView = elem.ownerDocument.defaultView) ) {
-                       return undefined;
-               }
-
-               if ( (computedStyle = defaultView.getComputedStyle( elem, null )) ) {
-                       ret = computedStyle.getPropertyValue( name );
-                       if ( ret === "" && !jQuery.contains( elem.ownerDocument.documentElement, elem ) ) {
-                               ret = jQuery.style( elem, name );
-                       }
-               }
-
-               return ret;
-       };
-}
-
-if ( document.documentElement.currentStyle ) {
-       currentStyle = function( elem, name ) {
-               var left, rsLeft,
-                       ret = elem.currentStyle && elem.currentStyle[ name ],
-                       style = elem.style;
-
-               // From the awesome hack by Dean Edwards
-               // http://erik.eae.net/archives/2007/07/27/18.54.15/#comment-102291
-
-               // If we're not dealing with a regular pixel number
-               // but a number that has a weird ending, we need to convert it to pixels
-               if ( !rnumpx.test( ret ) && rnum.test( ret ) ) {
-                       // Remember the original values
-                       left = style.left;
-                       rsLeft = elem.runtimeStyle.left;
-
-                       // Put in the new values to get a computed value out
-                       elem.runtimeStyle.left = elem.currentStyle.left;
-                       style.left = name === "fontSize" ? "1em" : (ret || 0);
-                       ret = style.pixelLeft + "px";
-
-                       // Revert the changed values
-                       style.left = left;
-                       elem.runtimeStyle.left = rsLeft;
-               }
-
-               return ret === "" ? "auto" : ret;
-       };
-}
-
-curCSS = getComputedStyle || currentStyle;
-
-function getWH( elem, name, extra ) {
-       var which = name === "width" ? cssWidth : cssHeight,
-               val = name === "width" ? elem.offsetWidth : elem.offsetHeight;
-
-       if ( extra === "border" ) {
-               return val;
-       }
-
-       jQuery.each( which, function() {
-               if ( !extra ) {
-                       val -= parseFloat(jQuery.css( elem, "padding" + this )) || 0;
-               }
-
-               if ( extra === "margin" ) {
-                       val += parseFloat(jQuery.css( elem, "margin" + this )) || 0;
-
-               } else {
-                       val -= parseFloat(jQuery.css( elem, "border" + this + "Width" )) || 0;
-               }
-       });
-
-       return val;
-}
-
-if ( jQuery.expr && jQuery.expr.filters ) {
-       jQuery.expr.filters.hidden = function( elem ) {
-               var width = elem.offsetWidth,
-                       height = elem.offsetHeight;
-
-               return (width === 0 && height === 0) || (!jQuery.support.reliableHiddenOffsets && (elem.style.display || jQuery.css( elem, "display" )) === "none");
-       };
-
-       jQuery.expr.filters.visible = function( elem ) {
-               return !jQuery.expr.filters.hidden( elem );
-       };
-}
-
-
-
-
-var jsc = jQuery.now(),
-       rscript = /<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,
-       rselectTextarea = /^(?:select|textarea)/i,
-       rinput = /^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,
-       rnoContent = /^(?:GET|HEAD)$/,
-       rbracket = /\[\]$/,
-       jsre = /\=\?(&|$)/,
-       rquery = /\?/,
-       rts = /([?&])_=[^&]*/,
-       rurl = /^(\w+:)?\/\/([^\/?#]+)/,
-       r20 = /%20/g,
-       rhash = /#.*$/,
-
-       // Keep a copy of the old load method
-       _load = jQuery.fn.load;
-
-jQuery.fn.extend({
-       load: function( url, params, callback ) {
-               if ( typeof url !== "string" && _load ) {
-                       return _load.apply( this, arguments );
-
-               // Don't do a request if no elements are being requested
-               } else if ( !this.length ) {
-                       return this;
-               }
-
-               var off = url.indexOf(" ");
-               if ( off >= 0 ) {
-                       var selector = url.slice(off, url.length);
-                       url = url.slice(0, off);
-               }
-
-               // Default to a GET request
-               var type = "GET";
-
-               // If the second parameter was provided
-               if ( params ) {
-                       // If it's a function
-                       if ( jQuery.isFunction( params ) ) {
-                               // We assume that it's the callback
-                               callback = params;
-                               params = null;
-
-                       // Otherwise, build a param string
-                       } else if ( typeof params === "object" ) {
-                               params = jQuery.param( params, jQuery.ajaxSettings.traditional );
-                               type = "POST";
-                       }
-               }
-
-               var self = this;
-
-               // Request the remote document
-               jQuery.ajax({
-                       url: url,
-                       type: type,
-                       dataType: "html",
-                       data: params,
-                       complete: function( res, status ) {
-                               // If successful, inject the HTML into all the matched elements
-                               if ( status === "success" || status === "notmodified" ) {
-                                       // See if a selector was specified
-                                       self.html( selector ?
-                                               // Create a dummy div to hold the results
-                                               jQuery("<div>")
-                                                       // inject the contents of the document in, removing the scripts
-                                                       // to avoid any 'Permission Denied' errors in IE
-                                                       .append(res.responseText.replace(rscript, ""))
-
-                                                       // Locate the specified elements
-                                                       .find(selector) :
-
-                                               // If not, just inject the full result
-                                               res.responseText );
-                               }
-
-                               if ( callback ) {
-                                       self.each( callback, [res.responseText, status, res] );
-                               }
-                       }
-               });
-
-               return this;
-       },
-
-       serialize: function() {
-               return jQuery.param(this.serializeArray());
-       },
-
-       serializeArray: function() {
-               return this.map(function() {
-                       return this.elements ? jQuery.makeArray(this.elements) : this;
-               })
-               .filter(function() {
-                       return this.name && !this.disabled &&
-                               (this.checked || rselectTextarea.test(this.nodeName) ||
-                                       rinput.test(this.type));
-               })
-               .map(function( i, elem ) {
-                       var val = jQuery(this).val();
-
-                       return val == null ?
-                               null :
-                               jQuery.isArray(val) ?
-                                       jQuery.map( val, function( val, i ) {
-                                               return { name: elem.name, value: val };
-                                       }) :
-                                       { name: elem.name, value: val };
-               }).get();
-       }
-});
-
-// Attach a bunch of functions for handling common AJAX events
-jQuery.each( "ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "), function( i, o ) {
-       jQuery.fn[o] = function( f ) {
-               return this.bind(o, f);
-       };
-});
-
-jQuery.extend({
-       get: function( url, data, callback, type ) {
-               // shift arguments if data argument was omited
-               if ( jQuery.isFunction( data ) ) {
-                       type = type || callback;
-                       callback = data;
-                       data = null;
-               }
-
-               return jQuery.ajax({
-                       type: "GET",
-                       url: url,
-                       data: data,
-                       success: callback,
-                       dataType: type
-               });
-       },
-
-       getScript: function( url, callback ) {
-               return jQuery.get(url, null, callback, "script");
-       },
-
-       getJSON: function( url, data, callback ) {
-               return jQuery.get(url, data, callback, "json");
-       },
-
-       post: function( url, data, callback, type ) {
-               // shift arguments if data argument was omited
-               if ( jQuery.isFunction( data ) ) {
-                       type = type || callback;
-                       callback = data;
-                       data = {};
-               }
-
-               return jQuery.ajax({
-                       type: "POST",
-                       url: url,
-                       data: data,
-                       success: callback,
-                       dataType: type
-               });
-       },
-
-       ajaxSetup: function( settings ) {
-               jQuery.extend( jQuery.ajaxSettings, settings );
-       },
-
-       ajaxSettings: {
-               url: location.href,
-               global: true,
-               type: "GET",
-               contentType: "application/x-www-form-urlencoded",
-               processData: true,
-               async: true,
-               /*
-               timeout: 0,
-               data: null,
-               username: null,
-               password: null,
-               traditional: false,
-               */
-               // This function can be overriden by calling jQuery.ajaxSetup
-               xhr: function() {
-                       return new window.XMLHttpRequest();
-               },
-               accepts: {
-                       xml: "application/xml, text/xml",
-                       html: "text/html",
-                       script: "text/javascript, application/javascript",
-                       json: "application/json, text/javascript",
-                       text: "text/plain",
-                       _default: "*/*"
-               }
-       },
-
-       ajax: function( origSettings ) {
-               var s = jQuery.extend(true, {}, jQuery.ajaxSettings, origSettings),
-                       jsonp, status, data, type = s.type.toUpperCase(), noContent = rnoContent.test(type);
-
-               s.url = s.url.replace( rhash, "" );
-
-               // Use original (not extended) context object if it was provided
-               s.context = origSettings && origSettings.context != null ? origSettings.context : s;
-
-               // convert data if not already a string
-               if ( s.data && s.processData && typeof s.data !== "string" ) {
-                       s.data = jQuery.param( s.data, s.traditional );
-               }
-
-               // Handle JSONP Parameter Callbacks
-               if ( s.dataType === "jsonp" ) {
-                       if ( type === "GET" ) {
-                               if ( !jsre.test( s.url ) ) {
-                                       s.url += (rquery.test( s.url ) ? "&" : "?") + (s.jsonp || "callback") + "=?";
-                               }
-                       } else if ( !s.data || !jsre.test(s.data) ) {
-                               s.data = (s.data ? s.data + "&" : "") + (s.jsonp || "callback") + "=?";
-                       }
-                       s.dataType = "json";
-               }
-
-               // Build temporary JSONP function
-               if ( s.dataType === "json" && (s.data && jsre.test(s.data) || jsre.test(s.url)) ) {
-                       jsonp = s.jsonpCallback || ("jsonp" + jsc++);
-
-                       // Replace the =? sequence both in the query string and the data
-                       if ( s.data ) {
-                               s.data = (s.data + "").replace(jsre, "=" + jsonp + "$1");
-                       }
-
-                       s.url = s.url.replace(jsre, "=" + jsonp + "$1");
-
-                       // We need to make sure
-                       // that a JSONP style response is executed properly
-                       s.dataType = "script";
-
-                       // Handle JSONP-style loading
-                       var customJsonp = window[ jsonp ];
-
-                       window[ jsonp ] = function( tmp ) {
-                               if ( jQuery.isFunction( customJsonp ) ) {
-                                       customJsonp( tmp );
-
-                               } else {
-                                       // Garbage collect
-                                       window[ jsonp ] = undefined;
-
-                                       try {
-                                               delete window[ jsonp ];
-                                       } catch( jsonpError ) {}
-                               }
-
-                               data = tmp;
-                               jQuery.handleSuccess( s, xhr, status, data );
-                               jQuery.handleComplete( s, xhr, status, data );
-                               
-                               if ( head ) {
-                                       head.removeChild( script );
-                               }
-                       };
-               }
-
-               if ( s.dataType === "script" && s.cache === null ) {
-                       s.cache = false;
-               }
-
-               if ( s.cache === false && noContent ) {
-                       var ts = jQuery.now();
-
-                       // try replacing _= if it is there
-                       var ret = s.url.replace(rts, "$1_=" + ts);
-
-                       // if nothing was replaced, add timestamp to the end
-                       s.url = ret + ((ret === s.url) ? (rquery.test(s.url) ? "&" : "?") + "_=" + ts : "");
-               }
-
-               // If data is available, append data to url for GET/HEAD requests
-               if ( s.data && noContent ) {
-                       s.url += (rquery.test(s.url) ? "&" : "?") + s.data;
-               }
-
-               // Watch for a new set of requests
-               if ( s.global && jQuery.active++ === 0 ) {
-                       jQuery.event.trigger( "ajaxStart" );
-               }
-
-               // Matches an absolute URL, and saves the domain
-               var parts = rurl.exec( s.url ),
-                       remote = parts && (parts[1] && parts[1].toLowerCase() !== location.protocol || parts[2].toLowerCase() !== location.host);
-
-               // If we're requesting a remote document
-               // and trying to load JSON or Script with a GET
-               if ( s.dataType === "script" && type === "GET" && remote ) {
-                       var head = document.getElementsByTagName("head")[0] || document.documentElement;
-                       var script = document.createElement("script");
-                       if ( s.scriptCharset ) {
-                               script.charset = s.scriptCharset;
-                       }
-                       script.src = s.url;
-
-                       // Handle Script loading
-                       if ( !jsonp ) {
-                               var done = false;
-
-                               // Attach handlers for all browsers
-                               script.onload = script.onreadystatechange = function() {
-                                       if ( !done && (!this.readyState ||
-                                                       this.readyState === "loaded" || this.readyState === "complete") ) {
-                                               done = true;
-                                               jQuery.handleSuccess( s, xhr, status, data );
-                                               jQuery.handleComplete( s, xhr, status, data );
-
-                                               // Handle memory leak in IE
-                                               script.onload = script.onreadystatechange = null;
-                                               if ( head && script.parentNode ) {
-                                                       head.removeChild( script );
-                                               }
-                                       }
-                               };
-                       }
-
-                       // Use insertBefore instead of appendChild  to circumvent an IE6 bug.
-                       // This arises when a base node is used (#2709 and #4378).
-                       head.insertBefore( script, head.firstChild );
-
-                       // We handle everything using the script element injection
-                       return undefined;
-               }
-
-               var requestDone = false;
-
-               // Create the request object
-               var xhr = s.xhr();
-
-               if ( !xhr ) {
-                       return;
-               }
-
-               // Open the socket
-               // Passing null username, generates a login popup on Opera (#2865)
-               if ( s.username ) {
-                       xhr.open(type, s.url, s.async, s.username, s.password);
-               } else {
-                       xhr.open(type, s.url, s.async);
-               }
-
-               // Need an extra try/catch for cross domain requests in Firefox 3
-               try {
-                       // Set content-type if data specified and content-body is valid for this type
-                       if ( (s.data != null && !noContent) || (origSettings && origSettings.contentType) ) {
-                               xhr.setRequestHeader("Content-Type", s.contentType);
-                       }
-
-                       // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
-                       if ( s.ifModified ) {
-                               if ( jQuery.lastModified[s.url] ) {
-                                       xhr.setRequestHeader("If-Modified-Since", jQuery.lastModified[s.url]);
-                               }
-
-                               if ( jQuery.etag[s.url] ) {
-                                       xhr.setRequestHeader("If-None-Match", jQuery.etag[s.url]);
-                               }
-                       }
-
-                       // Set header so the called script knows that it's an XMLHttpRequest
-                       // Only send the header if it's not a remote XHR
-                       if ( !remote ) {
-                               xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest");
-                       }
-
-                       // Set the Accepts header for the server, depending on the dataType
-                       xhr.setRequestHeader("Accept", s.dataType && s.accepts[ s.dataType ] ?
-                               s.accepts[ s.dataType ] + ", */*; q=0.01" :
-                               s.accepts._default );
-               } catch( headerError ) {}
-
-               // Allow custom headers/mimetypes and early abort
-               if ( s.beforeSend && s.beforeSend.call(s.context, xhr, s) === false ) {
-                       // Handle the global AJAX counter
-                       if ( s.global && jQuery.active-- === 1 ) {
-                               jQuery.event.trigger( "ajaxStop" );
-                       }
-
-                       // close opended socket
-                       xhr.abort();
-                       return false;
-               }
-
-               if ( s.global ) {
-                       jQuery.triggerGlobal( s, "ajaxSend", [xhr, s] );
-               }
-
-               // Wait for a response to come back
-               var onreadystatechange = xhr.onreadystatechange = function( isTimeout ) {
-                       // The request was aborted
-                       if ( !xhr || xhr.readyState === 0 || isTimeout === "abort" ) {
-                               // Opera doesn't call onreadystatechange before this point
-                               // so we simulate the call
-                               if ( !requestDone ) {
-                                       jQuery.handleComplete( s, xhr, status, data );
-                               }
-
-                               requestDone = true;
-                               if ( xhr ) {
-                                       xhr.onreadystatechange = jQuery.noop;
-                               }
-
-                       // The transfer is complete and the data is available, or the request timed out
-                       } else if ( !requestDone && xhr && (xhr.readyState === 4 || isTimeout === "timeout") ) {
-                               requestDone = true;
-                               xhr.onreadystatechange = jQuery.noop;
-
-                               status = isTimeout === "timeout" ?
-                                       "timeout" :
-                                       !jQuery.httpSuccess( xhr ) ?
-                                               "error" :
-                                               s.ifModified && jQuery.httpNotModified( xhr, s.url ) ?
-                                                       "notmodified" :
-                                                       "success";
-
-                               var errMsg;
-
-                               if ( status === "success" ) {
-                                       // Watch for, and catch, XML document parse errors
-                                       try {
-                                               // process the data (runs the xml through httpData regardless of callback)
-                                               data = jQuery.httpData( xhr, s.dataType, s );
-                                       } catch( parserError ) {
-                                               status = "parsererror";
-                                               errMsg = parserError;
-                                       }
-                               }
-
-                               // Make sure that the request was successful or notmodified
-                               if ( status === "success" || status === "notmodified" ) {
-                                       // JSONP handles its own success callback
-                                       if ( !jsonp ) {
-                                               jQuery.handleSuccess( s, xhr, status, data );
-                                       }
-                               } else {
-                                       jQuery.handleError( s, xhr, status, errMsg );
-                               }
-
-                               // Fire the complete handlers
-                               if ( !jsonp ) {
-                                       jQuery.handleComplete( s, xhr, status, data );
-                               }
-
-                               if ( isTimeout === "timeout" ) {
-                                       xhr.abort();
-                               }
-
-                               // Stop memory leaks
-                               if ( s.async ) {
-                                       xhr = null;
-                               }
-                       }
-               };
-
-               // Override the abort handler, if we can (IE 6 doesn't allow it, but that's OK)
-               // Opera doesn't fire onreadystatechange at all on abort
-               try {
-                       var oldAbort = xhr.abort;
-                       xhr.abort = function() {
-                               if ( xhr ) {
-                                       // oldAbort has no call property in IE7 so
-                                       // just do it this way, which works in all
-                                       // browsers
-                                       Function.prototype.call.call( oldAbort, xhr );
-                               }
-
-                               onreadystatechange( "abort" );
-                       };
-               } catch( abortError ) {}
-
-               // Timeout checker
-               if ( s.async && s.timeout > 0 ) {
-                       setTimeout(function() {
-                               // Check to see if the request is still happening
-                               if ( xhr && !requestDone ) {
-                                       onreadystatechange( "timeout" );
-                               }
-                       }, s.timeout);
-               }
-
-               // Send the data
-               try {
-                       xhr.send( noContent || s.data == null ? null : s.data );
-
-               } catch( sendError ) {
-                       jQuery.handleError( s, xhr, null, sendError );
-
-                       // Fire the complete handlers
-                       jQuery.handleComplete( s, xhr, status, data );
-               }
-
-               // firefox 1.5 doesn't fire statechange for sync requests
-               if ( !s.async ) {
-                       onreadystatechange();
-               }
-
-               // return XMLHttpRequest to allow aborting the request etc.
-               return xhr;
-       },
-
-       // Serialize an array of form elements or a set of
-       // key/values into a query string
-       param: function( a, traditional ) {
-               var s = [],
-                       add = function( key, value ) {
-                               // If value is a function, invoke it and return its value
-                               value = jQuery.isFunction(value) ? value() : value;
-                               s[ s.length ] = encodeURIComponent(key) + "=" + encodeURIComponent(value);
-                       };
-               
-               // Set traditional to true for jQuery <= 1.3.2 behavior.
-               if ( traditional === undefined ) {
-                       traditional = jQuery.ajaxSettings.traditional;
-               }
-               
-               // If an array was passed in, assume that it is an array of form elements.
-               if ( jQuery.isArray(a) || a.jquery ) {
-                       // Serialize the form elements
-                       jQuery.each( a, function() {
-                               add( this.name, this.value );
-                       });
-                       
-               } else {
-                       // If traditional, encode the "old" way (the way 1.3.2 or older
-                       // did it), otherwise encode params recursively.
-                       for ( var prefix in a ) {
-                               buildParams( prefix, a[prefix], traditional, add );
-                       }
-               }
-
-               // Return the resulting serialization
-               return s.join("&").replace(r20, "+");
-       }
-});
-
-function buildParams( prefix, obj, traditional, add ) {
-       if ( jQuery.isArray(obj) && obj.length ) {
-               // Serialize array item.
-               jQuery.each( obj, function( i, v ) {
-                       if ( traditional || rbracket.test( prefix ) ) {
-                               // Treat each array item as a scalar.
-                               add( prefix, v );
-
-                       } else {
-                               // If array item is non-scalar (array or object), encode its
-                               // numeric index to resolve deserialization ambiguity issues.
-                               // Note that rack (as of 1.0.0) can't currently deserialize
-                               // nested arrays properly, and attempting to do so may cause
-                               // a server error. Possible fixes are to modify rack's
-                               // deserialization algorithm or to provide an option or flag
-                               // to force array serialization to be shallow.
-                               buildParams( prefix + "[" + ( typeof v === "object" || jQuery.isArray(v) ? i : "" ) + "]", v, traditional, add );
-                       }
-               });
-                       
-       } else if ( !traditional && obj != null && typeof obj === "object" ) {
-               if ( jQuery.isEmptyObject( obj ) ) {
-                       add( prefix, "" );
-
-               // Serialize object item.
-               } else {
-                       jQuery.each( obj, function( k, v ) {
-                               buildParams( prefix + "[" + k + "]", v, traditional, add );
-                       });
-               }
-                                       
-       } else {
-               // Serialize scalar item.
-               add( prefix, obj );
-       }
-}
-
-// This is still on the jQuery object... for now
-// Want to move this to jQuery.ajax some day
-jQuery.extend({
-
-       // Counter for holding the number of active queries
-       active: 0,
-
-       // Last-Modified header cache for next request
-       lastModified: {},
-       etag: {},
-
-       handleError: function( s, xhr, status, e ) {
-               // If a local callback was specified, fire it
-               if ( s.error ) {
-                       s.error.call( s.context, xhr, status, e );
-               }
-
-               // Fire the global callback
-               if ( s.global ) {
-                       jQuery.triggerGlobal( s, "ajaxError", [xhr, s, e] );
-               }
-       },
-
-       handleSuccess: function( s, xhr, status, data ) {
-               // If a local callback was specified, fire it and pass it the data
-               if ( s.success ) {
-                       s.success.call( s.context, data, status, xhr );
-               }
-
-               // Fire the global callback
-               if ( s.global ) {
-                       jQuery.triggerGlobal( s, "ajaxSuccess", [xhr, s] );
-               }
-       },
-
-       handleComplete: function( s, xhr, status ) {
-               // Process result
-               if ( s.complete ) {
-                       s.complete.call( s.context, xhr, status );
-               }
-
-               // The request was completed
-               if ( s.global ) {
-                       jQuery.triggerGlobal( s, "ajaxComplete", [xhr, s] );
-               }
-
-               // Handle the global AJAX counter
-               if ( s.global && jQuery.active-- === 1 ) {
-                       jQuery.event.trigger( "ajaxStop" );
-               }
-       },
-               
-       triggerGlobal: function( s, type, args ) {
-               (s.context && s.context.url == null ? jQuery(s.context) : jQuery.event).trigger(type, args);
-       },
-
-       // Determines if an XMLHttpRequest was successful or not
-       httpSuccess: function( xhr ) {
-               try {
-                       // IE error sometimes returns 1223 when it should be 204 so treat it as success, see #1450
-                       return !xhr.status && location.protocol === "file:" ||
-                               xhr.status >= 200 && xhr.status < 300 ||
-                               xhr.status === 304 || xhr.status === 1223;
-               } catch(e) {}
-
-               return false;
-       },
-
-       // Determines if an XMLHttpRequest returns NotModified
-       httpNotModified: function( xhr, url ) {
-               var lastModified = xhr.getResponseHeader("Last-Modified"),
-                       etag = xhr.getResponseHeader("Etag");
-
-               if ( lastModified ) {
-                       jQuery.lastModified[url] = lastModified;
-               }
-
-               if ( etag ) {
-                       jQuery.etag[url] = etag;
-               }
-
-               return xhr.status === 304;
-       },
-
-       httpData: function( xhr, type, s ) {
-               var ct = xhr.getResponseHeader("content-type") || "",
-                       xml = type === "xml" || !type && ct.indexOf("xml") >= 0,
-                       data = xml ? xhr.responseXML : xhr.responseText;
-
-               if ( xml && data.documentElement.nodeName === "parsererror" ) {
-                       jQuery.error( "parsererror" );
-               }
-
-               // Allow a pre-filtering function to sanitize the response
-               // s is checked to keep backwards compatibility
-               if ( s && s.dataFilter ) {
-                       data = s.dataFilter( data, type );
-               }
-
-               // The filter can actually parse the response
-               if ( typeof data === "string" ) {
-                       // Get the JavaScript object, if JSON is used.
-                       if ( type === "json" || !type && ct.indexOf("json") >= 0 ) {
-                               data = jQuery.parseJSON( data );
-
-                       // If the type is "script", eval it in global context
-                       } else if ( type === "script" || !type && ct.indexOf("javascript") >= 0 ) {
-                               jQuery.globalEval( data );
-                       }
-               }
-
-               return data;
-       }
-
-});
-
-/*
- * Create the request object; Microsoft failed to properly
- * implement the XMLHttpRequest in IE7 (can't request local files),
- * so we use the ActiveXObject when it is available
- * Additionally XMLHttpRequest can be disabled in IE7/IE8 so
- * we need a fallback.
- */
-if ( window.ActiveXObject ) {
-       jQuery.ajaxSettings.xhr = function() {
-               if ( window.location.protocol !== "file:" ) {
-                       try {
-                               return new window.XMLHttpRequest();
-                       } catch(xhrError) {}
-               }
-
-               try {
-                       return new window.ActiveXObject("Microsoft.XMLHTTP");
-               } catch(activeError) {}
-       };
-}
-
-// Does this browser support XHR requests?
-jQuery.support.ajax = !!jQuery.ajaxSettings.xhr();
-
-
-
-
-var elemdisplay = {},
-       rfxtypes = /^(?:toggle|show|hide)$/,
-       rfxnum = /^([+\-]=)?([\d+.\-]+)(.*)$/,
-       timerId,
-       fxAttrs = [
-               // height animations
-               [ "height", "marginTop", "marginBottom", "paddingTop", "paddingBottom" ],
-               // width animations
-               [ "width", "marginLeft", "marginRight", "paddingLeft", "paddingRight" ],
-               // opacity animations
-               [ "opacity" ]
-       ];
-
-jQuery.fn.extend({
-       show: function( speed, easing, callback ) {
-               var elem, display;
-
-               if ( speed || speed === 0 ) {
-                       return this.animate( genFx("show", 3), speed, easing, callback);
-
-               } else {
-                       for ( var i = 0, j = this.length; i < j; i++ ) {
-                               elem = this[i];
-                               display = elem.style.display;
-
-                               // Reset the inline display of this element to learn if it is
-                               // being hidden by cascaded rules or not
-                               if ( !jQuery.data(elem, "olddisplay") && display === "none" ) {
-                                       display = elem.style.display = "";
-                               }
-
-                               // Set elements which have been overridden with display: none
-                               // in a stylesheet to whatever the default browser style is
-                               // for such an element
-                               if ( display === "" && jQuery.css( elem, "display" ) === "none" ) {
-                                       jQuery.data(elem, "olddisplay", defaultDisplay(elem.nodeName));
-                               }
-                       }
-
-                       // Set the display of most of the elements in a second loop
-                       // to avoid the constant reflow
-                       for ( i = 0; i < j; i++ ) {
-                               elem = this[i];
-                               display = elem.style.display;
-
-                               if ( display === "" || display === "none" ) {
-                                       elem.style.display = jQuery.data(elem, "olddisplay") || "";
-                               }
-                       }
-
-                       return this;
-               }
-       },
-
-       hide: function( speed, easing, callback ) {
-               if ( speed || speed === 0 ) {
-                       return this.animate( genFx("hide", 3), speed, easing, callback);
-
-               } else {
-                       for ( var i = 0, j = this.length; i < j; i++ ) {
-                               var display = jQuery.css( this[i], "display" );
-
-                               if ( display !== "none" ) {
-                                       jQuery.data( this[i], "olddisplay", display );
-                               }
-                       }
-
-                       // Set the display of the elements in a second loop
-                       // to avoid the constant reflow
-                       for ( i = 0; i < j; i++ ) {
-                               this[i].style.display = "none";
-                       }
-
-                       return this;
-               }
-       },
-
-       // Save the old toggle function
-       _toggle: jQuery.fn.toggle,
-
-       toggle: function( fn, fn2, callback ) {
-               var bool = typeof fn === "boolean";
-
-               if ( jQuery.isFunction(fn) && jQuery.isFunction(fn2) ) {
-                       this._toggle.apply( this, arguments );
-
-               } else if ( fn == null || bool ) {
-                       this.each(function() {
-                               var state = bool ? fn : jQuery(this).is(":hidden");
-                               jQuery(this)[ state ? "show" : "hide" ]();
-                       });
-
-               } else {
-                       this.animate(genFx("toggle", 3), fn, fn2, callback);
-               }
-
-               return this;
-       },
-
-       fadeTo: function( speed, to, easing, callback ) {
-               return this.filter(":hidden").css("opacity", 0).show().end()
-                                       .animate({opacity: to}, speed, easing, callback);
-       },
-
-       animate: function( prop, speed, easing, callback ) {
-               var optall = jQuery.speed(speed, easing, callback);
-
-               if ( jQuery.isEmptyObject( prop ) ) {
-                       return this.each( optall.complete );
-               }
-
-               return this[ optall.queue === false ? "each" : "queue" ](function() {
-                       // XXX 'this' does not always have a nodeName when running the
-                       // test suite
-
-                       var opt = jQuery.extend({}, optall), p,
-                               isElement = this.nodeType === 1,
-                               hidden = isElement && jQuery(this).is(":hidden"),
-                               self = this;
-
-                       for ( p in prop ) {
-                               var name = jQuery.camelCase( p );
-
-                               if ( p !== name ) {
-                                       prop[ name ] = prop[ p ];
-                                       delete prop[ p ];
-                                       p = name;
-                               }
-
-                               if ( prop[p] === "hide" && hidden || prop[p] === "show" && !hidden ) {
-                                       return opt.complete.call(this);
-                               }
-
-                               if ( isElement && ( p === "height" || p === "width" ) ) {
-                                       // Make sure that nothing sneaks out
-                                       // Record all 3 overflow attributes because IE does not
-                                       // change the overflow attribute when overflowX and
-                                       // overflowY are set to the same value
-                                       opt.overflow = [ this.style.overflow, this.style.overflowX, this.style.overflowY ];
-
-                                       // Set display property to inline-block for height/width
-                                       // animations on inline elements that are having width/height
-                                       // animated
-                                       if ( jQuery.css( this, "display" ) === "inline" &&
-                                                       jQuery.css( this, "float" ) === "none" ) {
-                                               if ( !jQuery.support.inlineBlockNeedsLayout ) {
-                                                       this.style.display = "inline-block";
-
-                                               } else {
-                                                       var display = defaultDisplay(this.nodeName);
-
-                                                       // inline-level elements accept inline-block;
-                                                       // block-level elements need to be inline with layout
-                                                       if ( display === "inline" ) {
-                                                               this.style.display = "inline-block";
-
-                                                       } else {
-                                                               this.style.display = "inline";
-                                                               this.style.zoom = 1;
-                                                       }
-                                               }
-                                       }
-                               }
-
-                               if ( jQuery.isArray( prop[p] ) ) {
-                                       // Create (if needed) and add to specialEasing
-                                       (opt.specialEasing = opt.specialEasing || {})[p] = prop[p][1];
-                                       prop[p] = prop[p][0];
-                               }
-                       }
-
-                       if ( opt.overflow != null ) {
-                               this.style.overflow = "hidden";
-                       }
-
-                       opt.curAnim = jQuery.extend({}, prop);
-
-                       jQuery.each( prop, function( name, val ) {
-                               var e = new jQuery.fx( self, opt, name );
-
-                               if ( rfxtypes.test(val) ) {
-                                       e[ val === "toggle" ? hidden ? "show" : "hide" : val ]( prop );
-
-                               } else {
-                                       var parts = rfxnum.exec(val),
-                                               start = e.cur() || 0;
-
-                                       if ( parts ) {
-                                               var end = parseFloat( parts[2] ),
-                                                       unit = parts[3] || "px";
-
-                                               // We need to compute starting value
-                                               if ( unit !== "px" ) {
-                                                       jQuery.style( self, name, (end || 1) + unit);
-                                                       start = ((end || 1) / e.cur()) * start;
-                                                       jQuery.style( self, name, start + unit);
-                                               }
-
-                                               // If a +=/-= token was provided, we're doing a relative animation
-                                               if ( parts[1] ) {
-                                                       end = ((parts[1] === "-=" ? -1 : 1) * end) + start;
-                                               }
-
-                                               e.custom( start, end, unit );
-
-                                       } else {
-                                               e.custom( start, val, "" );
-                                       }
-                               }
-                       });
-
-                       // For JS strict compliance
-                       return true;
-               });
-       },
-
-       stop: function( clearQueue, gotoEnd ) {
-               var timers = jQuery.timers;
-
-               if ( clearQueue ) {
-                       this.queue([]);
-               }
-
-               this.each(function() {
-                       // go in reverse order so anything added to the queue during the loop is ignored
-                       for ( var i = timers.length - 1; i >= 0; i-- ) {
-                               if ( timers[i].elem === this ) {
-                                       if (gotoEnd) {
-                                               // force the next step to be the last
-                                               timers[i](true);
-                                       }
-
-                                       timers.splice(i, 1);
-                               }
-                       }
-               });
-
-               // start the next in the queue if the last step wasn't forced
-               if ( !gotoEnd ) {
-                       this.dequeue();
-               }
-
-               return this;
-       }
-
-});
-
-function genFx( type, num ) {
-       var obj = {};
-
-       jQuery.each( fxAttrs.concat.apply([], fxAttrs.slice(0,num)), function() {
-               obj[ this ] = type;
-       });
-
-       return obj;
-}
-
-// Generate shortcuts for custom animations
-jQuery.each({
-       slideDown: genFx("show", 1),
-       slideUp: genFx("hide", 1),
-       slideToggle: genFx("toggle", 1),
-       fadeIn: { opacity: "show" },
-       fadeOut: { opacity: "hide" },
-       fadeToggle: { opacity: "toggle" }
-}, function( name, props ) {
-       jQuery.fn[ name ] = function( speed, easing, callback ) {
-               return this.animate( props, speed, easing, callback );
-       };
-});
-
-jQuery.extend({
-       speed: function( speed, easing, fn ) {
-               var opt = speed && typeof speed === "object" ? jQuery.extend({}, speed) : {
-                       complete: fn || !fn && easing ||
-                               jQuery.isFunction( speed ) && speed,
-                       duration: speed,
-                       easing: fn && easing || easing && !jQuery.isFunction(easing) && easing
-               };
-
-               opt.duration = jQuery.fx.off ? 0 : typeof opt.duration === "number" ? opt.duration :
-                       opt.duration in jQuery.fx.speeds ? jQuery.fx.speeds[opt.duration] : jQuery.fx.speeds._default;
-
-               // Queueing
-               opt.old = opt.complete;
-               opt.complete = function() {
-                       if ( opt.queue !== false ) {
-                               jQuery(this).dequeue();
-                       }
-                       if ( jQuery.isFunction( opt.old ) ) {
-                               opt.old.call( this );
-                       }
-               };
-
-               return opt;
-       },
-
-       easing: {
-               linear: function( p, n, firstNum, diff ) {
-                       return firstNum + diff * p;
-               },
-               swing: function( p, n, firstNum, diff ) {
-                       return ((-Math.cos(p*Math.PI)/2) + 0.5) * diff + firstNum;
-               }
-       },
-
-       timers: [],
-
-       fx: function( elem, options, prop ) {
-               this.options = options;
-               this.elem = elem;
-               this.prop = prop;
-
-               if ( !options.orig ) {
-                       options.orig = {};
-               }
-       }
-
-});
-
-jQuery.fx.prototype = {
-       // Simple function for setting a style value
-       update: function() {
-               if ( this.options.step ) {
-                       this.options.step.call( this.elem, this.now, this );
-               }
-
-               (jQuery.fx.step[this.prop] || jQuery.fx.step._default)( this );
-       },
-
-       // Get the current size
-       cur: function() {
-               if ( this.elem[this.prop] != null && (!this.elem.style || this.elem.style[this.prop] == null) ) {
-                       return this.elem[ this.prop ];
-               }
-
-               var r = parseFloat( jQuery.css( this.elem, this.prop ) );
-               return r && r > -10000 ? r : 0;
-       },
-
-       // Start an animation from one number to another
-       custom: function( from, to, unit ) {
-               var self = this,
-                       fx = jQuery.fx;
-
-               this.startTime = jQuery.now();
-               this.start = from;
-               this.end = to;
-               this.unit = unit || this.unit || "px";
-               this.now = this.start;
-               this.pos = this.state = 0;
-
-               function t( gotoEnd ) {
-                       return self.step(gotoEnd);
-               }
-
-               t.elem = this.elem;
-
-               if ( t() && jQuery.timers.push(t) && !timerId ) {
-                       timerId = setInterval(fx.tick, fx.interval);
-               }
-       },
-
-       // Simple 'show' function
-       show: function() {
-               // Remember where we started, so that we can go back to it later
-               this.options.orig[this.prop] = jQuery.style( this.elem, this.prop );
-               this.options.show = true;
-
-               // Begin the animation
-               // Make sure that we start at a small width/height to avoid any
-               // flash of content
-               this.custom(this.prop === "width" || this.prop === "height" ? 1 : 0, this.cur());
-
-               // Start by showing the element
-               jQuery( this.elem ).show();
-       },
-
-       // Simple 'hide' function
-       hide: function() {
-               // Remember where we started, so that we can go back to it later
-               this.options.orig[this.prop] = jQuery.style( this.elem, this.prop );
-               this.options.hide = true;
-
-               // Begin the animation
-               this.custom(this.cur(), 0);
-       },
-
-       // Each step of an animation
-       step: function( gotoEnd ) {
-               var t = jQuery.now(), done = true;
-
-               if ( gotoEnd || t >= this.options.duration + this.startTime ) {
-                       this.now = this.end;
-                       this.pos = this.state = 1;
-                       this.update();
-
-                       this.options.curAnim[ this.prop ] = true;
-
-                       for ( var i in this.options.curAnim ) {
-                               if ( this.options.curAnim[i] !== true ) {
-                                       done = false;
-                               }
-                       }
-
-                       if ( done ) {
-                               // Reset the overflow
-                               if ( this.options.overflow != null && !jQuery.support.shrinkWrapBlocks ) {
-                                       var elem = this.elem,
-                                               options = this.options;
-
-                                       jQuery.each( [ "", "X", "Y" ], function (index, value) {
-                                               elem.style[ "overflow" + value ] = options.overflow[index];
-                                       } );
-                               }
-
-                               // Hide the element if the "hide" operation was done
-                               if ( this.options.hide ) {
-                                       jQuery(this.elem).hide();
-                               }
-
-                               // Reset the properties, if the item has been hidden or shown
-                               if ( this.options.hide || this.options.show ) {
-                                       for ( var p in this.options.curAnim ) {
-                                               jQuery.style( this.elem, p, this.options.orig[p] );
-                                       }
-                               }
-
-                               // Execute the complete function
-                               this.options.complete.call( this.elem );
-                       }
-
-                       return false;
-
-               } else {
-                       var n = t - this.startTime;
-                       this.state = n / this.options.duration;
-
-                       // Perform the easing function, defaults to swing
-                       var specialEasing = this.options.specialEasing && this.options.specialEasing[this.prop];
-                       var defaultEasing = this.options.easing || (jQuery.easing.swing ? "swing" : "linear");
-                       this.pos = jQuery.easing[specialEasing || defaultEasing](this.state, n, 0, 1, this.options.duration);
-                       this.now = this.start + ((this.end - this.start) * this.pos);
-
-                       // Perform the next step of the animation
-                       this.update();
-               }
-
-               return true;
-       }
-};
-
-jQuery.extend( jQuery.fx, {
-       tick: function() {
-               var timers = jQuery.timers;
-
-               for ( var i = 0; i < timers.length; i++ ) {
-                       if ( !timers[i]() ) {
-                               timers.splice(i--, 1);
-                       }
-               }
-
-               if ( !timers.length ) {
-                       jQuery.fx.stop();
-               }
-       },
-
-       interval: 13,
-
-       stop: function() {
-               clearInterval( timerId );
-               timerId = null;
-       },
-
-       speeds: {
-               slow: 600,
-               fast: 200,
-               // Default speed
-               _default: 400
-       },
-
-       step: {
-               opacity: function( fx ) {
-                       jQuery.style( fx.elem, "opacity", fx.now );
-               },
-
-               _default: function( fx ) {
-                       if ( fx.elem.style && fx.elem.style[ fx.prop ] != null ) {
-                               fx.elem.style[ fx.prop ] = (fx.prop === "width" || fx.prop === "height" ? Math.max(0, fx.now) : fx.now) + fx.unit;
-                       } else {
-                               fx.elem[ fx.prop ] = fx.now;
-                       }
-               }
-       }
-});
-
-if ( jQuery.expr && jQuery.expr.filters ) {
-       jQuery.expr.filters.animated = function( elem ) {
-               return jQuery.grep(jQuery.timers, function( fn ) {
-                       return elem === fn.elem;
-               }).length;
-       };
-}
-
-function defaultDisplay( nodeName ) {
-       if ( !elemdisplay[ nodeName ] ) {
-               var elem = jQuery("<" + nodeName + ">").appendTo("body"),
-                       display = elem.css("display");
-
-               elem.remove();
-
-               if ( display === "none" || display === "" ) {
-                       display = "block";
-               }
-
-               elemdisplay[ nodeName ] = display;
-       }
-
-       return elemdisplay[ nodeName ];
-}
-
-
-
-
-var rtable = /^t(?:able|d|h)$/i,
-       rroot = /^(?:body|html)$/i;
-
-if ( "getBoundingClientRect" in document.documentElement ) {
-       jQuery.fn.offset = function( options ) {
-               var elem = this[0], box;
-
-               if ( options ) { 
-                       return this.each(function( i ) {
-                               jQuery.offset.setOffset( this, options, i );
-                       });
-               }
-
-               if ( !elem || !elem.ownerDocument ) {
-                       return null;
-               }
-
-               if ( elem === elem.ownerDocument.body ) {
-                       return jQuery.offset.bodyOffset( elem );
-               }
-
-               try {
-                       box = elem.getBoundingClientRect();
-               } catch(e) {}
-
-               var doc = elem.ownerDocument,
-                       docElem = doc.documentElement;
-
-               // Make sure we're not dealing with a disconnected DOM node
-               if ( !box || !jQuery.contains( docElem, elem ) ) {
-                       return box || { top: 0, left: 0 };
-               }
-
-               var body = doc.body,
-                       win = getWindow(doc),
-                       clientTop  = docElem.clientTop  || body.clientTop  || 0,
-                       clientLeft = docElem.clientLeft || body.clientLeft || 0,
-                       scrollTop  = (win.pageYOffset || jQuery.support.boxModel && docElem.scrollTop  || body.scrollTop ),
-                       scrollLeft = (win.pageXOffset || jQuery.support.boxModel && docElem.scrollLeft || body.scrollLeft),
-                       top  = box.top  + scrollTop  - clientTop,
-                       left = box.left + scrollLeft - clientLeft;
-
-               return { top: top, left: left };
-       };
-
-} else {
-       jQuery.fn.offset = function( options ) {
-               var elem = this[0];
-
-               if ( options ) { 
-                       return this.each(function( i ) {
-                               jQuery.offset.setOffset( this, options, i );
-                       });
-               }
-
-               if ( !elem || !elem.ownerDocument ) {
-                       return null;
-               }
-
-               if ( elem === elem.ownerDocument.body ) {
-                       return jQuery.offset.bodyOffset( elem );
-               }
-
-               jQuery.offset.initialize();
-
-               var computedStyle,
-                       offsetParent = elem.offsetParent,
-                       prevOffsetParent = elem,
-                       doc = elem.ownerDocument,
-                       docElem = doc.documentElement,
-                       body = doc.body,
-                       defaultView = doc.defaultView,
-                       prevComputedStyle = defaultView ? defaultView.getComputedStyle( elem, null ) : elem.currentStyle,
-                       top = elem.offsetTop,
-                       left = elem.offsetLeft;
-
-               while ( (elem = elem.parentNode) && elem !== body && elem !== docElem ) {
-                       if ( jQuery.offset.supportsFixedPosition && prevComputedStyle.position === "fixed" ) {
-                               break;
-                       }
-
-                       computedStyle = defaultView ? defaultView.getComputedStyle(elem, null) : elem.currentStyle;
-                       top  -= elem.scrollTop;
-                       left -= elem.scrollLeft;
-
-                       if ( elem === offsetParent ) {
-                               top  += elem.offsetTop;
-                               left += elem.offsetLeft;
-
-                               if ( jQuery.offset.doesNotAddBorder && !(jQuery.offset.doesAddBorderForTableAndCells && rtable.test(elem.nodeName)) ) {
-                                       top  += parseFloat( computedStyle.borderTopWidth  ) || 0;
-                                       left += parseFloat( computedStyle.borderLeftWidth ) || 0;
-                               }
-
-                               prevOffsetParent = offsetParent;
-                               offsetParent = elem.offsetParent;
-                       }
-
-                       if ( jQuery.offset.subtractsBorderForOverflowNotVisible && computedStyle.overflow !== "visible" ) {
-                               top  += parseFloat( computedStyle.borderTopWidth  ) || 0;
-                               left += parseFloat( computedStyle.borderLeftWidth ) || 0;
-                       }
-
-                       prevComputedStyle = computedStyle;
-               }
-
-               if ( prevComputedStyle.position === "relative" || prevComputedStyle.position === "static" ) {
-                       top  += body.offsetTop;
-                       left += body.offsetLeft;
-               }
-
-               if ( jQuery.offset.supportsFixedPosition && prevComputedStyle.position === "fixed" ) {
-                       top  += Math.max( docElem.scrollTop, body.scrollTop );
-                       left += Math.max( docElem.scrollLeft, body.scrollLeft );
-               }
-
-               return { top: top, left: left };
-       };
-}
-
-jQuery.offset = {
-       initialize: function() {
-               var body = document.body, container = document.createElement("div"), innerDiv, checkDiv, table, td, bodyMarginTop = parseFloat( jQuery.css(body, "marginTop") ) || 0,
-                       html = "<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";
-
-               jQuery.extend( container.style, { position: "absolute", top: 0, left: 0, margin: 0, border: 0, width: "1px", height: "1px", visibility: "hidden" } );
-
-               container.innerHTML = html;
-               body.insertBefore( container, body.firstChild );
-               innerDiv = container.firstChild;
-               checkDiv = innerDiv.firstChild;
-               td = innerDiv.nextSibling.firstChild.firstChild;
-
-               this.doesNotAddBorder = (checkDiv.offsetTop !== 5);
-               this.doesAddBorderForTableAndCells = (td.offsetTop === 5);
-
-               checkDiv.style.position = "fixed";
-               checkDiv.style.top = "20px";
-
-               // safari subtracts parent border width here which is 5px
-               this.supportsFixedPosition = (checkDiv.offsetTop === 20 || checkDiv.offsetTop === 15);
-               checkDiv.style.position = checkDiv.style.top = "";
-
-               innerDiv.style.overflow = "hidden";
-               innerDiv.style.position = "relative";
-
-               this.subtractsBorderForOverflowNotVisible = (checkDiv.offsetTop === -5);
-
-               this.doesNotIncludeMarginInBodyOffset = (body.offsetTop !== bodyMarginTop);
-
-               body.removeChild( container );
-               body = container = innerDiv = checkDiv = table = td = null;
-               jQuery.offset.initialize = jQuery.noop;
-       },
-
-       bodyOffset: function( body ) {
-               var top = body.offsetTop,
-                       left = body.offsetLeft;
-
-               jQuery.offset.initialize();
-
-               if ( jQuery.offset.doesNotIncludeMarginInBodyOffset ) {
-                       top  += parseFloat( jQuery.css(body, "marginTop") ) || 0;
-                       left += parseFloat( jQuery.css(body, "marginLeft") ) || 0;
-               }
-
-               return { top: top, left: left };
-       },
-       
-       setOffset: function( elem, options, i ) {
-               var position = jQuery.css( elem, "position" );
-
-               // set position first, in-case top/left are set even on static elem
-               if ( position === "static" ) {
-                       elem.style.position = "relative";
-               }
-
-               var curElem = jQuery( elem ),
-                       curOffset = curElem.offset(),
-                       curCSSTop = jQuery.css( elem, "top" ),
-                       curCSSLeft = jQuery.css( elem, "left" ),
-                       calculatePosition = (position === "absolute" && jQuery.inArray('auto', [curCSSTop, curCSSLeft]) > -1),
-                       props = {}, curPosition = {}, curTop, curLeft;
-
-               // need to be able to calculate position if either top or left is auto and position is absolute
-               if ( calculatePosition ) {
-                       curPosition = curElem.position();
-               }
-
-               curTop  = calculatePosition ? curPosition.top  : parseInt( curCSSTop,  10 ) || 0;
-               curLeft = calculatePosition ? curPosition.left : parseInt( curCSSLeft, 10 ) || 0;
-
-               if ( jQuery.isFunction( options ) ) {
-                       options = options.call( elem, i, curOffset );
-               }
-
-               if (options.top != null) {
-                       props.top = (options.top - curOffset.top) + curTop;
-               }
-               if (options.left != null) {
-                       props.left = (options.left - curOffset.left) + curLeft;
-               }
-               
-               if ( "using" in options ) {
-                       options.using.call( elem, props );
-               } else {
-                       curElem.css( props );
-               }
-       }
-};
-
-
-jQuery.fn.extend({
-       position: function() {
-               if ( !this[0] ) {
-                       return null;
-               }
-
-               var elem = this[0],
-
-               // Get *real* offsetParent
-               offsetParent = this.offsetParent(),
-
-               // Get correct offsets
-               offset       = this.offset(),
-               parentOffset = rroot.test(offsetParent[0].nodeName) ? { top: 0, left: 0 } : offsetParent.offset();
-
-               // Subtract element margins
-               // note: when an element has margin: auto the offsetLeft and marginLeft
-               // are the same in Safari causing offset.left to incorrectly be 0
-               offset.top  -= parseFloat( jQuery.css(elem, "marginTop") ) || 0;
-               offset.left -= parseFloat( jQuery.css(elem, "marginLeft") ) || 0;
-
-               // Add offsetParent borders
-               parentOffset.top  += parseFloat( jQuery.css(offsetParent[0], "borderTopWidth") ) || 0;
-               parentOffset.left += parseFloat( jQuery.css(offsetParent[0], "borderLeftWidth") ) || 0;
-
-               // Subtract the two offsets
-               return {
-                       top:  offset.top  - parentOffset.top,
-                       left: offset.left - parentOffset.left
-               };
-       },
-
-       offsetParent: function() {
-               return this.map(function() {
-                       var offsetParent = this.offsetParent || document.body;
-                       while ( offsetParent && (!rroot.test(offsetParent.nodeName) && jQuery.css(offsetParent, "position") === "static") ) {
-                               offsetParent = offsetParent.offsetParent;
-                       }
-                       return offsetParent;
-               });
-       }
-});
-
-
-// Create scrollLeft and scrollTop methods
-jQuery.each( ["Left", "Top"], function( i, name ) {
-       var method = "scroll" + name;
-
-       jQuery.fn[ method ] = function(val) {
-               var elem = this[0], win;
-               
-               if ( !elem ) {
-                       return null;
-               }
-
-               if ( val !== undefined ) {
-                       // Set the scroll offset
-                       return this.each(function() {
-                               win = getWindow( this );
-
-                               if ( win ) {
-                                       win.scrollTo(
-                                               !i ? val : jQuery(win).scrollLeft(),
-                                                i ? val : jQuery(win).scrollTop()
-                                       );
-
-                               } else {
-                                       this[ method ] = val;
-                               }
-                       });
-               } else {
-                       win = getWindow( elem );
-
-                       // Return the scroll offset
-                       return win ? ("pageXOffset" in win) ? win[ i ? "pageYOffset" : "pageXOffset" ] :
-                               jQuery.support.boxModel && win.document.documentElement[ method ] ||
-                                       win.document.body[ method ] :
-                               elem[ method ];
-               }
-       };
-});
-
-function getWindow( elem ) {
-       return jQuery.isWindow( elem ) ?
-               elem :
-               elem.nodeType === 9 ?
-                       elem.defaultView || elem.parentWindow :
-                       false;
-}
-
-
-
-
-// Create innerHeight, innerWidth, outerHeight and outerWidth methods
-jQuery.each([ "Height", "Width" ], function( i, name ) {
-
-       var type = name.toLowerCase();
-
-       // innerHeight and innerWidth
-       jQuery.fn["inner" + name] = function() {
-               return this[0] ?
-                       parseFloat( jQuery.css( this[0], type, "padding" ) ) :
-                       null;
-       };
-
-       // outerHeight and outerWidth
-       jQuery.fn["outer" + name] = function( margin ) {
-               return this[0] ?
-                       parseFloat( jQuery.css( this[0], type, margin ? "margin" : "border" ) ) :
-                       null;
-       };
-
-       jQuery.fn[ type ] = function( size ) {
-               // Get window width or height
-               var elem = this[0];
-               if ( !elem ) {
-                       return size == null ? null : this;
-               }
-               
-               if ( jQuery.isFunction( size ) ) {
-                       return this.each(function( i ) {
-                               var self = jQuery( this );
-                               self[ type ]( size.call( this, i, self[ type ]() ) );
-                       });
-               }
-
-               if ( jQuery.isWindow( elem ) ) {
-                       // Everyone else use document.documentElement or document.body depending on Quirks vs Standards mode
-                       return elem.document.compatMode === "CSS1Compat" && elem.document.documentElement[ "client" + name ] ||
-                               elem.document.body[ "client" + name ];
-
-               // Get document width or height
-               } else if ( elem.nodeType === 9 ) {
-                       // Either scroll[Width/Height] or offset[Width/Height], whichever is greater
-                       return Math.max(
-                               elem.documentElement["client" + name],
-                               elem.body["scroll" + name], elem.documentElement["scroll" + name],
-                               elem.body["offset" + name], elem.documentElement["offset" + name]
-                       );
-
-               // Get or set width or height on the element
-               } else if ( size === undefined ) {
-                       var orig = jQuery.css( elem, type ),
-                               ret = parseFloat( orig );
-
-                       return jQuery.isNaN( ret ) ? orig : ret;
-
-               // Set the width or height on the element (default to pixels if value is unitless)
-               } else {
-                       return this.css( type, typeof size === "string" ? size : size + "px" );
-               }
-       };
-
-});
-
-
-})(window);
diff --git a/jquery-1.5.1.js b/jquery-1.5.1.js
new file mode 100644 (file)
index 0000000..78fcfa4
--- /dev/null
@@ -0,0 +1,8316 @@
+/*!
+ * jQuery JavaScript Library v1.5.1
+ * http://jquery.com/
+ *
+ * Copyright 2011, John Resig
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * Includes Sizzle.js
+ * http://sizzlejs.com/
+ * Copyright 2011, The Dojo Foundation
+ * Released under the MIT, BSD, and GPL Licenses.
+ *
+ * Date: Wed Feb 23 13:55:29 2011 -0500
+ */
+(function( window, undefined ) {
+
+// Use the correct document accordingly with window argument (sandbox)
+var document = window.document;
+var jQuery = (function() {
+
+// Define a local copy of jQuery
+var jQuery = function( selector, context ) {
+               // The jQuery object is actually just the init constructor 'enhanced'
+               return new jQuery.fn.init( selector, context, rootjQuery );
+       },
+
+       // Map over jQuery in case of overwrite
+       _jQuery = window.jQuery,
+
+       // Map over the $ in case of overwrite
+       _$ = window.$,
+
+       // A central reference to the root jQuery(document)
+       rootjQuery,
+
+       // A simple way to check for HTML strings or ID strings
+       // (both of which we optimize for)
+       quickExpr = /^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]+)$)/,
+
+       // Check if a string has a non-whitespace character in it
+       rnotwhite = /\S/,
+
+       // Used for trimming whitespace
+       trimLeft = /^\s+/,
+       trimRight = /\s+$/,
+
+       // Check for digits
+       rdigit = /\d/,
+
+       // Match a standalone tag
+       rsingleTag = /^<(\w+)\s*\/?>(?:<\/\1>)?$/,
+
+       // JSON RegExp
+       rvalidchars = /^[\],:{}\s]*$/,
+       rvalidescape = /\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,
+       rvalidtokens = /"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,
+       rvalidbraces = /(?:^|:|,)(?:\s*\[)+/g,
+
+       // Useragent RegExp
+       rwebkit = /(webkit)[ \/]([\w.]+)/,
+       ropera = /(opera)(?:.*version)?[ \/]([\w.]+)/,
+       rmsie = /(msie) ([\w.]+)/,
+       rmozilla = /(mozilla)(?:.*? rv:([\w.]+))?/,
+
+       // Keep a UserAgent string for use with jQuery.browser
+       userAgent = navigator.userAgent,
+
+       // For matching the engine and version of the browser
+       browserMatch,
+
+       // Has the ready events already been bound?
+       readyBound = false,
+
+       // The deferred used on DOM ready
+       readyList,
+
+       // Promise methods
+       promiseMethods = "then done fail isResolved isRejected promise".split( " " ),
+
+       // The ready event handler
+       DOMContentLoaded,
+
+       // Save a reference to some core methods
+       toString = Object.prototype.toString,
+       hasOwn = Object.prototype.hasOwnProperty,
+       push = Array.prototype.push,
+       slice = Array.prototype.slice,
+       trim = String.prototype.trim,
+       indexOf = Array.prototype.indexOf,
+
+       // [[Class]] -> type pairs
+       class2type = {};
+
+jQuery.fn = jQuery.prototype = {
+       constructor: jQuery,
+       init: function( selector, context, rootjQuery ) {
+               var match, elem, ret, doc;
+
+               // Handle $(""), $(null), or $(undefined)
+               if ( !selector ) {
+                       return this;
+               }
+
+               // Handle $(DOMElement)
+               if ( selector.nodeType ) {
+                       this.context = this[0] = selector;
+                       this.length = 1;
+                       return this;
+               }
+
+               // The body element only exists once, optimize finding it
+               if ( selector === "body" && !context && document.body ) {
+                       this.context = document;
+                       this[0] = document.body;
+                       this.selector = "body";
+                       this.length = 1;
+                       return this;
+               }
+
+               // Handle HTML strings
+               if ( typeof selector === "string" ) {
+                       // Are we dealing with HTML string or an ID?
+                       match = quickExpr.exec( selector );
+
+                       // Verify a match, and that no context was specified for #id
+                       if ( match && (match[1] || !context) ) {
+
+                               // HANDLE: $(html) -> $(array)
+                               if ( match[1] ) {
+                                       context = context instanceof jQuery ? context[0] : context;
+                                       doc = (context ? context.ownerDocument || context : document);
+
+                                       // If a single string is passed in and it's a single tag
+                                       // just do a createElement and skip the rest
+                                       ret = rsingleTag.exec( selector );
+
+                                       if ( ret ) {
+                                               if ( jQuery.isPlainObject( context ) ) {
+                                                       selector = [ document.createElement( ret[1] ) ];
+                                                       jQuery.fn.attr.call( selector, context, true );
+
+                                               } else {
+                                                       selector = [ doc.createElement( ret[1] ) ];
+                                               }
+
+                                       } else {
+                                               ret = jQuery.buildFragment( [ match[1] ], [ doc ] );
+                                               selector = (ret.cacheable ? jQuery.clone(ret.fragment) : ret.fragment).childNodes;
+                                       }
+
+                                       return jQuery.merge( this, selector );
+
+                               // HANDLE: $("#id")
+                               } else {
+                                       elem = document.getElementById( match[2] );
+
+                                       // Check parentNode to catch when Blackberry 4.6 returns
+                                       // nodes that are no longer in the document #6963
+                                       if ( elem && elem.parentNode ) {
+                                               // Handle the case where IE and Opera return items
+                                               // by name instead of ID
+                                               if ( elem.id !== match[2] ) {
+                                                       return rootjQuery.find( selector );
+                                               }
+
+                                               // Otherwise, we inject the element directly into the jQuery object
+                                               this.length = 1;
+                                               this[0] = elem;
+                                       }
+
+                                       this.context = document;
+                                       this.selector = selector;
+                                       return this;
+                               }
+
+                       // HANDLE: $(expr, $(...))
+                       } else if ( !context || context.jquery ) {
+                               return (context || rootjQuery).find( selector );
+
+                       // HANDLE: $(expr, context)
+                       // (which is just equivalent to: $(context).find(expr)
+                       } else {
+                               return this.constructor( context ).find( selector );
+                       }
+
+               // HANDLE: $(function)
+               // Shortcut for document ready
+               } else if ( jQuery.isFunction( selector ) ) {
+                       return rootjQuery.ready( selector );
+               }
+
+               if (selector.selector !== undefined) {
+                       this.selector = selector.selector;
+                       this.context = selector.context;
+               }
+
+               return jQuery.makeArray( selector, this );
+       },
+
+       // Start with an empty selector
+       selector: "",
+
+       // The current version of jQuery being used
+       jquery: "1.5.1",
+
+       // The default length of a jQuery object is 0
+       length: 0,
+
+       // The number of elements contained in the matched element set
+       size: function() {
+               return this.length;
+       },
+
+       toArray: function() {
+               return slice.call( this, 0 );
+       },
+
+       // Get the Nth element in the matched element set OR
+       // Get the whole matched element set as a clean array
+       get: function( num ) {
+               return num == null ?
+
+                       // Return a 'clean' array
+                       this.toArray() :
+
+                       // Return just the object
+                       ( num < 0 ? this[ this.length + num ] : this[ num ] );
+       },
+
+       // Take an array of elements and push it onto the stack
+       // (returning the new matched element set)
+       pushStack: function( elems, name, selector ) {
+               // Build a new jQuery matched element set
+               var ret = this.constructor();
+
+               if ( jQuery.isArray( elems ) ) {
+                       push.apply( ret, elems );
+
+               } else {
+                       jQuery.merge( ret, elems );
+               }
+
+               // Add the old object onto the stack (as a reference)
+               ret.prevObject = this;
+
+               ret.context = this.context;
+
+               if ( name === "find" ) {
+                       ret.selector = this.selector + (this.selector ? " " : "") + selector;
+               } else if ( name ) {
+                       ret.selector = this.selector + "." + name + "(" + selector + ")";
+               }
+
+               // Return the newly-formed element set
+               return ret;
+       },
+
+       // Execute a callback for every element in the matched set.
+       // (You can seed the arguments with an array of args, but this is
+       // only used internally.)
+       each: function( callback, args ) {
+               return jQuery.each( this, callback, args );
+       },
+
+       ready: function( fn ) {
+               // Attach the listeners
+               jQuery.bindReady();
+
+               // Add the callback
+               readyList.done( fn );
+
+               return this;
+       },
+
+       eq: function( i ) {
+               return i === -1 ?
+                       this.slice( i ) :
+                       this.slice( i, +i + 1 );
+       },
+
+       first: function() {
+               return this.eq( 0 );
+       },
+
+       last: function() {
+               return this.eq( -1 );
+       },
+
+       slice: function() {
+               return this.pushStack( slice.apply( this, arguments ),
+                       "slice", slice.call(arguments).join(",") );
+       },
+
+       map: function( callback ) {
+               return this.pushStack( jQuery.map(this, function( elem, i ) {
+                       return callback.call( elem, i, elem );
+               }));
+       },
+
+       end: function() {
+               return this.prevObject || this.constructor(null);
+       },
+
+       // For internal use only.
+       // Behaves like an Array's method, not like a jQuery method.
+       push: push,
+       sort: [].sort,
+       splice: [].splice
+};
+
+// Give the init function the jQuery prototype for later instantiation
+jQuery.fn.init.prototype = jQuery.fn;
+
+jQuery.extend = jQuery.fn.extend = function() {
+       var options, name, src, copy, copyIsArray, clone,
+               target = arguments[0] || {},
+               i = 1,
+               length = arguments.length,
+               deep = false;
+
+       // Handle a deep copy situation
+       if ( typeof target === "boolean" ) {
+               deep = target;
+               target = arguments[1] || {};
+               // skip the boolean and the target
+               i = 2;
+       }
+
+       // Handle case when target is a string or something (possible in deep copy)
+       if ( typeof target !== "object" && !jQuery.isFunction(target) ) {
+               target = {};
+       }
+
+       // extend jQuery itself if only one argument is passed
+       if ( length === i ) {
+               target = this;
+               --i;
+       }
+
+       for ( ; i < length; i++ ) {
+               // Only deal with non-null/undefined values
+               if ( (options = arguments[ i ]) != null ) {
+                       // Extend the base object
+                       for ( name in options ) {
+                               src = target[ name ];
+                               copy = options[ name ];
+
+                               // Prevent never-ending loop
+                               if ( target === copy ) {
+                                       continue;
+                               }
+
+                               // Recurse if we're merging plain objects or arrays
+                               if ( deep && copy && ( jQuery.isPlainObject(copy) || (copyIsArray = jQuery.isArray(copy)) ) ) {
+                                       if ( copyIsArray ) {
+                                               copyIsArray = false;
+                                               clone = src && jQuery.isArray(src) ? src : [];
+
+                                       } else {
+                                               clone = src && jQuery.isPlainObject(src) ? src : {};
+                                       }
+
+                                       // Never move original objects, clone them
+                                       target[ name ] = jQuery.extend( deep, clone, copy );
+
+                               // Don't bring in undefined values
+                               } else if ( copy !== undefined ) {
+                                       target[ name ] = copy;
+                               }
+                       }
+               }
+       }
+
+       // Return the modified object
+       return target;
+};
+
+jQuery.extend({
+       noConflict: function( deep ) {
+               window.$ = _$;
+
+               if ( deep ) {
+                       window.jQuery = _jQuery;
+               }
+
+               return jQuery;
+       },
+
+       // Is the DOM ready to be used? Set to true once it occurs.
+       isReady: false,
+
+       // A counter to track how many items to wait for before
+       // the ready event fires. See #6781
+       readyWait: 1,
+
+       // Handle when the DOM is ready
+       ready: function( wait ) {
+               // A third-party is pushing the ready event forwards
+               if ( wait === true ) {
+                       jQuery.readyWait--;
+               }
+
+               // Make sure that the DOM is not already loaded
+               if ( !jQuery.readyWait || (wait !== true && !jQuery.isReady) ) {
+                       // Make sure body exists, at least, in case IE gets a little overzealous (ticket #5443).
+                       if ( !document.body ) {
+                               return setTimeout( jQuery.ready, 1 );
+                       }
+
+                       // Remember that the DOM is ready
+                       jQuery.isReady = true;
+
+                       // If a normal DOM Ready event fired, decrement, and wait if need be
+                       if ( wait !== true && --jQuery.readyWait > 0 ) {
+                               return;
+                       }
+
+                       // If there are functions bound, to execute
+                       readyList.resolveWith( document, [ jQuery ] );
+
+                       // Trigger any bound ready events
+                       if ( jQuery.fn.trigger ) {
+                               jQuery( document ).trigger( "ready" ).unbind( "ready" );
+                       }
+               }
+       },
+
+       bindReady: function() {
+               if ( readyBound ) {
+                       return;
+               }
+
+               readyBound = true;
+
+               // Catch cases where $(document).ready() is called after the
+               // browser event has already occurred.
+               if ( document.readyState === "complete" ) {
+                       // Handle it asynchronously to allow scripts the opportunity to delay ready
+                       return setTimeout( jQuery.ready, 1 );
+               }
+
+               // Mozilla, Opera and webkit nightlies currently support this event
+               if ( document.addEventListener ) {
+                       // Use the handy event callback
+                       document.addEventListener( "DOMContentLoaded", DOMContentLoaded, false );
+
+                       // A fallback to window.onload, that will always work
+                       window.addEventListener( "load", jQuery.ready, false );
+
+               // If IE event model is used
+               } else if ( document.attachEvent ) {
+                       // ensure firing before onload,
+                       // maybe late but safe also for iframes
+                       document.attachEvent("onreadystatechange", DOMContentLoaded);
+
+                       // A fallback to window.onload, that will always work
+                       window.attachEvent( "onload", jQuery.ready );
+
+                       // If IE and not a frame
+                       // continually check to see if the document is ready
+                       var toplevel = false;
+
+                       try {
+                               toplevel = window.frameElement == null;
+                       } catch(e) {}
+
+                       if ( document.documentElement.doScroll && toplevel ) {
+                               doScrollCheck();
+                       }
+               }
+       },
+
+       // See test/unit/core.js for details concerning isFunction.
+       // Since version 1.3, DOM methods and functions like alert
+       // aren't supported. They return false on IE (#2968).
+       isFunction: function( obj ) {
+               return jQuery.type(obj) === "function";
+       },
+
+       isArray: Array.isArray || function( obj ) {
+               return jQuery.type(obj) === "array";
+       },
+
+       // A crude way of determining if an object is a window
+       isWindow: function( obj ) {
+               return obj && typeof obj === "object" && "setInterval" in obj;
+       },
+
+       isNaN: function( obj ) {
+               return obj == null || !rdigit.test( obj ) || isNaN( obj );
+       },
+
+       type: function( obj ) {
+               return obj == null ?
+                       String( obj ) :
+                       class2type[ toString.call(obj) ] || "object";
+       },
+
+       isPlainObject: function( obj ) {
+               // Must be an Object.
+               // Because of IE, we also have to check the presence of the constructor property.
+               // Make sure that DOM nodes and window objects don't pass through, as well
+               if ( !obj || jQuery.type(obj) !== "object" || obj.nodeType || jQuery.isWindow( obj ) ) {
+                       return false;
+               }
+
+               // Not own constructor property must be Object
+               if ( obj.constructor &&
+                       !hasOwn.call(obj, "constructor") &&
+                       !hasOwn.call(obj.constructor.prototype, "isPrototypeOf") ) {
+                       return false;
+               }
+
+               // Own properties are enumerated firstly, so to speed up,
+               // if last one is own, then all properties are own.
+
+               var key;
+               for ( key in obj ) {}
+
+               return key === undefined || hasOwn.call( obj, key );
+       },
+
+       isEmptyObject: function( obj ) {
+               for ( var name in obj ) {
+                       return false;
+               }
+               return true;
+       },
+
+       error: function( msg ) {
+               throw msg;
+       },
+
+       parseJSON: function( data ) {
+               if ( typeof data !== "string" || !data ) {
+                       return null;
+               }
+
+               // Make sure leading/trailing whitespace is removed (IE can't handle it)
+               data = jQuery.trim( data );
+
+               // Make sure the incoming data is actual JSON
+               // Logic borrowed from http://json.org/json2.js
+               if ( rvalidchars.test(data.replace(rvalidescape, "@")
+                       .replace(rvalidtokens, "]")
+                       .replace(rvalidbraces, "")) ) {
+
+                       // Try to use the native JSON parser first
+                       return window.JSON && window.JSON.parse ?
+                               window.JSON.parse( data ) :
+                               (new Function("return " + data))();
+
+               } else {
+                       jQuery.error( "Invalid JSON: " + data );
+               }
+       },
+
+       // Cross-browser xml parsing
+       // (xml & tmp used internally)
+       parseXML: function( data , xml , tmp ) {
+
+               if ( window.DOMParser ) { // Standard
+                       tmp = new DOMParser();
+                       xml = tmp.parseFromString( data , "text/xml" );
+               } else { // IE
+                       xml = new ActiveXObject( "Microsoft.XMLDOM" );
+                       xml.async = "false";
+                       xml.loadXML( data );
+               }
+
+               tmp = xml.documentElement;
+
+               if ( ! tmp || ! tmp.nodeName || tmp.nodeName === "parsererror" ) {
+                       jQuery.error( "Invalid XML: " + data );
+               }
+
+               return xml;
+       },
+
+       noop: function() {},
+
+       // Evalulates a script in a global context
+       globalEval: function( data ) {
+               if ( data && rnotwhite.test(data) ) {
+                       // Inspired by code by Andrea Giammarchi
+                       // http://webreflection.blogspot.com/2007/08/global-scope-evaluation-and-dom.html
+                       var head = document.head || document.getElementsByTagName( "head" )[0] || document.documentElement,
+                               script = document.createElement( "script" );
+
+                       if ( jQuery.support.scriptEval() ) {
+                               script.appendChild( document.createTextNode( data ) );
+                       } else {
+                               script.text = data;
+                       }
+
+                       // Use insertBefore instead of appendChild to circumvent an IE6 bug.
+                       // This arises when a base node is used (#2709).
+                       head.insertBefore( script, head.firstChild );
+                       head.removeChild( script );
+               }
+       },
+
+       nodeName: function( elem, name ) {
+               return elem.nodeName && elem.nodeName.toUpperCase() === name.toUpperCase();
+       },
+
+       // args is for internal usage only
+       each: function( object, callback, args ) {
+               var name, i = 0,
+                       length = object.length,
+                       isObj = length === undefined || jQuery.isFunction(object);
+
+               if ( args ) {
+                       if ( isObj ) {
+                               for ( name in object ) {
+                                       if ( callback.apply( object[ name ], args ) === false ) {
+                                               break;
+                                       }
+                               }
+                       } else {
+                               for ( ; i < length; ) {
+                                       if ( callback.apply( object[ i++ ], args ) === false ) {
+                                               break;
+                                       }
+                               }
+                       }
+
+               // A special, fast, case for the most common use of each
+               } else {
+                       if ( isObj ) {
+                               for ( name in object ) {
+                                       if ( callback.call( object[ name ], name, object[ name ] ) === false ) {
+                                               break;
+                                       }
+                               }
+                       } else {
+                               for ( var value = object[0];
+                                       i < length && callback.call( value, i, value ) !== false; value = object[++i] ) {}
+                       }
+               }
+
+               return object;
+       },
+
+       // Use native String.trim function wherever possible
+       trim: trim ?
+               function( text ) {
+                       return text == null ?
+                               "" :
+                               trim.call( text );
+               } :
+
+               // Otherwise use our own trimming functionality
+               function( text ) {
+                       return text == null ?
+                               "" :
+                               text.toString().replace( trimLeft, "" ).replace( trimRight, "" );
+               },
+
+       // results is for internal usage only
+       makeArray: function( array, results ) {
+               var ret = results || [];
+
+               if ( array != null ) {
+                       // The window, strings (and functions) also have 'length'
+                       // The extra typeof function check is to prevent crashes
+                       // in Safari 2 (See: #3039)
+                       // Tweaked logic slightly to handle Blackberry 4.7 RegExp issues #6930
+                       var type = jQuery.type(array);
+
+                       if ( array.length == null || type === "string" || type === "function" || type === "regexp" || jQuery.isWindow( array ) ) {
+                               push.call( ret, array );
+                       } else {
+                               jQuery.merge( ret, array );
+                       }
+               }
+
+               return ret;
+       },
+
+       inArray: function( elem, array ) {
+               if ( array.indexOf ) {
+                       return array.indexOf( elem );
+               }
+
+               for ( var i = 0, length = array.length; i < length; i++ ) {
+                       if ( array[ i ] === elem ) {
+                               return i;
+                       }
+               }
+
+               return -1;
+       },
+
+       merge: function( first, second ) {
+               var i = first.length,
+                       j = 0;
+
+               if ( typeof second.length === "number" ) {
+                       for ( var l = second.length; j < l; j++ ) {
+                               first[ i++ ] = second[ j ];
+                       }
+
+               } else {
+                       while ( second[j] !== undefined ) {
+                               first[ i++ ] = second[ j++ ];
+                       }
+               }
+
+               first.length = i;
+
+               return first;
+       },
+
+       grep: function( elems, callback, inv ) {
+               var ret = [], retVal;
+               inv = !!inv;
+
+               // Go through the array, only saving the items
+               // that pass the validator function
+               for ( var i = 0, length = elems.length; i < length; i++ ) {
+                       retVal = !!callback( elems[ i ], i );
+                       if ( inv !== retVal ) {
+                               ret.push( elems[ i ] );
+                       }
+               }
+
+               return ret;
+       },
+
+       // arg is for internal usage only
+       map: function( elems, callback, arg ) {
+               var ret = [], value;
+
+               // Go through the array, translating each of the items to their
+               // new value (or values).
+               for ( var i = 0, length = elems.length; i < length; i++ ) {
+                       value = callback( elems[ i ], i, arg );
+
+                       if ( value != null ) {
+                               ret[ ret.length ] = value;
+                       }
+               }
+
+               // Flatten any nested arrays
+               return ret.concat.apply( [], ret );
+       },
+
+       // A global GUID counter for objects
+       guid: 1,
+
+       proxy: function( fn, proxy, thisObject ) {
+               if ( arguments.length === 2 ) {
+                       if ( typeof proxy === "string" ) {
+                               thisObject = fn;
+                               fn = thisObject[ proxy ];
+                               proxy = undefined;
+
+                       } else if ( proxy && !jQuery.isFunction( proxy ) ) {
+                               thisObject = proxy;
+                               proxy = undefined;
+                       }
+               }
+
+               if ( !proxy && fn ) {
+                       proxy = function() {
+                               return fn.apply( thisObject || this, arguments );
+                       };
+               }
+
+               // Set the guid of unique handler to the same of original handler, so it can be removed
+               if ( fn ) {
+                       proxy.guid = fn.guid = fn.guid || proxy.guid || jQuery.guid++;
+               }
+
+               // So proxy can be declared as an argument
+               return proxy;
+       },
+
+       // Mutifunctional method to get and set values to a collection
+       // The value/s can be optionally by executed if its a function
+       access: function( elems, key, value, exec, fn, pass ) {
+               var length = elems.length;
+
+               // Setting many attributes
+               if ( typeof key === "object" ) {
+                       for ( var k in key ) {
+                               jQuery.access( elems, k, key[k], exec, fn, value );
+                       }
+                       return elems;
+               }
+
+               // Setting one attribute
+               if ( value !== undefined ) {
+                       // Optionally, function values get executed if exec is true
+                       exec = !pass && exec && jQuery.isFunction(value);
+
+                       for ( var i = 0; i < length; i++ ) {
+                               fn( elems[i], key, exec ? value.call( elems[i], i, fn( elems[i], key ) ) : value, pass );
+                       }
+
+                       return elems;
+               }
+
+               // Getting an attribute
+               return length ? fn( elems[0], key ) : undefined;
+       },
+
+       now: function() {
+               return (new Date()).getTime();
+       },
+
+       // Create a simple deferred (one callbacks list)
+       _Deferred: function() {
+               var // callbacks list
+                       callbacks = [],
+                       // stored [ context , args ]
+                       fired,
+                       // to avoid firing when already doing so
+                       firing,
+                       // flag to know if the deferred has been cancelled
+                       cancelled,
+                       // the deferred itself
+                       deferred  = {
+
+                               // done( f1, f2, ...)
+                               done: function() {
+                                       if ( !cancelled ) {
+                                               var args = arguments,
+                                                       i,
+                                                       length,
+                                                       elem,
+                                                       type,
+                                                       _fired;
+                                               if ( fired ) {
+                                                       _fired = fired;
+                                                       fired = 0;
+                                               }
+                                               for ( i = 0, length = args.length; i < length; i++ ) {
+                                                       elem = args[ i ];
+                                                       type = jQuery.type( elem );
+                                                       if ( type === "array" ) {
+                                                               deferred.done.apply( deferred, elem );
+                                                       } else if ( type === "function" ) {
+                                                               callbacks.push( elem );
+                                                       }
+                                               }
+                                               if ( _fired ) {
+                                                       deferred.resolveWith( _fired[ 0 ], _fired[ 1 ] );
+                                               }
+                                       }
+                                       return this;
+                               },
+
+                               // resolve with given context and args
+                               resolveWith: function( context, args ) {
+                                       if ( !cancelled && !fired && !firing ) {
+                                               firing = 1;
+                                               try {
+                                                       while( callbacks[ 0 ] ) {
+                                                               callbacks.shift().apply( context, args );
+                                                       }
+                                               }
+                                               // We have to add a catch block for
+                                               // IE prior to 8 or else the finally
+                                               // block will never get executed
+                                               catch (e) {
+                                                       throw e;
+                                               }
+                                               finally {
+                                                       fired = [ context, args ];
+                                                       firing = 0;
+                                               }
+                                       }
+                                       return this;
+                               },
+
+                               // resolve with this as context and given arguments
+                               resolve: function() {
+                                       deferred.resolveWith( jQuery.isFunction( this.promise ) ? this.promise() : this, arguments );
+                                       return this;
+                               },
+
+                               // Has this deferred been resolved?
+                               isResolved: function() {
+                                       return !!( firing || fired );
+                               },
+
+                               // Cancel
+                               cancel: function() {
+                                       cancelled = 1;
+                                       callbacks = [];
+                                       return this;
+                               }
+                       };
+
+               return deferred;
+       },
+
+       // Full fledged deferred (two callbacks list)
+       Deferred: function( func ) {
+               var deferred = jQuery._Deferred(),
+                       failDeferred = jQuery._Deferred(),
+                       promise;
+               // Add errorDeferred methods, then and promise
+               jQuery.extend( deferred, {
+                       then: function( doneCallbacks, failCallbacks ) {
+                               deferred.done( doneCallbacks ).fail( failCallbacks );
+                               return this;
+                       },
+                       fail: failDeferred.done,
+                       rejectWith: failDeferred.resolveWith,
+                       reject: failDeferred.resolve,
+                       isRejected: failDeferred.isResolved,
+                       // Get a promise for this deferred
+                       // If obj is provided, the promise aspect is added to the object
+                       promise: function( obj ) {
+                               if ( obj == null ) {
+                                       if ( promise ) {
+                                               return promise;
+                                       }
+                                       promise = obj = {};
+                               }
+                               var i = promiseMethods.length;
+                               while( i-- ) {
+                                       obj[ promiseMethods[i] ] = deferred[ promiseMethods[i] ];
+                               }
+                               return obj;
+                       }
+               } );
+               // Make sure only one callback list will be used
+               deferred.done( failDeferred.cancel ).fail( deferred.cancel );
+               // Unexpose cancel
+               delete deferred.cancel;
+               // Call given func if any
+               if ( func ) {
+                       func.call( deferred, deferred );
+               }
+               return deferred;
+       },
+
+       // Deferred helper
+       when: function( object ) {
+               var lastIndex = arguments.length,
+                       deferred = lastIndex <= 1 && object && jQuery.isFunction( object.promise ) ?
+                               object :
+                               jQuery.Deferred(),
+                       promise = deferred.promise();
+
+               if ( lastIndex > 1 ) {
+                       var array = slice.call( arguments, 0 ),
+                               count = lastIndex,
+                               iCallback = function( index ) {
+                                       return function( value ) {
+                                               array[ index ] = arguments.length > 1 ? slice.call( arguments, 0 ) : value;
+                                               if ( !( --count ) ) {
+                                                       deferred.resolveWith( promise, array );
+                                               }
+                                       };
+                               };
+                       while( ( lastIndex-- ) ) {
+                               object = array[ lastIndex ];
+                               if ( object && jQuery.isFunction( object.promise ) ) {
+                                       object.promise().then( iCallback(lastIndex), deferred.reject );
+                               } else {
+                                       --count;
+                               }
+                       }
+                       if ( !count ) {
+                               deferred.resolveWith( promise, array );
+                       }
+               } else if ( deferred !== object ) {
+                       deferred.resolve( object );
+               }
+               return promise;
+       },
+
+       // Use of jQuery.browser is frowned upon.
+       // More details: http://docs.jquery.com/Utilities/jQuery.browser
+       uaMatch: function( ua ) {
+               ua = ua.toLowerCase();
+
+               var match = rwebkit.exec( ua ) ||
+                       ropera.exec( ua ) ||
+                       rmsie.exec( ua ) ||
+                       ua.indexOf("compatible") < 0 && rmozilla.exec( ua ) ||
+                       [];
+
+               return { browser: match[1] || "", version: match[2] || "0" };
+       },
+
+       sub: function() {
+               function jQuerySubclass( selector, context ) {
+                       return new jQuerySubclass.fn.init( selector, context );
+               }
+               jQuery.extend( true, jQuerySubclass, this );
+               jQuerySubclass.superclass = this;
+               jQuerySubclass.fn = jQuerySubclass.prototype = this();
+               jQuerySubclass.fn.constructor = jQuerySubclass;
+               jQuerySubclass.subclass = this.subclass;
+               jQuerySubclass.fn.init = function init( selector, context ) {
+                       if ( context && context instanceof jQuery && !(context instanceof jQuerySubclass) ) {
+                               context = jQuerySubclass(context);
+                       }
+
+                       return jQuery.fn.init.call( this, selector, context, rootjQuerySubclass );
+               };
+               jQuerySubclass.fn.init.prototype = jQuerySubclass.fn;
+               var rootjQuerySubclass = jQuerySubclass(document);
+               return jQuerySubclass;
+       },
+
+       browser: {}
+});
+
+// Create readyList deferred
+readyList = jQuery._Deferred();
+
+// Populate the class2type map
+jQuery.each("Boolean Number String Function Array Date RegExp Object".split(" "), function(i, name) {
+       class2type[ "[object " + name + "]" ] = name.toLowerCase();
+});
+
+browserMatch = jQuery.uaMatch( userAgent );
+if ( browserMatch.browser ) {
+       jQuery.browser[ browserMatch.browser ] = true;
+       jQuery.browser.version = browserMatch.version;
+}
+
+// Deprecated, use jQuery.browser.webkit instead
+if ( jQuery.browser.webkit ) {
+       jQuery.browser.safari = true;
+}
+
+if ( indexOf ) {
+       jQuery.inArray = function( elem, array ) {
+               return indexOf.call( array, elem );
+       };
+}
+
+// IE doesn't match non-breaking spaces with \s
+if ( rnotwhite.test( "\xA0" ) ) {
+       trimLeft = /^[\s\xA0]+/;
+       trimRight = /[\s\xA0]+$/;
+}
+
+// All jQuery objects should point back to these
+rootjQuery = jQuery(document);
+
+// Cleanup functions for the document ready method
+if ( document.addEventListener ) {
+       DOMContentLoaded = function() {
+               document.removeEventListener( "DOMContentLoaded", DOMContentLoaded, false );
+               jQuery.ready();
+       };
+
+} else if ( document.attachEvent ) {
+       DOMContentLoaded = function() {
+               // Make sure body exists, at least, in case IE gets a little overzealous (ticket #5443).
+               if ( document.readyState === "complete" ) {
+                       document.detachEvent( "onreadystatechange", DOMContentLoaded );
+                       jQuery.ready();
+               }
+       };
+}
+
+// The DOM ready check for Internet Explorer
+function doScrollCheck() {
+       if ( jQuery.isReady ) {
+               return;
+       }
+
+       try {
+               // If IE is used, use the trick by Diego Perini
+               // http://javascript.nwbox.com/IEContentLoaded/
+               document.documentElement.doScroll("left");
+       } catch(e) {
+               setTimeout( doScrollCheck, 1 );
+               return;
+       }
+
+       // and execute any waiting functions
+       jQuery.ready();
+}
+
+// Expose jQuery to the global object
+return jQuery;
+
+})();
+
+
+(function() {
+
+       jQuery.support = {};
+
+       var div = document.createElement("div");
+
+       div.style.display = "none";
+       div.innerHTML = "   <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";
+
+       var all = div.getElementsByTagName("*"),
+               a = div.getElementsByTagName("a")[0],
+               select = document.createElement("select"),
+               opt = select.appendChild( document.createElement("option") ),
+               input = div.getElementsByTagName("input")[0];
+
+       // Can't get basic test support
+       if ( !all || !all.length || !a ) {
+               return;
+       }
+
+       jQuery.support = {
+               // IE strips leading whitespace when .innerHTML is used
+               leadingWhitespace: div.firstChild.nodeType === 3,
+
+               // Make sure that tbody elements aren't automatically inserted
+               // IE will insert them into empty tables
+               tbody: !div.getElementsByTagName("tbody").length,
+
+               // Make sure that link elements get serialized correctly by innerHTML
+               // This requires a wrapper element in IE
+               htmlSerialize: !!div.getElementsByTagName("link").length,
+
+               // Get the style information from getAttribute
+               // (IE uses .cssText insted)
+               style: /red/.test( a.getAttribute("style") ),
+
+               // Make sure that URLs aren't manipulated
+               // (IE normalizes it by default)
+               hrefNormalized: a.getAttribute("href") === "/a",
+
+               // Make sure that element opacity exists
+               // (IE uses filter instead)
+               // Use a regex to work around a WebKit issue. See #5145
+               opacity: /^0.55$/.test( a.style.opacity ),
+
+               // Verify style float existence
+               // (IE uses styleFloat instead of cssFloat)
+               cssFloat: !!a.style.cssFloat,
+
+               // Make sure that if no value is specified for a checkbox
+               // that it defaults to "on".
+               // (WebKit defaults to "" instead)
+               checkOn: input.value === "on",
+
+               // Make sure that a selected-by-default option has a working selected property.
+               // (WebKit defaults to false instead of true, IE too, if it's in an optgroup)
+               optSelected: opt.selected,
+
+               // Will be defined later
+               deleteExpando: true,
+               optDisabled: false,
+               checkClone: false,
+               noCloneEvent: true,
+               noCloneChecked: true,
+               boxModel: null,
+               inlineBlockNeedsLayout: false,
+               shrinkWrapBlocks: false,
+               reliableHiddenOffsets: true
+       };
+
+       input.checked = true;
+       jQuery.support.noCloneChecked = input.cloneNode( true ).checked;
+
+       // Make sure that the options inside disabled selects aren't marked as disabled
+       // (WebKit marks them as diabled)
+       select.disabled = true;
+       jQuery.support.optDisabled = !opt.disabled;
+
+       var _scriptEval = null;
+       jQuery.support.scriptEval = function() {
+               if ( _scriptEval === null ) {
+                       var root = document.documentElement,
+                               script = document.createElement("script"),
+                               id = "script" + jQuery.now();
+
+                       try {
+                               script.appendChild( document.createTextNode( "window." + id + "=1;" ) );
+                       } catch(e) {}
+
+                       root.insertBefore( script, root.firstChild );
+
+                       // Make sure that the execution of code works by injecting a script
+                       // tag with appendChild/createTextNode
+                       // (IE doesn't support this, fails, and uses .text instead)
+                       if ( window[ id ] ) {
+                               _scriptEval = true;
+                               delete window[ id ];
+                       } else {
+                               _scriptEval = false;
+                       }
+
+                       root.removeChild( script );
+                       // release memory in IE
+                       root = script = id  = null;
+               }
+
+               return _scriptEval;
+       };
+
+       // Test to see if it's possible to delete an expando from an element
+       // Fails in Internet Explorer
+       try {
+               delete div.test;
+
+       } catch(e) {
+               jQuery.support.deleteExpando = false;
+       }
+
+       if ( !div.addEventListener && div.attachEvent && div.fireEvent ) {
+               div.attachEvent("onclick", function click() {
+                       // Cloning a node shouldn't copy over any
+                       // bound event handlers (IE does this)
+                       jQuery.support.noCloneEvent = false;
+                       div.detachEvent("onclick", click);
+               });
+               div.cloneNode(true).fireEvent("onclick");
+       }
+
+       div = document.createElement("div");
+       div.innerHTML = "<input type='radio' name='radiotest' checked='checked'/>";
+
+       var fragment = document.createDocumentFragment();
+       fragment.appendChild( div.firstChild );
+
+       // WebKit doesn't clone checked state correctly in fragments
+       jQuery.support.checkClone = fragment.cloneNode(true).cloneNode(true).lastChild.checked;
+
+       // Figure out if the W3C box model works as expected
+       // document.body must exist before we can do this
+       jQuery(function() {
+               var div = document.createElement("div"),
+                       body = document.getElementsByTagName("body")[0];
+
+               // Frameset documents with no body should not run this code
+               if ( !body ) {
+                       return;
+               }
+
+               div.style.width = div.style.paddingLeft = "1px";
+               body.appendChild( div );
+               jQuery.boxModel = jQuery.support.boxModel = div.offsetWidth === 2;
+
+               if ( "zoom" in div.style ) {
+                       // Check if natively block-level elements act like inline-block
+                       // elements when setting their display to 'inline' and giving
+                       // them layout
+                       // (IE < 8 does this)
+                       div.style.display = "inline";
+                       div.style.zoom = 1;
+                       jQuery.support.inlineBlockNeedsLayout = div.offsetWidth === 2;
+
+                       // Check if elements with layout shrink-wrap their children
+                       // (IE 6 does this)
+                       div.style.display = "";
+                       div.innerHTML = "<div style='width:4px;'></div>";
+                       jQuery.support.shrinkWrapBlocks = div.offsetWidth !== 2;
+               }
+
+               div.innerHTML = "<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>";
+               var tds = div.getElementsByTagName("td");
+
+               // Check if table cells still have offsetWidth/Height when they are set
+               // to display:none and there are still other visible table cells in a
+               // table row; if so, offsetWidth/Height are not reliable for use when
+               // determining if an element has been hidden directly using
+               // display:none (it is still safe to use offsets if a parent element is
+               // hidden; don safety goggles and see bug #4512 for more information).
+               // (only IE 8 fails this test)
+               jQuery.support.reliableHiddenOffsets = tds[0].offsetHeight === 0;
+
+               tds[0].style.display = "";
+               tds[1].style.display = "none";
+
+               // Check if empty table cells still have offsetWidth/Height
+               // (IE < 8 fail this test)
+               jQuery.support.reliableHiddenOffsets = jQuery.support.reliableHiddenOffsets && tds[0].offsetHeight === 0;
+               div.innerHTML = "";
+
+               body.removeChild( div ).style.display = "none";
+               div = tds = null;
+       });
+
+       // Technique from Juriy Zaytsev
+       // http://thinkweb2.com/projects/prototype/detecting-event-support-without-browser-sniffing/
+       var eventSupported = function( eventName ) {
+               var el = document.createElement("div");
+               eventName = "on" + eventName;
+
+               // We only care about the case where non-standard event systems
+               // are used, namely in IE. Short-circuiting here helps us to
+               // avoid an eval call (in setAttribute) which can cause CSP
+               // to go haywire. See: https://developer.mozilla.org/en/Security/CSP
+               if ( !el.attachEvent ) {
+                       return true;
+               }
+
+               var isSupported = (eventName in el);
+               if ( !isSupported ) {
+                       el.setAttribute(eventName, "return;");
+                       isSupported = typeof el[eventName] === "function";
+               }
+               el = null;
+
+               return isSupported;
+       };
+
+       jQuery.support.submitBubbles = eventSupported("submit");
+       jQuery.support.changeBubbles = eventSupported("change");
+
+       // release memory in IE
+       div = all = a = null;
+})();
+
+
+
+var rbrace = /^(?:\{.*\}|\[.*\])$/;
+
+jQuery.extend({
+       cache: {},
+
+       // Please use with caution
+       uuid: 0,
+
+       // Unique for each copy of jQuery on the page
+       // Non-digits removed to match rinlinejQuery
+       expando: "jQuery" + ( jQuery.fn.jquery + Math.random() ).replace( /\D/g, "" ),
+
+       // The following elements throw uncatchable exceptions if you
+       // attempt to add expando properties to them.
+       noData: {
+               "embed": true,
+               // Ban all objects except for Flash (which handle expandos)
+               "object": "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",
+               "applet": true
+       },
+
+       hasData: function( elem ) {
+               elem = elem.nodeType ? jQuery.cache[ elem[jQuery.expando] ] : elem[ jQuery.expando ];
+
+               return !!elem && !isEmptyDataObject( elem );
+       },
+
+       data: function( elem, name, data, pvt /* Internal Use Only */ ) {
+               if ( !jQuery.acceptData( elem ) ) {
+                       return;
+               }
+
+               var internalKey = jQuery.expando, getByName = typeof name === "string", thisCache,
+
+                       // We have to handle DOM nodes and JS objects differently because IE6-7
+                       // can't GC object references properly across the DOM-JS boundary
+                       isNode = elem.nodeType,
+
+                       // Only DOM nodes need the global jQuery cache; JS object data is
+                       // attached directly to the object so GC can occur automatically
+                       cache = isNode ? jQuery.cache : elem,
+
+                       // Only defining an ID for JS objects if its cache already exists allows
+                       // the code to shortcut on the same path as a DOM node with no cache
+                       id = isNode ? elem[ jQuery.expando ] : elem[ jQuery.expando ] && jQuery.expando;
+
+               // Avoid doing any more work than we need to when trying to get data on an
+               // object that has no data at all
+               if ( (!id || (pvt && id && !cache[ id ][ internalKey ])) && getByName && data === undefined ) {
+                       return;
+               }
+
+               if ( !id ) {
+                       // Only DOM nodes need a new unique ID for each element since their data
+                       // ends up in the global cache
+                       if ( isNode ) {
+                               elem[ jQuery.expando ] = id = ++jQuery.uuid;
+                       } else {
+                               id = jQuery.expando;
+                       }
+               }
+
+               if ( !cache[ id ] ) {
+                       cache[ id ] = {};
+
+                       // TODO: This is a hack for 1.5 ONLY. Avoids exposing jQuery
+                       // metadata on plain JS objects when the object is serialized using
+                       // JSON.stringify
+                       if ( !isNode ) {
+                               cache[ id ].toJSON = jQuery.noop;
+                       }
+               }
+
+               // An object can be passed to jQuery.data instead of a key/value pair; this gets
+               // shallow copied over onto the existing cache
+               if ( typeof name === "object" || typeof name === "function" ) {
+                       if ( pvt ) {
+                               cache[ id ][ internalKey ] = jQuery.extend(cache[ id ][ internalKey ], name);
+                       } else {
+                               cache[ id ] = jQuery.extend(cache[ id ], name);
+                       }
+               }
+
+               thisCache = cache[ id ];
+
+               // Internal jQuery data is stored in a separate object inside the object's data
+               // cache in order to avoid key collisions between internal data and user-defined
+               // data
+               if ( pvt ) {
+                       if ( !thisCache[ internalKey ] ) {
+                               thisCache[ internalKey ] = {};
+                       }
+
+                       thisCache = thisCache[ internalKey ];
+               }
+
+               if ( data !== undefined ) {
+                       thisCache[ name ] = data;
+               }
+
+               // TODO: This is a hack for 1.5 ONLY. It will be removed in 1.6. Users should
+               // not attempt to inspect the internal events object using jQuery.data, as this
+               // internal data object is undocumented and subject to change.
+               if ( name === "events" && !thisCache[name] ) {
+                       return thisCache[ internalKey ] && thisCache[ internalKey ].events;
+               }
+
+               return getByName ? thisCache[ name ] : thisCache;
+       },
+
+       removeData: function( elem, name, pvt /* Internal Use Only */ ) {
+               if ( !jQuery.acceptData( elem ) ) {
+                       return;
+               }
+
+               var internalKey = jQuery.expando, isNode = elem.nodeType,
+
+                       // See jQuery.data for more information
+                       cache = isNode ? jQuery.cache : elem,
+
+                       // See jQuery.data for more information
+                       id = isNode ? elem[ jQuery.expando ] : jQuery.expando;
+
+               // If there is already no cache entry for this object, there is no
+               // purpose in continuing
+               if ( !cache[ id ] ) {
+                       return;
+               }
+
+               if ( name ) {
+                       var thisCache = pvt ? cache[ id ][ internalKey ] : cache[ id ];
+
+                       if ( thisCache ) {
+                               delete thisCache[ name ];
+
+                               // If there is no data left in the cache, we want to continue
+                               // and let the cache object itself get destroyed
+                               if ( !isEmptyDataObject(thisCache) ) {
+                                       return;
+                               }
+                       }
+               }
+
+               // See jQuery.data for more information
+               if ( pvt ) {
+                       delete cache[ id ][ internalKey ];
+
+                       // Don't destroy the parent cache unless the internal data object
+                       // had been the only thing left in it
+                       if ( !isEmptyDataObject(cache[ id ]) ) {
+                               return;
+                       }
+               }
+
+               var internalCache = cache[ id ][ internalKey ];
+
+               // Browsers that fail expando deletion also refuse to delete expandos on
+               // the window, but it will allow it on all other JS objects; other browsers
+               // don't care
+               if ( jQuery.support.deleteExpando || cache != window ) {
+                       delete cache[ id ];
+               } else {
+                       cache[ id ] = null;
+               }
+
+               // We destroyed the entire user cache at once because it's faster than
+               // iterating through each key, but we need to continue to persist internal
+               // data if it existed
+               if ( internalCache ) {
+                       cache[ id ] = {};
+                       // TODO: This is a hack for 1.5 ONLY. Avoids exposing jQuery
+                       // metadata on plain JS objects when the object is serialized using
+                       // JSON.stringify
+                       if ( !isNode ) {
+                               cache[ id ].toJSON = jQuery.noop;
+                       }
+
+                       cache[ id ][ internalKey ] = internalCache;
+
+               // Otherwise, we need to eliminate the expando on the node to avoid
+               // false lookups in the cache for entries that no longer exist
+               } else if ( isNode ) {
+                       // IE does not allow us to delete expando properties from nodes,
+                       // nor does it have a removeAttribute function on Document nodes;
+                       // we must handle all of these cases
+                       if ( jQuery.support.deleteExpando ) {
+                               delete elem[ jQuery.expando ];
+                       } else if ( elem.removeAttribute ) {
+                               elem.removeAttribute( jQuery.expando );
+                       } else {
+                               elem[ jQuery.expando ] = null;
+                       }
+               }
+       },
+
+       // For internal use only.
+       _data: function( elem, name, data ) {
+               return jQuery.data( elem, name, data, true );
+       },
+
+       // A method for determining if a DOM node can handle the data expando
+       acceptData: function( elem ) {
+               if ( elem.nodeName ) {
+                       var match = jQuery.noData[ elem.nodeName.toLowerCase() ];
+
+                       if ( match ) {
+                               return !(match === true || elem.getAttribute("classid") !== match);
+                       }
+               }
+
+               return true;
+       }
+});
+
+jQuery.fn.extend({
+       data: function( key, value ) {
+               var data = null;
+
+               if ( typeof key === "undefined" ) {
+                       if ( this.length ) {
+                               data = jQuery.data( this[0] );
+
+                               if ( this[0].nodeType === 1 ) {
+                                       var attr = this[0].attributes, name;
+                                       for ( var i = 0, l = attr.length; i < l; i++ ) {
+                                               name = attr[i].name;
+
+                                               if ( name.indexOf( "data-" ) === 0 ) {
+                                                       name = name.substr( 5 );
+                                                       dataAttr( this[0], name, data[ name ] );
+                                               }
+                                       }
+                               }
+                       }
+
+                       return data;
+
+               } else if ( typeof key === "object" ) {
+                       return this.each(function() {
+                               jQuery.data( this, key );
+                       });
+               }
+
+               var parts = key.split(".");
+               parts[1] = parts[1] ? "." + parts[1] : "";
+
+               if ( value === undefined ) {
+                       data = this.triggerHandler("getData" + parts[1] + "!", [parts[0]]);
+
+                       // Try to fetch any internally stored data first
+                       if ( data === undefined && this.length ) {
+                               data = jQuery.data( this[0], key );
+                               data = dataAttr( this[0], key, data );
+                       }
+
+                       return data === undefined && parts[1] ?
+                               this.data( parts[0] ) :
+                               data;
+
+               } else {
+                       return this.each(function() {
+                               var $this = jQuery( this ),
+                                       args = [ parts[0], value ];
+
+                               $this.triggerHandler( "setData" + parts[1] + "!", args );
+                               jQuery.data( this, key, value );
+                               $this.triggerHandler( "changeData" + parts[1] + "!", args );
+                       });
+               }
+       },
+
+       removeData: function( key ) {
+               return this.each(function() {
+                       jQuery.removeData( this, key );
+               });
+       }
+});
+
+function dataAttr( elem, key, data ) {
+       // If nothing was found internally, try to fetch any
+       // data from the HTML5 data-* attribute
+       if ( data === undefined && elem.nodeType === 1 ) {
+               data = elem.getAttribute( "data-" + key );
+
+               if ( typeof data === "string" ) {
+                       try {
+                               data = data === "true" ? true :
+                               data === "false" ? false :
+                               data === "null" ? null :
+                               !jQuery.isNaN( data ) ? parseFloat( data ) :
+                                       rbrace.test( data ) ? jQuery.parseJSON( data ) :
+                                       data;
+                       } catch( e ) {}
+
+                       // Make sure we set the data so it isn't changed later
+                       jQuery.data( elem, key, data );
+
+               } else {
+                       data = undefined;
+               }
+       }
+
+       return data;
+}
+
+// TODO: This is a hack for 1.5 ONLY to allow objects with a single toJSON
+// property to be considered empty objects; this property always exists in
+// order to make sure JSON.stringify does not expose internal metadata
+function isEmptyDataObject( obj ) {
+       for ( var name in obj ) {
+               if ( name !== "toJSON" ) {
+                       return false;
+               }
+       }
+
+       return true;
+}
+
+
+
+
+jQuery.extend({
+       queue: function( elem, type, data ) {
+               if ( !elem ) {
+                       return;
+               }
+
+               type = (type || "fx") + "queue";
+               var q = jQuery._data( elem, type );
+
+               // Speed up dequeue by getting out quickly if this is just a lookup
+               if ( !data ) {
+                       return q || [];
+               }
+
+               if ( !q || jQuery.isArray(data) ) {
+                       q = jQuery._data( elem, type, jQuery.makeArray(data) );
+
+               } else {
+                       q.push( data );
+               }
+
+               return q;
+       },
+
+       dequeue: function( elem, type ) {
+               type = type || "fx";
+
+               var queue = jQuery.queue( elem, type ),
+                       fn = queue.shift();
+
+               // If the fx queue is dequeued, always remove the progress sentinel
+               if ( fn === "inprogress" ) {
+                       fn = queue.shift();
+               }
+
+               if ( fn ) {
+                       // Add a progress sentinel to prevent the fx queue from being
+                       // automatically dequeued
+                       if ( type === "fx" ) {
+                               queue.unshift("inprogress");
+                       }
+
+                       fn.call(elem, function() {
+                               jQuery.dequeue(elem, type);
+                       });
+               }
+
+               if ( !queue.length ) {
+                       jQuery.removeData( elem, type + "queue", true );
+               }
+       }
+});
+
+jQuery.fn.extend({
+       queue: function( type, data ) {
+               if ( typeof type !== "string" ) {
+                       data = type;
+                       type = "fx";
+               }
+
+               if ( data === undefined ) {
+                       return jQuery.queue( this[0], type );
+               }
+               return this.each(function( i ) {
+                       var queue = jQuery.queue( this, type, data );
+
+                       if ( type === "fx" && queue[0] !== "inprogress" ) {
+                               jQuery.dequeue( this, type );
+                       }
+               });
+       },
+       dequeue: function( type ) {
+               return this.each(function() {
+                       jQuery.dequeue( this, type );
+               });
+       },
+
+       // Based off of the plugin by Clint Helfers, with permission.
+       // http://blindsignals.com/index.php/2009/07/jquery-delay/
+       delay: function( time, type ) {
+               time = jQuery.fx ? jQuery.fx.speeds[time] || time : time;
+               type = type || "fx";
+
+               return this.queue( type, function() {
+                       var elem = this;
+                       setTimeout(function() {
+                               jQuery.dequeue( elem, type );
+                       }, time );
+               });
+       },
+
+       clearQueue: function( type ) {
+               return this.queue( type || "fx", [] );
+       }
+});
+
+
+
+
+var rclass = /[\n\t\r]/g,
+       rspaces = /\s+/,
+       rreturn = /\r/g,
+       rspecialurl = /^(?:href|src|style)$/,
+       rtype = /^(?:button|input)$/i,
+       rfocusable = /^(?:button|input|object|select|textarea)$/i,
+       rclickable = /^a(?:rea)?$/i,
+       rradiocheck = /^(?:radio|checkbox)$/i;
+
+jQuery.props = {
+       "for": "htmlFor",
+       "class": "className",
+       readonly: "readOnly",
+       maxlength: "maxLength",
+       cellspacing: "cellSpacing",
+       rowspan: "rowSpan",
+       colspan: "colSpan",
+       tabindex: "tabIndex",
+       usemap: "useMap",
+       frameborder: "frameBorder"
+};
+
+jQuery.fn.extend({
+       attr: function( name, value ) {
+               return jQuery.access( this, name, value, true, jQuery.attr );
+       },
+
+       removeAttr: function( name, fn ) {
+               return this.each(function(){
+                       jQuery.attr( this, name, "" );
+                       if ( this.nodeType === 1 ) {
+                               this.removeAttribute( name );
+                       }
+               });
+       },
+
+       addClass: function( value ) {
+               if ( jQuery.isFunction(value) ) {
+                       return this.each(function(i) {
+                               var self = jQuery(this);
+                               self.addClass( value.call(this, i, self.attr("class")) );
+                       });
+               }
+
+               if ( value && typeof value === "string" ) {
+                       var classNames = (value || "").split( rspaces );
+
+                       for ( var i = 0, l = this.length; i < l; i++ ) {
+                               var elem = this[i];
+
+                               if ( elem.nodeType === 1 ) {
+                                       if ( !elem.className ) {
+                                               elem.className = value;
+
+                                       } else {
+                                               var className = " " + elem.className + " ",
+                                                       setClass = elem.className;
+
+                                               for ( var c = 0, cl = classNames.length; c < cl; c++ ) {
+                                                       if ( className.indexOf( " " + classNames[c] + " " ) < 0 ) {
+                                                               setClass += " " + classNames[c];
+                                                       }
+                                               }
+                                               elem.className = jQuery.trim( setClass );
+                                       }
+                               }
+                       }
+               }
+
+               return this;
+       },
+
+       removeClass: function( value ) {
+               if ( jQuery.isFunction(value) ) {
+                       return this.each(function(i) {
+                               var self = jQuery(this);
+                               self.removeClass( value.call(this, i, self.attr("class")) );
+                       });
+               }
+
+               if ( (value && typeof value === "string") || value === undefined ) {
+                       var classNames = (value || "").split( rspaces );
+
+                       for ( var i = 0, l = this.length; i < l; i++ ) {
+                               var elem = this[i];
+
+                               if ( elem.nodeType === 1 && elem.className ) {
+                                       if ( value ) {
+                                               var className = (" " + elem.className + " ").replace(rclass, " ");
+                                               for ( var c = 0, cl = classNames.length; c < cl; c++ ) {
+                                                       className = className.replace(" " + classNames[c] + " ", " ");
+                                               }
+                                               elem.className = jQuery.trim( className );
+
+                                       } else {
+                                               elem.className = "";
+                                       }
+                               }
+                       }
+               }
+
+               return this;
+       },
+
+       toggleClass: function( value, stateVal ) {
+               var type = typeof value,
+                       isBool = typeof stateVal === "boolean";
+
+               if ( jQuery.isFunction( value ) ) {
+                       return this.each(function(i) {
+                               var self = jQuery(this);
+                               self.toggleClass( value.call(this, i, self.attr("class"), stateVal), stateVal );
+                       });
+               }
+
+               return this.each(function() {
+                       if ( type === "string" ) {
+                               // toggle individual class names
+                               var className,
+                                       i = 0,
+                                       self = jQuery( this ),
+                                       state = stateVal,
+                                       classNames = value.split( rspaces );
+
+                               while ( (className = classNames[ i++ ]) ) {
+                                       // check each className given, space seperated list
+                                       state = isBool ? state : !self.hasClass( className );
+                                       self[ state ? "addClass" : "removeClass" ]( className );
+                               }
+
+                       } else if ( type === "undefined" || type === "boolean" ) {
+                               if ( this.className ) {
+                                       // store className if set
+                                       jQuery._data( this, "__className__", this.className );
+                               }
+
+                               // toggle whole className
+                               this.className = this.className || value === false ? "" : jQuery._data( this, "__className__" ) || "";
+                       }
+               });
+       },
+
+       hasClass: function( selector ) {
+               var className = " " + selector + " ";
+               for ( var i = 0, l = this.length; i < l; i++ ) {
+                       if ( (" " + this[i].className + " ").replace(rclass, " ").indexOf( className ) > -1 ) {
+                               return true;
+                       }
+               }
+
+               return false;
+       },
+
+       val: function( value ) {
+               if ( !arguments.length ) {
+                       var elem = this[0];
+
+                       if ( elem ) {
+                               if ( jQuery.nodeName( elem, "option" ) ) {
+                                       // attributes.value is undefined in Blackberry 4.7 but
+                                       // uses .value. See #6932
+                                       var val = elem.attributes.value;
+                                       return !val || val.specified ? elem.value : elem.text;
+                               }
+
+                               // We need to handle select boxes special
+                               if ( jQuery.nodeName( elem, "select" ) ) {
+                                       var index = elem.selectedIndex,
+                                               values = [],
+                                               options = elem.options,
+                                               one = elem.type === "select-one";
+
+                                       // Nothing was selected
+                                       if ( index < 0 ) {
+                                               return null;
+                                       }
+
+                                       // Loop through all the selected options
+                                       for ( var i = one ? index : 0, max = one ? index + 1 : options.length; i < max; i++ ) {
+                                               var option = options[ i ];
+
+                                               // Don't return options that are disabled or in a disabled optgroup
+                                               if ( option.selected && (jQuery.support.optDisabled ? !option.disabled : option.getAttribute("disabled") === null) &&
+                                                               (!option.parentNode.disabled || !jQuery.nodeName( option.parentNode, "optgroup" )) ) {
+
+                                                       // Get the specific value for the option
+                                                       value = jQuery(option).val();
+
+                                                       // We don't need an array for one selects
+                                                       if ( one ) {
+                                                               return value;
+                                                       }
+
+                                                       // Multi-Selects return an array
+                                                       values.push( value );
+                                               }
+                                       }
+
+                                       // Fixes Bug #2551 -- select.val() broken in IE after form.reset()
+                                       if ( one && !values.length && options.length ) {
+                                               return jQuery( options[ index ] ).val();
+                                       }
+
+                                       return values;
+                               }
+
+                               // Handle the case where in Webkit "" is returned instead of "on" if a value isn't specified
+                               if ( rradiocheck.test( elem.type ) && !jQuery.support.checkOn ) {
+                                       return elem.getAttribute("value") === null ? "on" : elem.value;
+                               }
+
+                               // Everything else, we just grab the value
+                               return (elem.value || "").replace(rreturn, "");
+
+                       }
+
+                       return undefined;
+               }
+
+               var isFunction = jQuery.isFunction(value);
+
+               return this.each(function(i) {
+                       var self = jQuery(this), val = value;
+
+                       if ( this.nodeType !== 1 ) {
+                               return;
+                       }
+
+                       if ( isFunction ) {
+                               val = value.call(this, i, self.val());
+                       }
+
+                       // Treat null/undefined as ""; convert numbers to string
+                       if ( val == null ) {
+                               val = "";
+                       } else if ( typeof val === "number" ) {
+                               val += "";
+                       } else if ( jQuery.isArray(val) ) {
+                               val = jQuery.map(val, function (value) {
+                                       return value == null ? "" : value + "";
+                               });
+                       }
+
+                       if ( jQuery.isArray(val) && rradiocheck.test( this.type ) ) {
+                               this.checked = jQuery.inArray( self.val(), val ) >= 0;
+
+                       } else if ( jQuery.nodeName( this, "select" ) ) {
+                               var values = jQuery.makeArray(val);
+
+                               jQuery( "option", this ).each(function() {
+                                       this.selected = jQuery.inArray( jQuery(this).val(), values ) >= 0;
+                               });
+
+                               if ( !values.length ) {
+                                       this.selectedIndex = -1;
+                               }
+
+                       } else {
+                               this.value = val;
+                       }
+               });
+       }
+});
+
+jQuery.extend({
+       attrFn: {
+               val: true,
+               css: true,
+               html: true,
+               text: true,
+               data: true,
+               width: true,
+               height: true,
+               offset: true
+       },
+
+       attr: function( elem, name, value, pass ) {
+               // don't get/set attributes on text, comment and attribute nodes
+               if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || elem.nodeType === 2 ) {
+                       return undefined;
+               }
+
+               if ( pass && name in jQuery.attrFn ) {
+                       return jQuery(elem)[name](value);
+               }
+
+               var notxml = elem.nodeType !== 1 || !jQuery.isXMLDoc( elem ),
+                       // Whether we are setting (or getting)
+                       set = value !== undefined;
+
+               // Try to normalize/fix the name
+               name = notxml && jQuery.props[ name ] || name;
+
+               // Only do all the following if this is a node (faster for style)
+               if ( elem.nodeType === 1 ) {
+                       // These attributes require special treatment
+                       var special = rspecialurl.test( name );
+
+                       // Safari mis-reports the default selected property of an option
+                       // Accessing the parent's selectedIndex property fixes it
+                       if ( name === "selected" && !jQuery.support.optSelected ) {
+                               var parent = elem.parentNode;
+                               if ( parent ) {
+                                       parent.selectedIndex;
+
+                                       // Make sure that it also works with optgroups, see #5701
+                                       if ( parent.parentNode ) {
+                                               parent.parentNode.selectedIndex;
+                                       }
+                               }
+                       }
+
+                       // If applicable, access the attribute via the DOM 0 way
+                       // 'in' checks fail in Blackberry 4.7 #6931
+                       if ( (name in elem || elem[ name ] !== undefined) && notxml && !special ) {
+                               if ( set ) {
+                                       // We can't allow the type property to be changed (since it causes problems in IE)
+                                       if ( name === "type" && rtype.test( elem.nodeName ) && elem.parentNode ) {
+                                               jQuery.error( "type property can't be changed" );
+                                       }
+
+                                       if ( value === null ) {
+                                               if ( elem.nodeType === 1 ) {
+                                                       elem.removeAttribute( name );
+                                               }
+
+                                       } else {
+                                               elem[ name ] = value;
+                                       }
+                               }
+
+                               // browsers index elements by id/name on forms, give priority to attributes.
+                               if ( jQuery.nodeName( elem, "form" ) && elem.getAttributeNode(name) ) {
+                                       return elem.getAttributeNode( name ).nodeValue;
+                               }
+
+                               // elem.tabIndex doesn't always return the correct value when it hasn't been explicitly set
+                               // http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/
+                               if ( name === "tabIndex" ) {
+                                       var attributeNode = elem.getAttributeNode( "tabIndex" );
+
+                                       return attributeNode && attributeNode.specified ?
+                                               attributeNode.value :
+                                               rfocusable.test( elem.nodeName ) || rclickable.test( elem.nodeName ) && elem.href ?
+                                                       0 :
+                                                       undefined;
+                               }
+
+                               return elem[ name ];
+                       }
+
+                       if ( !jQuery.support.style && notxml && name === "style" ) {
+                               if ( set ) {
+                                       elem.style.cssText = "" + value;
+                               }
+
+                               return elem.style.cssText;
+                       }
+
+                       if ( set ) {
+                               // convert the value to a string (all browsers do this but IE) see #1070
+                               elem.setAttribute( name, "" + value );
+                       }
+
+                       // Ensure that missing attributes return undefined
+                       // Blackberry 4.7 returns "" from getAttribute #6938
+                       if ( !elem.attributes[ name ] && (elem.hasAttribute && !elem.hasAttribute( name )) ) {
+                               return undefined;
+                       }
+
+                       var attr = !jQuery.support.hrefNormalized && notxml && special ?
+                                       // Some attributes require a special call on IE
+                                       elem.getAttribute( name, 2 ) :
+                                       elem.getAttribute( name );
+
+                       // Non-existent attributes return null, we normalize to undefined
+                       return attr === null ? undefined : attr;
+               }
+               // Handle everything which isn't a DOM element node
+               if ( set ) {
+                       elem[ name ] = value;
+               }
+               return elem[ name ];
+       }
+});
+
+
+
+
+var rnamespaces = /\.(.*)$/,
+       rformElems = /^(?:textarea|input|select)$/i,
+       rperiod = /\./g,
+       rspace = / /g,
+       rescape = /[^\w\s.|`]/g,
+       fcleanup = function( nm ) {
+               return nm.replace(rescape, "\\$&");
+       };
+
+/*
+ * A number of helper functions used for managing events.
+ * Many of the ideas behind this code originated from
+ * Dean Edwards' addEvent library.
+ */
+jQuery.event = {
+
+       // Bind an event to an element
+       // Original by Dean Edwards
+       add: function( elem, types, handler, data ) {
+               if ( elem.nodeType === 3 || elem.nodeType === 8 ) {
+                       return;
+               }
+
+               // TODO :: Use a try/catch until it's safe to pull this out (likely 1.6)
+               // Minor release fix for bug #8018
+               try {
+                       // For whatever reason, IE has trouble passing the window object
+                       // around, causing it to be cloned in the process
+                       if ( jQuery.isWindow( elem ) && ( elem !== window && !elem.frameElement ) ) {
+                               elem = window;
+                       }
+               }
+               catch ( e ) {}
+
+               if ( handler === false ) {
+                       handler = returnFalse;
+               } else if ( !handler ) {
+                       // Fixes bug #7229. Fix recommended by jdalton
+                       return;
+               }
+
+               var handleObjIn, handleObj;
+
+               if ( handler.handler ) {
+                       handleObjIn = handler;
+                       handler = handleObjIn.handler;
+               }
+
+               // Make sure that the function being executed has a unique ID
+               if ( !handler.guid ) {
+                       handler.guid = jQuery.guid++;
+               }
+
+               // Init the element's event structure
+               var elemData = jQuery._data( elem );
+
+               // If no elemData is found then we must be trying to bind to one of the
+               // banned noData elements
+               if ( !elemData ) {
+                       return;
+               }
+
+               var events = elemData.events,
+                       eventHandle = elemData.handle;
+
+               if ( !events ) {
+                       elemData.events = events = {};
+               }
+
+               if ( !eventHandle ) {
+                       elemData.handle = eventHandle = function() {
+                               // Handle the second event of a trigger and when
+                               // an event is called after a page has unloaded
+                               return typeof jQuery !== "undefined" && !jQuery.event.triggered ?
+                                       jQuery.event.handle.apply( eventHandle.elem, arguments ) :
+                                       undefined;
+                       };
+               }
+
+               // Add elem as a property of the handle function
+               // This is to prevent a memory leak with non-native events in IE.
+               eventHandle.elem = elem;
+
+               // Handle multiple events separated by a space
+               // jQuery(...).bind("mouseover mouseout", fn);
+               types = types.split(" ");
+
+               var type, i = 0, namespaces;
+
+               while ( (type = types[ i++ ]) ) {
+                       handleObj = handleObjIn ?
+                               jQuery.extend({}, handleObjIn) :
+                               { handler: handler, data: data };
+
+                       // Namespaced event handlers
+                       if ( type.indexOf(".") > -1 ) {
+                               namespaces = type.split(".");
+                               type = namespaces.shift();
+                               handleObj.namespace = namespaces.slice(0).sort().join(".");
+
+                       } else {
+                               namespaces = [];
+                               handleObj.namespace = "";
+                       }
+
+                       handleObj.type = type;
+                       if ( !handleObj.guid ) {
+                               handleObj.guid = handler.guid;
+                       }
+
+                       // Get the current list of functions bound to this event
+                       var handlers = events[ type ],
+                               special = jQuery.event.special[ type ] || {};
+
+                       // Init the event handler queue
+                       if ( !handlers ) {
+                               handlers = events[ type ] = [];
+
+                               // Check for a special event handler
+                               // Only use addEventListener/attachEvent if the special
+                               // events handler returns false
+                               if ( !special.setup || special.setup.call( elem, data, namespaces, eventHandle ) === false ) {
+                                       // Bind the global event handler to the element
+                                       if ( elem.addEventListener ) {
+                                               elem.addEventListener( type, eventHandle, false );
+
+                                       } else if ( elem.attachEvent ) {
+                                               elem.attachEvent( "on" + type, eventHandle );
+                                       }
+                               }
+                       }
+
+                       if ( special.add ) {
+                               special.add.call( elem, handleObj );
+
+                               if ( !handleObj.handler.guid ) {
+                                       handleObj.handler.guid = handler.guid;
+                               }
+                       }
+
+                       // Add the function to the element's handler list
+                       handlers.push( handleObj );
+
+                       // Keep track of which events have been used, for global triggering
+                       jQuery.event.global[ type ] = true;
+               }
+
+               // Nullify elem to prevent memory leaks in IE
+               elem = null;
+       },
+
+       global: {},
+
+       // Detach an event or set of events from an element
+       remove: function( elem, types, handler, pos ) {
+               // don't do events on text and comment nodes
+               if ( elem.nodeType === 3 || elem.nodeType === 8 ) {
+                       return;
+               }
+
+               if ( handler === false ) {
+                       handler = returnFalse;
+               }
+
+               var ret, type, fn, j, i = 0, all, namespaces, namespace, special, eventType, handleObj, origType,
+                       elemData = jQuery.hasData( elem ) && jQuery._data( elem ),
+                       events = elemData && elemData.events;
+
+               if ( !elemData || !events ) {
+                       return;
+               }
+
+               // types is actually an event object here
+               if ( types && types.type ) {
+                       handler = types.handler;
+                       types = types.type;
+               }
+
+               // Unbind all events for the element
+               if ( !types || typeof types === "string" && types.charAt(0) === "." ) {
+                       types = types || "";
+
+                       for ( type in events ) {
+                               jQuery.event.remove( elem, type + types );
+                       }
+
+                       return;
+               }
+
+               // Handle multiple events separated by a space
+               // jQuery(...).unbind("mouseover mouseout", fn);
+               types = types.split(" ");
+
+               while ( (type = types[ i++ ]) ) {
+                       origType = type;
+                       handleObj = null;
+                       all = type.indexOf(".") < 0;
+                       namespaces = [];
+
+                       if ( !all ) {
+                               // Namespaced event handlers
+                               namespaces = type.split(".");
+                               type = namespaces.shift();
+
+                               namespace = new RegExp("(^|\\.)" +
+                                       jQuery.map( namespaces.slice(0).sort(), fcleanup ).join("\\.(?:.*\\.)?") + "(\\.|$)");
+                       }
+
+                       eventType = events[ type ];
+
+                       if ( !eventType ) {
+                               continue;
+                       }
+
+                       if ( !handler ) {
+                               for ( j = 0; j < eventType.length; j++ ) {
+                                       handleObj = eventType[ j ];
+
+                                       if ( all || namespace.test( handleObj.namespace ) ) {
+                                               jQuery.event.remove( elem, origType, handleObj.handler, j );
+                                               eventType.splice( j--, 1 );
+                                       }
+                               }
+
+                               continue;
+                       }
+
+                       special = jQuery.event.special[ type ] || {};
+
+                       for ( j = pos || 0; j < eventType.length; j++ ) {
+                               handleObj = eventType[ j ];
+
+                               if ( handler.guid === handleObj.guid ) {
+                                       // remove the given handler for the given type
+                                       if ( all || namespace.test( handleObj.namespace ) ) {
+                                               if ( pos == null ) {
+                                                       eventType.splice( j--, 1 );
+                                               }
+
+                                               if ( special.remove ) {
+                                                       special.remove.call( elem, handleObj );
+                                               }
+                                       }
+
+                                       if ( pos != null ) {
+                                               break;
+                                       }
+                               }
+                       }
+
+                       // remove generic event handler if no more handlers exist
+                       if ( eventType.length === 0 || pos != null && eventType.length === 1 ) {
+                               if ( !special.teardown || special.teardown.call( elem, namespaces ) === false ) {
+                                       jQuery.removeEvent( elem, type, elemData.handle );
+                               }
+
+                               ret = null;
+                               delete events[ type ];
+                       }
+               }
+
+               // Remove the expando if it's no longer used
+               if ( jQuery.isEmptyObject( events ) ) {
+                       var handle = elemData.handle;
+                       if ( handle ) {
+                               handle.elem = null;
+                       }
+
+                       delete elemData.events;
+                       delete elemData.handle;
+
+                       if ( jQuery.isEmptyObject( elemData ) ) {
+                               jQuery.removeData( elem, undefined, true );
+                       }
+               }
+       },
+
+       // bubbling is internal
+       trigger: function( event, data, elem /*, bubbling */ ) {
+               // Event object or event type
+               var type = event.type || event,
+                       bubbling = arguments[3];
+
+               if ( !bubbling ) {
+                       event = typeof event === "object" ?
+                               // jQuery.Event object
+                               event[ jQuery.expando ] ? event :
+                               // Object literal
+                               jQuery.extend( jQuery.Event(type), event ) :
+                               // Just the event type (string)
+                               jQuery.Event(type);
+
+                       if ( type.indexOf("!") >= 0 ) {
+                               event.type = type = type.slice(0, -1);
+                               event.exclusive = true;
+                       }
+
+                       // Handle a global trigger
+                       if ( !elem ) {
+                               // Don't bubble custom events when global (to avoid too much overhead)
+                               event.stopPropagation();
+
+                               // Only trigger if we've ever bound an event for it
+                               if ( jQuery.event.global[ type ] ) {
+                                       // XXX This code smells terrible. event.js should not be directly
+                                       // inspecting the data cache
+                                       jQuery.each( jQuery.cache, function() {
+                                               // internalKey variable is just used to make it easier to find
+                                               // and potentially change this stuff later; currently it just
+                                               // points to jQuery.expando
+                                               var internalKey = jQuery.expando,
+                                                       internalCache = this[ internalKey ];
+                                               if ( internalCache && internalCache.events && internalCache.events[ type ] ) {
+                                                       jQuery.event.trigger( event, data, internalCache.handle.elem );
+                                               }
+                                       });
+                               }
+                       }
+
+                       // Handle triggering a single element
+
+                       // don't do events on text and comment nodes
+                       if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 ) {
+                               return undefined;
+                       }
+
+                       // Clean up in case it is reused
+                       event.result = undefined;
+                       event.target = elem;
+
+                       // Clone the incoming data, if any
+                       data = jQuery.makeArray( data );
+                       data.unshift( event );
+               }
+
+               event.currentTarget = elem;
+
+               // Trigger the event, it is assumed that "handle" is a function
+               var handle = jQuery._data( elem, "handle" );
+
+               if ( handle ) {
+                       handle.apply( elem, data );
+               }
+
+               var parent = elem.parentNode || elem.ownerDocument;
+
+               // Trigger an inline bound script
+               try {
+                       if ( !(elem && elem.nodeName && jQuery.noData[elem.nodeName.toLowerCase()]) ) {
+                               if ( elem[ "on" + type ] && elem[ "on" + type ].apply( elem, data ) === false ) {
+                                       event.result = false;
+                                       event.preventDefault();
+                               }
+                       }
+
+               // prevent IE from throwing an error for some elements with some event types, see #3533
+               } catch (inlineError) {}
+
+               if ( !event.isPropagationStopped() && parent ) {
+                       jQuery.event.trigger( event, data, parent, true );
+
+               } else if ( !event.isDefaultPrevented() ) {
+                       var old,
+                               target = event.target,
+                               targetType = type.replace( rnamespaces, "" ),
+                               isClick = jQuery.nodeName( target, "a" ) && targetType === "click",
+                               special = jQuery.event.special[ targetType ] || {};
+
+                       if ( (!special._default || special._default.call( elem, event ) === false) &&
+                               !isClick && !(target && target.nodeName && jQuery.noData[target.nodeName.toLowerCase()]) ) {
+
+                               try {
+                                       if ( target[ targetType ] ) {
+                                               // Make sure that we don't accidentally re-trigger the onFOO events
+                                               old = target[ "on" + targetType ];
+
+                                               if ( old ) {
+                                                       target[ "on" + targetType ] = null;
+                                               }
+
+                                               jQuery.event.triggered = true;
+                                               target[ targetType ]();
+                                       }
+
+                               // prevent IE from throwing an error for some elements with some event types, see #3533
+                               } catch (triggerError) {}
+
+                               if ( old ) {
+                                       target[ "on" + targetType ] = old;
+                               }
+
+                               jQuery.event.triggered = false;
+                       }
+               }
+       },
+
+       handle: function( event ) {
+               var all, handlers, namespaces, namespace_re, events,
+                       namespace_sort = [],
+                       args = jQuery.makeArray( arguments );
+
+               event = args[0] = jQuery.event.fix( event || window.event );
+               event.currentTarget = this;
+
+               // Namespaced event handlers
+               all = event.type.indexOf(".") < 0 && !event.exclusive;
+
+               if ( !all ) {
+                       namespaces = event.type.split(".");
+                       event.type = namespaces.shift();
+                       namespace_sort = namespaces.slice(0).sort();
+                       namespace_re = new RegExp("(^|\\.)" + namespace_sort.join("\\.(?:.*\\.)?") + "(\\.|$)");
+               }
+
+               event.namespace = event.namespace || namespace_sort.join(".");
+
+               events = jQuery._data(this, "events");
+
+               handlers = (events || {})[ event.type ];
+
+               if ( events && handlers ) {
+                       // Clone the handlers to prevent manipulation
+                       handlers = handlers.slice(0);
+
+                       for ( var j = 0, l = handlers.length; j < l; j++ ) {
+                               var handleObj = handlers[ j ];
+
+                               // Filter the functions by class
+                               if ( all || namespace_re.test( handleObj.namespace ) ) {
+                                       // Pass in a reference to the handler function itself
+                                       // So that we can later remove it
+                                       event.handler = handleObj.handler;
+                                       event.data = handleObj.data;
+                                       event.handleObj = handleObj;
+
+                                       var ret = handleObj.handler.apply( this, args );
+
+                                       if ( ret !== undefined ) {
+                                               event.result = ret;
+                                               if ( ret === false ) {
+                                                       event.preventDefault();
+                                                       event.stopPropagation();
+                                               }
+                                       }
+
+                                       if ( event.isImmediatePropagationStopped() ) {
+                                               break;
+                                       }
+                               }
+                       }
+               }
+
+               return event.result;
+       },
+
+       props: "altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),
+
+       fix: function( event ) {
+               if ( event[ jQuery.expando ] ) {
+                       return event;
+               }
+
+               // store a copy of the original event object
+               // and "clone" to set read-only properties
+               var originalEvent = event;
+               event = jQuery.Event( originalEvent );
+
+               for ( var i = this.props.length, prop; i; ) {
+                       prop = this.props[ --i ];
+                       event[ prop ] = originalEvent[ prop ];
+               }
+
+               // Fix target property, if necessary
+               if ( !event.target ) {
+                       // Fixes #1925 where srcElement might not be defined either
+                       event.target = event.srcElement || document;
+               }
+
+               // check if target is a textnode (safari)
+               if ( event.target.nodeType === 3 ) {
+                       event.target = event.target.parentNode;
+               }
+
+               // Add relatedTarget, if necessary
+               if ( !event.relatedTarget && event.fromElement ) {
+                       event.relatedTarget = event.fromElement === event.target ? event.toElement : event.fromElement;
+               }
+
+               // Calculate pageX/Y if missing and clientX/Y available
+               if ( event.pageX == null && event.clientX != null ) {
+                       var doc = document.documentElement,
+                               body = document.body;
+
+                       event.pageX = event.clientX + (doc && doc.scrollLeft || body && body.scrollLeft || 0) - (doc && doc.clientLeft || body && body.clientLeft || 0);
+                       event.pageY = event.clientY + (doc && doc.scrollTop  || body && body.scrollTop  || 0) - (doc && doc.clientTop  || body && body.clientTop  || 0);
+               }
+
+               // Add which for key events
+               if ( event.which == null && (event.charCode != null || event.keyCode != null) ) {
+                       event.which = event.charCode != null ? event.charCode : event.keyCode;
+               }
+
+               // Add metaKey to non-Mac browsers (use ctrl for PC's and Meta for Macs)
+               if ( !event.metaKey && event.ctrlKey ) {
+                       event.metaKey = event.ctrlKey;
+               }
+
+               // Add which for click: 1 === left; 2 === middle; 3 === right
+               // Note: button is not normalized, so don't use it
+               if ( !event.which && event.button !== undefined ) {
+                       event.which = (event.button & 1 ? 1 : ( event.button & 2 ? 3 : ( event.button & 4 ? 2 : 0 ) ));
+               }
+
+               return event;
+       },
+
+       // Deprecated, use jQuery.guid instead
+       guid: 1E8,
+
+       // Deprecated, use jQuery.proxy instead
+       proxy: jQuery.proxy,
+
+       special: {
+               ready: {
+                       // Make sure the ready event is setup
+                       setup: jQuery.bindReady,
+                       teardown: jQuery.noop
+               },
+
+               live: {
+                       add: function( handleObj ) {
+                               jQuery.event.add( this,
+                                       liveConvert( handleObj.origType, handleObj.selector ),
+                                       jQuery.extend({}, handleObj, {handler: liveHandler, guid: handleObj.handler.guid}) );
+                       },
+
+                       remove: function( handleObj ) {
+                               jQuery.event.remove( this, liveConvert( handleObj.origType, handleObj.selector ), handleObj );
+                       }
+               },
+
+               beforeunload: {
+                       setup: function( data, namespaces, eventHandle ) {
+                               // We only want to do this special case on windows
+                               if ( jQuery.isWindow( this ) ) {
+                                       this.onbeforeunload = eventHandle;
+                               }
+                       },
+
+                       teardown: function( namespaces, eventHandle ) {
+                               if ( this.onbeforeunload === eventHandle ) {
+                                       this.onbeforeunload = null;
+                               }
+                       }
+               }
+       }
+};
+
+jQuery.removeEvent = document.removeEventListener ?
+       function( elem, type, handle ) {
+               if ( elem.removeEventListener ) {
+                       elem.removeEventListener( type, handle, false );
+               }
+       } :
+       function( elem, type, handle ) {
+               if ( elem.detachEvent ) {
+                       elem.detachEvent( "on" + type, handle );
+               }
+       };
+
+jQuery.Event = function( src ) {
+       // Allow instantiation without the 'new' keyword
+       if ( !this.preventDefault ) {
+               return new jQuery.Event( src );
+       }
+
+       // Event object
+       if ( src && src.type ) {
+               this.originalEvent = src;
+               this.type = src.type;
+
+               // Events bubbling up the document may have been marked as prevented
+               // by a handler lower down the tree; reflect the correct value.
+               this.isDefaultPrevented = (src.defaultPrevented || src.returnValue === false ||
+                       src.getPreventDefault && src.getPreventDefault()) ? returnTrue : returnFalse;
+
+       // Event type
+       } else {
+               this.type = src;
+       }
+
+       // timeStamp is buggy for some events on Firefox(#3843)
+       // So we won't rely on the native value
+       this.timeStamp = jQuery.now();
+
+       // Mark it as fixed
+       this[ jQuery.expando ] = true;
+};
+
+function returnFalse() {
+       return false;
+}
+function returnTrue() {
+       return true;
+}
+
+// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding
+// http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html
+jQuery.Event.prototype = {
+       preventDefault: function() {
+               this.isDefaultPrevented = returnTrue;
+
+               var e = this.originalEvent;
+               if ( !e ) {
+                       return;
+               }
+
+               // if preventDefault exists run it on the original event
+               if ( e.preventDefault ) {
+                       e.preventDefault();
+
+               // otherwise set the returnValue property of the original event to false (IE)
+               } else {
+                       e.returnValue = false;
+               }
+       },
+       stopPropagation: function() {
+               this.isPropagationStopped = returnTrue;
+
+               var e = this.originalEvent;
+               if ( !e ) {
+                       return;
+               }
+               // if stopPropagation exists run it on the original event
+               if ( e.stopPropagation ) {
+                       e.stopPropagation();
+               }
+               // otherwise set the cancelBubble property of the original event to true (IE)
+               e.cancelBubble = true;
+       },
+       stopImmediatePropagation: function() {
+               this.isImmediatePropagationStopped = returnTrue;
+               this.stopPropagation();
+       },
+       isDefaultPrevented: returnFalse,
+       isPropagationStopped: returnFalse,
+       isImmediatePropagationStopped: returnFalse
+};
+
+// Checks if an event happened on an element within another element
+// Used in jQuery.event.special.mouseenter and mouseleave handlers
+var withinElement = function( event ) {
+       // Check if mouse(over|out) are still within the same parent element
+       var parent = event.relatedTarget;
+
+       // Firefox sometimes assigns relatedTarget a XUL element
+       // which we cannot access the parentNode property of
+       try {
+
+               // Chrome does something similar, the parentNode property
+               // can be accessed but is null.
+               if ( parent !== document && !parent.parentNode ) {
+                       return;
+               }
+               // Traverse up the tree
+               while ( parent && parent !== this ) {
+                       parent = parent.parentNode;
+               }
+
+               if ( parent !== this ) {
+                       // set the correct event type
+                       event.type = event.data;
+
+                       // handle event if we actually just moused on to a non sub-element
+                       jQuery.event.handle.apply( this, arguments );
+               }
+
+       // assuming we've left the element since we most likely mousedover a xul element
+       } catch(e) { }
+},
+
+// In case of event delegation, we only need to rename the event.type,
+// liveHandler will take care of the rest.
+delegate = function( event ) {
+       event.type = event.data;
+       jQuery.event.handle.apply( this, arguments );
+};
+
+// Create mouseenter and mouseleave events
+jQuery.each({
+       mouseenter: "mouseover",
+       mouseleave: "mouseout"
+}, function( orig, fix ) {
+       jQuery.event.special[ orig ] = {
+               setup: function( data ) {
+                       jQuery.event.add( this, fix, data && data.selector ? delegate : withinElement, orig );
+               },
+               teardown: function( data ) {
+                       jQuery.event.remove( this, fix, data && data.selector ? delegate : withinElement );
+               }
+       };
+});
+
+// submit delegation
+if ( !jQuery.support.submitBubbles ) {
+
+       jQuery.event.special.submit = {
+               setup: function( data, namespaces ) {
+                       if ( this.nodeName && this.nodeName.toLowerCase() !== "form" ) {
+                               jQuery.event.add(this, "click.specialSubmit", function( e ) {
+                                       var elem = e.target,
+                                               type = elem.type;
+
+                                       if ( (type === "submit" || type === "image") && jQuery( elem ).closest("form").length ) {
+                                               trigger( "submit", this, arguments );
+                                       }
+                               });
+
+                               jQuery.event.add(this, "keypress.specialSubmit", function( e ) {
+                                       var elem = e.target,
+                                               type = elem.type;
+
+                                       if ( (type === "text" || type === "password") && jQuery( elem ).closest("form").length && e.keyCode === 13 ) {
+                                               trigger( "submit", this, arguments );
+                                       }
+                               });
+
+                       } else {
+                               return false;
+                       }
+               },
+
+               teardown: function( namespaces ) {
+                       jQuery.event.remove( this, ".specialSubmit" );
+               }
+       };
+
+}
+
+// change delegation, happens here so we have bind.
+if ( !jQuery.support.changeBubbles ) {
+
+       var changeFilters,
+
+       getVal = function( elem ) {
+               var type = elem.type, val = elem.value;
+
+               if ( type === "radio" || type === "checkbox" ) {
+                       val = elem.checked;
+
+               } else if ( type === "select-multiple" ) {
+                       val = elem.selectedIndex > -1 ?
+                               jQuery.map( elem.options, function( elem ) {
+                                       return elem.selected;
+                               }).join("-") :
+                               "";
+
+               } else if ( elem.nodeName.toLowerCase() === "select" ) {
+                       val = elem.selectedIndex;
+               }
+
+               return val;
+       },
+
+       testChange = function testChange( e ) {
+               var elem = e.target, data, val;
+
+               if ( !rformElems.test( elem.nodeName ) || elem.readOnly ) {
+                       return;
+               }
+
+               data = jQuery._data( elem, "_change_data" );
+               val = getVal(elem);
+
+               // the current data will be also retrieved by beforeactivate
+               if ( e.type !== "focusout" || elem.type !== "radio" ) {
+                       jQuery._data( elem, "_change_data", val );
+               }
+
+               if ( data === undefined || val === data ) {
+                       return;
+               }
+
+               if ( data != null || val ) {
+                       e.type = "change";
+                       e.liveFired = undefined;
+                       jQuery.event.trigger( e, arguments[1], elem );
+               }
+       };
+
+       jQuery.event.special.change = {
+               filters: {
+                       focusout: testChange,
+
+                       beforedeactivate: testChange,
+
+                       click: function( e ) {
+                               var elem = e.target, type = elem.type;
+
+                               if ( type === "radio" || type === "checkbox" || elem.nodeName.toLowerCase() === "select" ) {
+                                       testChange.call( this, e );
+                               }
+                       },
+
+                       // Change has to be called before submit
+                       // Keydown will be called before keypress, which is used in submit-event delegation
+                       keydown: function( e ) {
+                               var elem = e.target, type = elem.type;
+
+                               if ( (e.keyCode === 13 && elem.nodeName.toLowerCase() !== "textarea") ||
+                                       (e.keyCode === 32 && (type === "checkbox" || type === "radio")) ||
+                                       type === "select-multiple" ) {
+                                       testChange.call( this, e );
+                               }
+                       },
+
+                       // Beforeactivate happens also before the previous element is blurred
+                       // with this event you can't trigger a change event, but you can store
+                       // information
+                       beforeactivate: function( e ) {
+                               var elem = e.target;
+                               jQuery._data( elem, "_change_data", getVal(elem) );
+                       }
+               },
+
+               setup: function( data, namespaces ) {
+                       if ( this.type === "file" ) {
+                               return false;
+                       }
+
+                       for ( var type in changeFilters ) {
+                               jQuery.event.add( this, type + ".specialChange", changeFilters[type] );
+                       }
+
+                       return rformElems.test( this.nodeName );
+               },
+
+               teardown: function( namespaces ) {
+                       jQuery.event.remove( this, ".specialChange" );
+
+                       return rformElems.test( this.nodeName );
+               }
+       };
+
+       changeFilters = jQuery.event.special.change.filters;
+
+       // Handle when the input is .focus()'d
+       changeFilters.focus = changeFilters.beforeactivate;
+}
+
+function trigger( type, elem, args ) {
+       // Piggyback on a donor event to simulate a different one.
+       // Fake originalEvent to avoid donor's stopPropagation, but if the
+       // simulated event prevents default then we do the same on the donor.
+       // Don't pass args or remember liveFired; they apply to the donor event.
+       var event = jQuery.extend( {}, args[ 0 ] );
+       event.type = type;
+       event.originalEvent = {};
+       event.liveFired = undefined;
+       jQuery.event.handle.call( elem, event );
+       if ( event.isDefaultPrevented() ) {
+               args[ 0 ].preventDefault();
+       }
+}
+
+// Create "bubbling" focus and blur events
+if ( document.addEventListener ) {
+       jQuery.each({ focus: "focusin", blur: "focusout" }, function( orig, fix ) {
+               jQuery.event.special[ fix ] = {
+                       setup: function() {
+                               this.addEventListener( orig, handler, true );
+                       },
+                       teardown: function() {
+                               this.removeEventListener( orig, handler, true );
+                       }
+               };
+
+               function handler( e ) {
+                       e = jQuery.event.fix( e );
+                       e.type = fix;
+                       return jQuery.event.handle.call( this, e );
+               }
+       });
+}
+
+jQuery.each(["bind", "one"], function( i, name ) {
+       jQuery.fn[ name ] = function( type, data, fn ) {
+               // Handle object literals
+               if ( typeof type === "object" ) {
+                       for ( var key in type ) {
+                               this[ name ](key, data, type[key], fn);
+                       }
+                       return this;
+               }
+
+               if ( jQuery.isFunction( data ) || data === false ) {
+                       fn = data;
+                       data = undefined;
+               }
+
+               var handler = name === "one" ? jQuery.proxy( fn, function( event ) {
+                       jQuery( this ).unbind( event, handler );
+                       return fn.apply( this, arguments );
+               }) : fn;
+
+               if ( type === "unload" && name !== "one" ) {
+                       this.one( type, data, fn );
+
+               } else {
+                       for ( var i = 0, l = this.length; i < l; i++ ) {
+                               jQuery.event.add( this[i], type, handler, data );
+                       }
+               }
+
+               return this;
+       };
+});
+
+jQuery.fn.extend({
+       unbind: function( type, fn ) {
+               // Handle object literals
+               if ( typeof type === "object" && !type.preventDefault ) {
+                       for ( var key in type ) {
+                               this.unbind(key, type[key]);
+                       }
+
+               } else {
+                       for ( var i = 0, l = this.length; i < l; i++ ) {
+                               jQuery.event.remove( this[i], type, fn );
+                       }
+               }
+
+               return this;
+       },
+
+       delegate: function( selector, types, data, fn ) {
+               return this.live( types, data, fn, selector );
+       },
+
+       undelegate: function( selector, types, fn ) {
+               if ( arguments.length === 0 ) {
+                               return this.unbind( "live" );
+
+               } else {
+                       return this.die( types, null, fn, selector );
+               }
+       },
+
+       trigger: function( type, data ) {
+               return this.each(function() {
+                       jQuery.event.trigger( type, data, this );
+               });
+       },
+
+       triggerHandler: function( type, data ) {
+               if ( this[0] ) {
+                       var event = jQuery.Event( type );
+                       event.preventDefault();
+                       event.stopPropagation();
+                       jQuery.event.trigger( event, data, this[0] );
+                       return event.result;
+               }
+       },
+
+       toggle: function( fn ) {
+               // Save reference to arguments for access in closure
+               var args = arguments,
+                       i = 1;
+
+               // link all the functions, so any of them can unbind this click handler
+               while ( i < args.length ) {
+                       jQuery.proxy( fn, args[ i++ ] );
+               }
+
+               return this.click( jQuery.proxy( fn, function( event ) {
+                       // Figure out which function to execute
+                       var lastToggle = ( jQuery._data( this, "lastToggle" + fn.guid ) || 0 ) % i;
+                       jQuery._data( this, "lastToggle" + fn.guid, lastToggle + 1 );
+
+                       // Make sure that clicks stop
+                       event.preventDefault();
+
+                       // and execute the function
+                       return args[ lastToggle ].apply( this, arguments ) || false;
+               }));
+       },
+
+       hover: function( fnOver, fnOut ) {
+               return this.mouseenter( fnOver ).mouseleave( fnOut || fnOver );
+       }
+});
+
+var liveMap = {
+       focus: "focusin",
+       blur: "focusout",
+       mouseenter: "mouseover",
+       mouseleave: "mouseout"
+};
+
+jQuery.each(["live", "die"], function( i, name ) {
+       jQuery.fn[ name ] = function( types, data, fn, origSelector /* Internal Use Only */ ) {
+               var type, i = 0, match, namespaces, preType,
+                       selector = origSelector || this.selector,
+                       context = origSelector ? this : jQuery( this.context );
+
+               if ( typeof types === "object" && !types.preventDefault ) {
+                       for ( var key in types ) {
+                               context[ name ]( key, data, types[key], selector );
+                       }
+
+                       return this;
+               }
+
+               if ( jQuery.isFunction( data ) ) {
+                       fn = data;
+                       data = undefined;
+               }
+
+               types = (types || "").split(" ");
+
+               while ( (type = types[ i++ ]) != null ) {
+                       match = rnamespaces.exec( type );
+                       namespaces = "";
+
+                       if ( match )  {
+                               namespaces = match[0];
+                               type = type.replace( rnamespaces, "" );
+                       }
+
+                       if ( type === "hover" ) {
+                               types.push( "mouseenter" + namespaces, "mouseleave" + namespaces );
+                               continue;
+                       }
+
+                       preType = type;
+
+                       if ( type === "focus" || type === "blur" ) {
+                               types.push( liveMap[ type ] + namespaces );
+                               type = type + namespaces;
+
+                       } else {
+                               type = (liveMap[ type ] || type) + namespaces;
+                       }
+
+                       if ( name === "live" ) {
+                               // bind live handler
+                               for ( var j = 0, l = context.length; j < l; j++ ) {
+                                       jQuery.event.add( context[j], "live." + liveConvert( type, selector ),
+                                               { data: data, selector: selector, handler: fn, origType: type, origHandler: fn, preType: preType } );
+                               }
+
+                       } else {
+                               // unbind live handler
+                               context.unbind( "live." + liveConvert( type, selector ), fn );
+                       }
+               }
+
+               return this;
+       };
+});
+
+function liveHandler( event ) {
+       var stop, maxLevel, related, match, handleObj, elem, j, i, l, data, close, namespace, ret,
+               elems = [],
+               selectors = [],
+               events = jQuery._data( this, "events" );
+
+       // Make sure we avoid non-left-click bubbling in Firefox (#3861) and disabled elements in IE (#6911)
+       if ( event.liveFired === this || !events || !events.live || event.target.disabled || event.button && event.type === "click" ) {
+               return;
+       }
+
+       if ( event.namespace ) {
+               namespace = new RegExp("(^|\\.)" + event.namespace.split(".").join("\\.(?:.*\\.)?") + "(\\.|$)");
+       }
+
+       event.liveFired = this;
+
+       var live = events.live.slice(0);
+
+       for ( j = 0; j < live.length; j++ ) {
+               handleObj = live[j];
+
+               if ( handleObj.origType.replace( rnamespaces, "" ) === event.type ) {
+                       selectors.push( handleObj.selector );
+
+               } else {
+                       live.splice( j--, 1 );
+               }
+       }
+
+       match = jQuery( event.target ).closest( selectors, event.currentTarget );
+
+       for ( i = 0, l = match.length; i < l; i++ ) {
+               close = match[i];
+
+               for ( j = 0; j < live.length; j++ ) {
+                       handleObj = live[j];
+
+                       if ( close.selector === handleObj.selector && (!namespace || namespace.test( handleObj.namespace )) && !close.elem.disabled ) {
+                               elem = close.elem;
+                               related = null;
+
+                               // Those two events require additional checking
+                               if ( handleObj.preType === "mouseenter" || handleObj.preType === "mouseleave" ) {
+                                       event.type = handleObj.preType;
+                                       related = jQuery( event.relatedTarget ).closest( handleObj.selector )[0];
+                               }
+
+                               if ( !related || related !== elem ) {
+                                       elems.push({ elem: elem, handleObj: handleObj, level: close.level });
+                               }
+                       }
+               }
+       }
+
+       for ( i = 0, l = elems.length; i < l; i++ ) {
+               match = elems[i];
+
+               if ( maxLevel && match.level > maxLevel ) {
+                       break;
+               }
+
+               event.currentTarget = match.elem;
+               event.data = match.handleObj.data;
+               event.handleObj = match.handleObj;
+
+               ret = match.handleObj.origHandler.apply( match.elem, arguments );
+
+               if ( ret === false || event.isPropagationStopped() ) {
+                       maxLevel = match.level;
+
+                       if ( ret === false ) {
+                               stop = false;
+                       }
+                       if ( event.isImmediatePropagationStopped() ) {
+                               break;
+                       }
+               }
+       }
+
+       return stop;
+}
+
+function liveConvert( type, selector ) {
+       return (type && type !== "*" ? type + "." : "") + selector.replace(rperiod, "`").replace(rspace, "&");
+}
+
+jQuery.each( ("blur focus focusin focusout load resize scroll unload click dblclick " +
+       "mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " +
+       "change select submit keydown keypress keyup error").split(" "), function( i, name ) {
+
+       // Handle event binding
+       jQuery.fn[ name ] = function( data, fn ) {
+               if ( fn == null ) {
+                       fn = data;
+                       data = null;
+               }
+
+               return arguments.length > 0 ?
+                       this.bind( name, data, fn ) :
+                       this.trigger( name );
+       };
+
+       if ( jQuery.attrFn ) {
+               jQuery.attrFn[ name ] = true;
+       }
+});
+
+
+/*!
+ * Sizzle CSS Selector Engine
+ *  Copyright 2011, The Dojo Foundation
+ *  Released under the MIT, BSD, and GPL Licenses.
+ *  More information: http://sizzlejs.com/
+ */
+(function(){
+
+var chunker = /((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,
+       done = 0,
+       toString = Object.prototype.toString,
+       hasDuplicate = false,
+       baseHasDuplicate = true,
+       rBackslash = /\\/g,
+       rNonWord = /\W/;
+
+// Here we check if the JavaScript engine is using some sort of
+// optimization where it does not always call our comparision
+// function. If that is the case, discard the hasDuplicate value.
+//   Thus far that includes Google Chrome.
+[0, 0].sort(function() {
+       baseHasDuplicate = false;
+       return 0;
+});
+
+var Sizzle = function( selector, context, results, seed ) {
+       results = results || [];
+       context = context || document;
+
+       var origContext = context;
+
+       if ( context.nodeType !== 1 && context.nodeType !== 9 ) {
+               return [];
+       }
+       
+       if ( !selector || typeof selector !== "string" ) {
+               return results;
+       }
+
+       var m, set, checkSet, extra, ret, cur, pop, i,
+               prune = true,
+               contextXML = Sizzle.isXML( context ),
+               parts = [],
+               soFar = selector;
+       
+       // Reset the position of the chunker regexp (start from head)
+       do {
+               chunker.exec( "" );
+               m = chunker.exec( soFar );
+
+               if ( m ) {
+                       soFar = m[3];
+               
+                       parts.push( m[1] );
+               
+                       if ( m[2] ) {
+                               extra = m[3];
+                               break;
+                       }
+               }
+       } while ( m );
+
+       if ( parts.length > 1 && origPOS.exec( selector ) ) {
+
+               if ( parts.length === 2 && Expr.relative[ parts[0] ] ) {
+                       set = posProcess( parts[0] + parts[1], context );
+
+               } else {
+                       set = Expr.relative[ parts[0] ] ?
+                               [ context ] :
+                               Sizzle( parts.shift(), context );
+
+                       while ( parts.length ) {
+                               selector = parts.shift();
+
+                               if ( Expr.relative[ selector ] ) {
+                                       selector += parts.shift();
+                               }
+                               
+                               set = posProcess( selector, set );
+                       }
+               }
+
+       } else {
+               // Take a shortcut and set the context if the root selector is an ID
+               // (but not if it'll be faster if the inner selector is an ID)
+               if ( !seed && parts.length > 1 && context.nodeType === 9 && !contextXML &&
+                               Expr.match.ID.test(parts[0]) && !Expr.match.ID.test(parts[parts.length - 1]) ) {
+
+                       ret = Sizzle.find( parts.shift(), context, contextXML );
+                       context = ret.expr ?
+                               Sizzle.filter( ret.expr, ret.set )[0] :
+                               ret.set[0];
+               }
+
+               if ( context ) {
+                       ret = seed ?
+                               { expr: parts.pop(), set: makeArray(seed) } :
+                               Sizzle.find( parts.pop(), parts.length === 1 && (parts[0] === "~" || parts[0] === "+") && context.parentNode ? context.parentNode : context, contextXML );
+
+                       set = ret.expr ?
+                               Sizzle.filter( ret.expr, ret.set ) :
+                               ret.set;
+
+                       if ( parts.length > 0 ) {
+                               checkSet = makeArray( set );
+
+                       } else {
+                               prune = false;
+                       }
+
+                       while ( parts.length ) {
+                               cur = parts.pop();
+                               pop = cur;
+
+                               if ( !Expr.relative[ cur ] ) {
+                                       cur = "";
+                               } else {
+                                       pop = parts.pop();
+                               }
+
+                               if ( pop == null ) {
+                                       pop = context;
+                               }
+
+                               Expr.relative[ cur ]( checkSet, pop, contextXML );
+                       }
+
+               } else {
+                       checkSet = parts = [];
+               }
+       }
+
+       if ( !checkSet ) {
+               checkSet = set;
+       }
+
+       if ( !checkSet ) {
+               Sizzle.error( cur || selector );
+       }
+
+       if ( toString.call(checkSet) === "[object Array]" ) {
+               if ( !prune ) {
+                       results.push.apply( results, checkSet );
+
+               } else if ( context && context.nodeType === 1 ) {
+                       for ( i = 0; checkSet[i] != null; i++ ) {
+                               if ( checkSet[i] && (checkSet[i] === true || checkSet[i].nodeType === 1 && Sizzle.contains(context, checkSet[i])) ) {
+                                       results.push( set[i] );
+                               }
+                       }
+
+               } else {
+                       for ( i = 0; checkSet[i] != null; i++ ) {
+                               if ( checkSet[i] && checkSet[i].nodeType === 1 ) {
+                                       results.push( set[i] );
+                               }
+                       }
+               }
+
+       } else {
+               makeArray( checkSet, results );
+       }
+
+       if ( extra ) {
+               Sizzle( extra, origContext, results, seed );
+               Sizzle.uniqueSort( results );
+       }
+
+       return results;
+};
+
+Sizzle.uniqueSort = function( results ) {
+       if ( sortOrder ) {
+               hasDuplicate = baseHasDuplicate;
+               results.sort( sortOrder );
+
+               if ( hasDuplicate ) {
+                       for ( var i = 1; i < results.length; i++ ) {
+                               if ( results[i] === results[ i - 1 ] ) {
+                                       results.splice( i--, 1 );
+                               }
+                       }
+               }
+       }
+
+       return results;
+};
+
+Sizzle.matches = function( expr, set ) {
+       return Sizzle( expr, null, null, set );
+};
+
+Sizzle.matchesSelector = function( node, expr ) {
+       return Sizzle( expr, null, null, [node] ).length > 0;
+};
+
+Sizzle.find = function( expr, context, isXML ) {
+       var set;
+
+       if ( !expr ) {
+               return [];
+       }
+
+       for ( var i = 0, l = Expr.order.length; i < l; i++ ) {
+               var match,
+                       type = Expr.order[i];
+               
+               if ( (match = Expr.leftMatch[ type ].exec( expr )) ) {
+                       var left = match[1];
+                       match.splice( 1, 1 );
+
+                       if ( left.substr( left.length - 1 ) !== "\\" ) {
+                               match[1] = (match[1] || "").replace( rBackslash, "" );
+                               set = Expr.find[ type ]( match, context, isXML );
+
+                               if ( set != null ) {
+                                       expr = expr.replace( Expr.match[ type ], "" );
+                                       break;
+                               }
+                       }
+               }
+       }
+
+       if ( !set ) {
+               set = typeof context.getElementsByTagName !== "undefined" ?
+                       context.getElementsByTagName( "*" ) :
+                       [];
+       }
+
+       return { set: set, expr: expr };
+};
+
+Sizzle.filter = function( expr, set, inplace, not ) {
+       var match, anyFound,
+               old = expr,
+               result = [],
+               curLoop = set,
+               isXMLFilter = set && set[0] && Sizzle.isXML( set[0] );
+
+       while ( expr && set.length ) {
+               for ( var type in Expr.filter ) {
+                       if ( (match = Expr.leftMatch[ type ].exec( expr )) != null && match[2] ) {
+                               var found, item,
+                                       filter = Expr.filter[ type ],
+                                       left = match[1];
+
+                               anyFound = false;
+
+                               match.splice(1,1);
+
+                               if ( left.substr( left.length - 1 ) === "\\" ) {
+                                       continue;
+                               }
+
+                               if ( curLoop === result ) {
+                                       result = [];
+                               }
+
+                               if ( Expr.preFilter[ type ] ) {
+                                       match = Expr.preFilter[ type ]( match, curLoop, inplace, result, not, isXMLFilter );
+
+                                       if ( !match ) {
+                                               anyFound = found = true;
+
+                                       } else if ( match === true ) {
+                                               continue;
+                                       }
+                               }
+
+                               if ( match ) {
+                                       for ( var i = 0; (item = curLoop[i]) != null; i++ ) {
+                                               if ( item ) {
+                                                       found = filter( item, match, i, curLoop );
+                                                       var pass = not ^ !!found;
+
+                                                       if ( inplace && found != null ) {
+                                                               if ( pass ) {
+                                                                       anyFound = true;
+
+                                                               } else {
+                                                                       curLoop[i] = false;
+                                                               }
+
+                                                       } else if ( pass ) {
+                                                               result.push( item );
+                                                               anyFound = true;
+                                                       }
+                                               }
+                                       }
+                               }
+
+                               if ( found !== undefined ) {
+                                       if ( !inplace ) {
+                                               curLoop = result;
+                                       }
+
+                                       expr = expr.replace( Expr.match[ type ], "" );
+
+                                       if ( !anyFound ) {
+                                               return [];
+                                       }
+
+                                       break;
+                               }
+                       }
+               }
+
+               // Improper expression
+               if ( expr === old ) {
+                       if ( anyFound == null ) {
+                               Sizzle.error( expr );
+
+                       } else {
+                               break;
+                       }
+               }
+
+               old = expr;
+       }
+
+       return curLoop;
+};
+
+Sizzle.error = function( msg ) {
+       throw "Syntax error, unrecognized expression: " + msg;
+};
+
+var Expr = Sizzle.selectors = {
+       order: [ "ID", "NAME", "TAG" ],
+
+       match: {
+               ID: /#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,
+               CLASS: /\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,
+               NAME: /\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,
+               ATTR: /\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,
+               TAG: /^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,
+               CHILD: /:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,
+               POS: /:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,
+               PSEUDO: /:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/
+       },
+
+       leftMatch: {},
+
+       attrMap: {
+               "class": "className",
+               "for": "htmlFor"
+       },
+
+       attrHandle: {
+               href: function( elem ) {
+                       return elem.getAttribute( "href" );
+               },
+               type: function( elem ) {
+                       return elem.getAttribute( "type" );
+               }
+       },
+
+       relative: {
+               "+": function(checkSet, part){
+                       var isPartStr = typeof part === "string",
+                               isTag = isPartStr && !rNonWord.test( part ),
+                               isPartStrNotTag = isPartStr && !isTag;
+
+                       if ( isTag ) {
+                               part = part.toLowerCase();
+                       }
+
+                       for ( var i = 0, l = checkSet.length, elem; i < l; i++ ) {
+                               if ( (elem = checkSet[i]) ) {
+                                       while ( (elem = elem.previousSibling) && elem.nodeType !== 1 ) {}
+
+                                       checkSet[i] = isPartStrNotTag || elem && elem.nodeName.toLowerCase() === part ?
+                                               elem || false :
+                                               elem === part;
+                               }
+                       }
+
+                       if ( isPartStrNotTag ) {
+                               Sizzle.filter( part, checkSet, true );
+                       }
+               },
+
+               ">": function( checkSet, part ) {
+                       var elem,
+                               isPartStr = typeof part === "string",
+                               i = 0,
+                               l = checkSet.length;
+
+                       if ( isPartStr && !rNonWord.test( part ) ) {
+                               part = part.toLowerCase();
+
+                               for ( ; i < l; i++ ) {
+                                       elem = checkSet[i];
+
+                                       if ( elem ) {
+                                               var parent = elem.parentNode;
+                                               checkSet[i] = parent.nodeName.toLowerCase() === part ? parent : false;
+                                       }
+                               }
+
+                       } else {
+                               for ( ; i < l; i++ ) {
+                                       elem = checkSet[i];
+
+                                       if ( elem ) {
+                                               checkSet[i] = isPartStr ?
+                                                       elem.parentNode :
+                                                       elem.parentNode === part;
+                                       }
+                               }
+
+                               if ( isPartStr ) {
+                                       Sizzle.filter( part, checkSet, true );
+                               }
+                       }
+               },
+
+               "": function(checkSet, part, isXML){
+                       var nodeCheck,
+                               doneName = done++,
+                               checkFn = dirCheck;
+
+                       if ( typeof part === "string" && !rNonWord.test( part ) ) {
+                               part = part.toLowerCase();
+                               nodeCheck = part;
+                               checkFn = dirNodeCheck;
+                       }
+
+                       checkFn( "parentNode", part, doneName, checkSet, nodeCheck, isXML );
+               },
+
+               "~": function( checkSet, part, isXML ) {
+                       var nodeCheck,
+                               doneName = done++,
+                               checkFn = dirCheck;
+
+                       if ( typeof part === "string" && !rNonWord.test( part ) ) {
+                               part = part.toLowerCase();
+                               nodeCheck = part;
+                               checkFn = dirNodeCheck;
+                       }
+
+                       checkFn( "previousSibling", part, doneName, checkSet, nodeCheck, isXML );
+               }
+       },
+
+       find: {
+               ID: function( match, context, isXML ) {
+                       if ( typeof context.getElementById !== "undefined" && !isXML ) {
+                               var m = context.getElementById(match[1]);
+                               // Check parentNode to catch when Blackberry 4.6 returns
+                               // nodes that are no longer in the document #6963
+                               return m && m.parentNode ? [m] : [];
+                       }
+               },
+
+               NAME: function( match, context ) {
+                       if ( typeof context.getElementsByName !== "undefined" ) {
+                               var ret = [],
+                                       results = context.getElementsByName( match[1] );
+
+                               for ( var i = 0, l = results.length; i < l; i++ ) {
+                                       if ( results[i].getAttribute("name") === match[1] ) {
+                                               ret.push( results[i] );
+                                       }
+                               }
+
+                               return ret.length === 0 ? null : ret;
+                       }
+               },
+
+               TAG: function( match, context ) {
+                       if ( typeof context.getElementsByTagName !== "undefined" ) {
+                               return context.getElementsByTagName( match[1] );
+                       }
+               }
+       },
+       preFilter: {
+               CLASS: function( match, curLoop, inplace, result, not, isXML ) {
+                       match = " " + match[1].replace( rBackslash, "" ) + " ";
+
+                       if ( isXML ) {
+                               return match;
+                       }
+
+                       for ( var i = 0, elem; (elem = curLoop[i]) != null; i++ ) {
+                               if ( elem ) {
+                                       if ( not ^ (elem.className && (" " + elem.className + " ").replace(/[\t\n\r]/g, " ").indexOf(match) >= 0) ) {
+                                               if ( !inplace ) {
+                                                       result.push( elem );
+                                               }
+
+                                       } else if ( inplace ) {
+                                               curLoop[i] = false;
+                                       }
+                               }
+                       }
+
+                       return false;
+               },
+
+               ID: function( match ) {
+                       return match[1].replace( rBackslash, "" );
+               },
+
+               TAG: function( match, curLoop ) {
+                       return match[1].replace( rBackslash, "" ).toLowerCase();
+               },
+
+               CHILD: function( match ) {
+                       if ( match[1] === "nth" ) {
+                               if ( !match[2] ) {
+                                       Sizzle.error( match[0] );
+                               }
+
+                               match[2] = match[2].replace(/^\+|\s*/g, '');
+
+                               // parse equations like 'even', 'odd', '5', '2n', '3n+2', '4n-1', '-n+6'
+                               var test = /(-?)(\d*)(?:n([+\-]?\d*))?/.exec(
+                                       match[2] === "even" && "2n" || match[2] === "odd" && "2n+1" ||
+                                       !/\D/.test( match[2] ) && "0n+" + match[2] || match[2]);
+
+                               // calculate the numbers (first)n+(last) including if they are negative
+                               match[2] = (test[1] + (test[2] || 1)) - 0;
+                               match[3] = test[3] - 0;
+                       }
+                       else if ( match[2] ) {
+                               Sizzle.error( match[0] );
+                       }
+
+                       // TODO: Move to normal caching system
+                       match[0] = done++;
+
+                       return match;
+               },
+
+               ATTR: function( match, curLoop, inplace, result, not, isXML ) {
+                       var name = match[1] = match[1].replace( rBackslash, "" );
+                       
+                       if ( !isXML && Expr.attrMap[name] ) {
+                               match[1] = Expr.attrMap[name];
+                       }
+
+                       // Handle if an un-quoted value was used
+                       match[4] = ( match[4] || match[5] || "" ).replace( rBackslash, "" );
+
+                       if ( match[2] === "~=" ) {
+                               match[4] = " " + match[4] + " ";
+                       }
+
+                       return match;
+               },
+
+               PSEUDO: function( match, curLoop, inplace, result, not ) {
+                       if ( match[1] === "not" ) {
+                               // If we're dealing with a complex expression, or a simple one
+                               if ( ( chunker.exec(match[3]) || "" ).length > 1 || /^\w/.test(match[3]) ) {
+                                       match[3] = Sizzle(match[3], null, null, curLoop);
+
+                               } else {
+                                       var ret = Sizzle.filter(match[3], curLoop, inplace, true ^ not);
+
+                                       if ( !inplace ) {
+                                               result.push.apply( result, ret );
+                                       }
+
+                                       return false;
+                               }
+
+                       } else if ( Expr.match.POS.test( match[0] ) || Expr.match.CHILD.test( match[0] ) ) {
+                               return true;
+                       }
+                       
+                       return match;
+               },
+
+               POS: function( match ) {
+                       match.unshift( true );
+
+                       return match;
+               }
+       },
+       
+       filters: {
+               enabled: function( elem ) {
+                       return elem.disabled === false && elem.type !== "hidden";
+               },
+
+               disabled: function( elem ) {
+                       return elem.disabled === true;
+               },
+
+               checked: function( elem ) {
+                       return elem.checked === true;
+               },
+               
+               selected: function( elem ) {
+                       // Accessing this property makes selected-by-default
+                       // options in Safari work properly
+                       if ( elem.parentNode ) {
+                               elem.parentNode.selectedIndex;
+                       }
+                       
+                       return elem.selected === true;
+               },
+
+               parent: function( elem ) {
+                       return !!elem.firstChild;
+               },
+
+               empty: function( elem ) {
+                       return !elem.firstChild;
+               },
+
+               has: function( elem, i, match ) {
+                       return !!Sizzle( match[3], elem ).length;
+               },
+
+               header: function( elem ) {
+                       return (/h\d/i).test( elem.nodeName );
+               },
+
+               text: function( elem ) {
+                       // IE6 and 7 will map elem.type to 'text' for new HTML5 types (search, etc) 
+                       // use getAttribute instead to test this case
+                       return "text" === elem.getAttribute( 'type' );
+               },
+               radio: function( elem ) {
+                       return "radio" === elem.type;
+               },
+
+               checkbox: function( elem ) {
+                       return "checkbox" === elem.type;
+               },
+
+               file: function( elem ) {
+                       return "file" === elem.type;
+               },
+               password: function( elem ) {
+                       return "password" === elem.type;
+               },
+
+               submit: function( elem ) {
+                       return "submit" === elem.type;
+               },
+
+               image: function( elem ) {
+                       return "image" === elem.type;
+               },
+
+               reset: function( elem ) {
+                       return "reset" === elem.type;
+               },
+
+               button: function( elem ) {
+                       return "button" === elem.type || elem.nodeName.toLowerCase() === "button";
+               },
+
+               input: function( elem ) {
+                       return (/input|select|textarea|button/i).test( elem.nodeName );
+               }
+       },
+       setFilters: {
+               first: function( elem, i ) {
+                       return i === 0;
+               },
+
+               last: function( elem, i, match, array ) {
+                       return i === array.length - 1;
+               },
+
+               even: function( elem, i ) {
+                       return i % 2 === 0;
+               },
+
+               odd: function( elem, i ) {
+                       return i % 2 === 1;
+               },
+
+               lt: function( elem, i, match ) {
+                       return i < match[3] - 0;
+               },
+
+               gt: function( elem, i, match ) {
+                       return i > match[3] - 0;
+               },
+
+               nth: function( elem, i, match ) {
+                       return match[3] - 0 === i;
+               },
+
+               eq: function( elem, i, match ) {
+                       return match[3] - 0 === i;
+               }
+       },
+       filter: {
+               PSEUDO: function( elem, match, i, array ) {
+                       var name = match[1],
+                               filter = Expr.filters[ name ];
+
+                       if ( filter ) {
+                               return filter( elem, i, match, array );
+
+                       } else if ( name === "contains" ) {
+                               return (elem.textContent || elem.innerText || Sizzle.getText([ elem ]) || "").indexOf(match[3]) >= 0;
+
+                       } else if ( name === "not" ) {
+                               var not = match[3];
+
+                               for ( var j = 0, l = not.length; j < l; j++ ) {
+                                       if ( not[j] === elem ) {
+                                               return false;
+                                       }
+                               }
+
+                               return true;
+
+                       } else {
+                               Sizzle.error( name );
+                       }
+               },
+
+               CHILD: function( elem, match ) {
+                       var type = match[1],
+                               node = elem;
+
+                       switch ( type ) {
+                               case "only":
+                               case "first":
+                                       while ( (node = node.previousSibling) )  {
+                                               if ( node.nodeType === 1 ) { 
+                                                       return false; 
+                                               }
+                                       }
+
+                                       if ( type === "first" ) { 
+                                               return true; 
+                                       }
+
+                                       node = elem;
+
+                               case "last":
+                                       while ( (node = node.nextSibling) )      {
+                                               if ( node.nodeType === 1 ) { 
+                                                       return false; 
+                                               }
+                                       }
+
+                                       return true;
+
+                               case "nth":
+                                       var first = match[2],
+                                               last = match[3];
+
+                                       if ( first === 1 && last === 0 ) {
+                                               return true;
+                                       }
+                                       
+                                       var doneName = match[0],
+                                               parent = elem.parentNode;
+       
+                                       if ( parent && (parent.sizcache !== doneName || !elem.nodeIndex) ) {
+                                               var count = 0;
+                                               
+                                               for ( node = parent.firstChild; node; node = node.nextSibling ) {
+                                                       if ( node.nodeType === 1 ) {
+                                                               node.nodeIndex = ++count;
+                                                       }
+                                               } 
+
+                                               parent.sizcache = doneName;
+                                       }
+                                       
+                                       var diff = elem.nodeIndex - last;
+
+                                       if ( first === 0 ) {
+                                               return diff === 0;
+
+                                       } else {
+                                               return ( diff % first === 0 && diff / first >= 0 );
+                                       }
+                       }
+               },
+
+               ID: function( elem, match ) {
+                       return elem.nodeType === 1 && elem.getAttribute("id") === match;
+               },
+
+               TAG: function( elem, match ) {
+                       return (match === "*" && elem.nodeType === 1) || elem.nodeName.toLowerCase() === match;
+               },
+               
+               CLASS: function( elem, match ) {
+                       return (" " + (elem.className || elem.getAttribute("class")) + " ")
+                               .indexOf( match ) > -1;
+               },
+
+               ATTR: function( elem, match ) {
+                       var name = match[1],
+                               result = Expr.attrHandle[ name ] ?
+                                       Expr.attrHandle[ name ]( elem ) :
+                                       elem[ name ] != null ?
+                                               elem[ name ] :
+                                               elem.getAttribute( name ),
+                               value = result + "",
+                               type = match[2],
+                               check = match[4];
+
+                       return result == null ?
+                               type === "!=" :
+                               type === "=" ?
+                               value === check :
+                               type === "*=" ?
+                               value.indexOf(check) >= 0 :
+                               type === "~=" ?
+                               (" " + value + " ").indexOf(check) >= 0 :
+                               !check ?
+                               value && result !== false :
+                               type === "!=" ?
+                               value !== check :
+                               type === "^=" ?
+                               value.indexOf(check) === 0 :
+                               type === "$=" ?
+                               value.substr(value.length - check.length) === check :
+                               type === "|=" ?
+                               value === check || value.substr(0, check.length + 1) === check + "-" :
+                               false;
+               },
+
+               POS: function( elem, match, i, array ) {
+                       var name = match[2],
+                               filter = Expr.setFilters[ name ];
+
+                       if ( filter ) {
+                               return filter( elem, i, match, array );
+                       }
+               }
+       }
+};
+
+var origPOS = Expr.match.POS,
+       fescape = function(all, num){
+               return "\\" + (num - 0 + 1);
+       };
+
+for ( var type in Expr.match ) {
+       Expr.match[ type ] = new RegExp( Expr.match[ type ].source + (/(?![^\[]*\])(?![^\(]*\))/.source) );
+       Expr.leftMatch[ type ] = new RegExp( /(^(?:.|\r|\n)*?)/.source + Expr.match[ type ].source.replace(/\\(\d+)/g, fescape) );
+}
+
+var makeArray = function( array, results ) {
+       array = Array.prototype.slice.call( array, 0 );
+
+       if ( results ) {
+               results.push.apply( results, array );
+               return results;
+       }
+       
+       return array;
+};
+
+// Perform a simple check to determine if the browser is capable of
+// converting a NodeList to an array using builtin methods.
+// Also verifies that the returned array holds DOM nodes
+// (which is not the case in the Blackberry browser)
+try {
+       Array.prototype.slice.call( document.documentElement.childNodes, 0 )[0].nodeType;
+
+// Provide a fallback method if it does not work
+} catch( e ) {
+       makeArray = function( array, results ) {
+               var i = 0,
+                       ret = results || [];
+
+               if ( toString.call(array) === "[object Array]" ) {
+                       Array.prototype.push.apply( ret, array );
+
+               } else {
+                       if ( typeof array.length === "number" ) {
+                               for ( var l = array.length; i < l; i++ ) {
+                                       ret.push( array[i] );
+                               }
+
+                       } else {
+                               for ( ; array[i]; i++ ) {
+                                       ret.push( array[i] );
+                               }
+                       }
+               }
+
+               return ret;
+       };
+}
+
+var sortOrder, siblingCheck;
+
+if ( document.documentElement.compareDocumentPosition ) {
+       sortOrder = function( a, b ) {
+               if ( a === b ) {
+                       hasDuplicate = true;
+                       return 0;
+               }
+
+               if ( !a.compareDocumentPosition || !b.compareDocumentPosition ) {
+                       return a.compareDocumentPosition ? -1 : 1;
+               }
+
+               return a.compareDocumentPosition(b) & 4 ? -1 : 1;
+       };
+
+} else {
+       sortOrder = function( a, b ) {
+               var al, bl,
+                       ap = [],
+                       bp = [],
+                       aup = a.parentNode,
+                       bup = b.parentNode,
+                       cur = aup;
+
+               // The nodes are identical, we can exit early
+               if ( a === b ) {
+                       hasDuplicate = true;
+                       return 0;
+
+               // If the nodes are siblings (or identical) we can do a quick check
+               } else if ( aup === bup ) {
+                       return siblingCheck( a, b );
+
+               // If no parents were found then the nodes are disconnected
+               } else if ( !aup ) {
+                       return -1;
+
+               } else if ( !bup ) {
+                       return 1;
+               }
+
+               // Otherwise they're somewhere else in the tree so we need
+               // to build up a full list of the parentNodes for comparison
+               while ( cur ) {
+                       ap.unshift( cur );
+                       cur = cur.parentNode;
+               }
+
+               cur = bup;
+
+               while ( cur ) {
+                       bp.unshift( cur );
+                       cur = cur.parentNode;
+               }
+
+               al = ap.length;
+               bl = bp.length;
+
+               // Start walking down the tree looking for a discrepancy
+               for ( var i = 0; i < al && i < bl; i++ ) {
+                       if ( ap[i] !== bp[i] ) {
+                               return siblingCheck( ap[i], bp[i] );
+                       }
+               }
+
+               // We ended someplace up the tree so do a sibling check
+               return i === al ?
+                       siblingCheck( a, bp[i], -1 ) :
+                       siblingCheck( ap[i], b, 1 );
+       };
+
+       siblingCheck = function( a, b, ret ) {
+               if ( a === b ) {
+                       return ret;
+               }
+
+               var cur = a.nextSibling;
+
+               while ( cur ) {
+                       if ( cur === b ) {
+                               return -1;
+                       }
+
+                       cur = cur.nextSibling;
+               }
+
+               return 1;
+       };
+}
+
+// Utility function for retreiving the text value of an array of DOM nodes
+Sizzle.getText = function( elems ) {
+       var ret = "", elem;
+
+       for ( var i = 0; elems[i]; i++ ) {
+               elem = elems[i];
+
+               // Get the text from text nodes and CDATA nodes
+               if ( elem.nodeType === 3 || elem.nodeType === 4 ) {
+                       ret += elem.nodeValue;
+
+               // Traverse everything else, except comment nodes
+               } else if ( elem.nodeType !== 8 ) {
+                       ret += Sizzle.getText( elem.childNodes );
+               }
+       }
+
+       return ret;
+};
+
+// Check to see if the browser returns elements by name when
+// querying by getElementById (and provide a workaround)
+(function(){
+       // We're going to inject a fake input element with a specified name
+       var form = document.createElement("div"),
+               id = "script" + (new Date()).getTime(),
+               root = document.documentElement;
+
+       form.innerHTML = "<a name='" + id + "'/>";
+
+       // Inject it into the root element, check its status, and remove it quickly
+       root.insertBefore( form, root.firstChild );
+
+       // The workaround has to do additional checks after a getElementById
+       // Which slows things down for other browsers (hence the branching)
+       if ( document.getElementById( id ) ) {
+               Expr.find.ID = function( match, context, isXML ) {
+                       if ( typeof context.getElementById !== "undefined" && !isXML ) {
+                               var m = context.getElementById(match[1]);
+
+                               return m ?
+                                       m.id === match[1] || typeof m.getAttributeNode !== "undefined" && m.getAttributeNode("id").nodeValue === match[1] ?
+                                               [m] :
+                                               undefined :
+                                       [];
+                       }
+               };
+
+               Expr.filter.ID = function( elem, match ) {
+                       var node = typeof elem.getAttributeNode !== "undefined" && elem.getAttributeNode("id");
+
+                       return elem.nodeType === 1 && node && node.nodeValue === match;
+               };
+       }
+
+       root.removeChild( form );
+
+       // release memory in IE
+       root = form = null;
+})();
+
+(function(){
+       // Check to see if the browser returns only elements
+       // when doing getElementsByTagName("*")
+
+       // Create a fake element
+       var div = document.createElement("div");
+       div.appendChild( document.createComment("") );
+
+       // Make sure no comments are found
+       if ( div.getElementsByTagName("*").length > 0 ) {
+               Expr.find.TAG = function( match, context ) {
+                       var results = context.getElementsByTagName( match[1] );
+
+                       // Filter out possible comments
+                       if ( match[1] === "*" ) {
+                               var tmp = [];
+
+                               for ( var i = 0; results[i]; i++ ) {
+                                       if ( results[i].nodeType === 1 ) {
+                                               tmp.push( results[i] );
+                                       }
+                               }
+
+                               results = tmp;
+                       }
+
+                       return results;
+               };
+       }
+
+       // Check to see if an attribute returns normalized href attributes
+       div.innerHTML = "<a href='#'></a>";
+
+       if ( div.firstChild && typeof div.firstChild.getAttribute !== "undefined" &&
+                       div.firstChild.getAttribute("href") !== "#" ) {
+
+               Expr.attrHandle.href = function( elem ) {
+                       return elem.getAttribute( "href", 2 );
+               };
+       }
+
+       // release memory in IE
+       div = null;
+})();
+
+if ( document.querySelectorAll ) {
+       (function(){
+               var oldSizzle = Sizzle,
+                       div = document.createElement("div"),
+                       id = "__sizzle__";
+
+               div.innerHTML = "<p class='TEST'></p>";
+
+               // Safari can't handle uppercase or unicode characters when
+               // in quirks mode.
+               if ( div.querySelectorAll && div.querySelectorAll(".TEST").length === 0 ) {
+                       return;
+               }
+       
+               Sizzle = function( query, context, extra, seed ) {
+                       context = context || document;
+
+                       // Only use querySelectorAll on non-XML documents
+                       // (ID selectors don't work in non-HTML documents)
+                       if ( !seed && !Sizzle.isXML(context) ) {
+                               // See if we find a selector to speed up
+                               var match = /^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec( query );
+                               
+                               if ( match && (context.nodeType === 1 || context.nodeType === 9) ) {
+                                       // Speed-up: Sizzle("TAG")
+                                       if ( match[1] ) {
+                                               return makeArray( context.getElementsByTagName( query ), extra );
+                                       
+                                       // Speed-up: Sizzle(".CLASS")
+                                       } else if ( match[2] && Expr.find.CLASS && context.getElementsByClassName ) {
+                                               return makeArray( context.getElementsByClassName( match[2] ), extra );
+                                       }
+                               }
+                               
+                               if ( context.nodeType === 9 ) {
+                                       // Speed-up: Sizzle("body")
+                                       // The body element only exists once, optimize finding it
+                                       if ( query === "body" && context.body ) {
+                                               return makeArray( [ context.body ], extra );
+                                               
+                                       // Speed-up: Sizzle("#ID")
+                                       } else if ( match && match[3] ) {
+                                               var elem = context.getElementById( match[3] );
+
+                                               // Check parentNode to catch when Blackberry 4.6 returns
+                                               // nodes that are no longer in the document #6963
+                                               if ( elem && elem.parentNode ) {
+                                                       // Handle the case where IE and Opera return items
+                                                       // by name instead of ID
+                                                       if ( elem.id === match[3] ) {
+                                                               return makeArray( [ elem ], extra );
+                                                       }
+                                                       
+                                               } else {
+                                                       return makeArray( [], extra );
+                                               }
+                                       }
+                                       
+                                       try {
+                                               return makeArray( context.querySelectorAll(query), extra );
+                                       } catch(qsaError) {}
+
+                               // qSA works strangely on Element-rooted queries
+                               // We can work around this by specifying an extra ID on the root
+                               // and working up from there (Thanks to Andrew Dupont for the technique)
+                               // IE 8 doesn't work on object elements
+                               } else if ( context.nodeType === 1 && context.nodeName.toLowerCase() !== "object" ) {
+                                       var oldContext = context,
+                                               old = context.getAttribute( "id" ),
+                                               nid = old || id,
+                                               hasParent = context.parentNode,
+                                               relativeHierarchySelector = /^\s*[+~]/.test( query );
+
+                                       if ( !old ) {
+                                               context.setAttribute( "id", nid );
+                                       } else {
+                                               nid = nid.replace( /'/g, "\\$&" );
+                                       }
+                                       if ( relativeHierarchySelector && hasParent ) {
+                                               context = context.parentNode;
+                                       }
+
+                                       try {
+                                               if ( !relativeHierarchySelector || hasParent ) {
+                                                       return makeArray( context.querySelectorAll( "[id='" + nid + "'] " + query ), extra );
+                                               }
+
+                                       } catch(pseudoError) {
+                                       } finally {
+                                               if ( !old ) {
+                                                       oldContext.removeAttribute( "id" );
+                                               }
+                                       }
+                               }
+                       }
+               
+                       return oldSizzle(query, context, extra, seed);
+               };
+
+               for ( var prop in oldSizzle ) {
+                       Sizzle[ prop ] = oldSizzle[ prop ];
+               }
+
+               // release memory in IE
+               div = null;
+       })();
+}
+
+(function(){
+       var html = document.documentElement,
+               matches = html.matchesSelector || html.mozMatchesSelector || html.webkitMatchesSelector || html.msMatchesSelector,
+               pseudoWorks = false;
+
+       try {
+               // This should fail with an exception
+               // Gecko does not error, returns false instead
+               matches.call( document.documentElement, "[test!='']:sizzle" );
+       
+       } catch( pseudoError ) {
+               pseudoWorks = true;
+       }
+
+       if ( matches ) {
+               Sizzle.matchesSelector = function( node, expr ) {
+                       // Make sure that attribute selectors are quoted
+                       expr = expr.replace(/\=\s*([^'"\]]*)\s*\]/g, "='$1']");
+
+                       if ( !Sizzle.isXML( node ) ) {
+                               try { 
+                                       if ( pseudoWorks || !Expr.match.PSEUDO.test( expr ) && !/!=/.test( expr ) ) {
+                                               return matches.call( node, expr );
+                                       }
+                               } catch(e) {}
+                       }
+
+                       return Sizzle(expr, null, null, [node]).length > 0;
+               };
+       }
+})();
+
+(function(){
+       var div = document.createElement("div");
+
+       div.innerHTML = "<div class='test e'></div><div class='test'></div>";
+
+       // Opera can't find a second classname (in 9.6)
+       // Also, make sure that getElementsByClassName actually exists
+       if ( !div.getElementsByClassName || div.getElementsByClassName("e").length === 0 ) {
+               return;
+       }
+
+       // Safari caches class attributes, doesn't catch changes (in 3.2)
+       div.lastChild.className = "e";
+
+       if ( div.getElementsByClassName("e").length === 1 ) {
+               return;
+       }
+       
+       Expr.order.splice(1, 0, "CLASS");
+       Expr.find.CLASS = function( match, context, isXML ) {
+               if ( typeof context.getElementsByClassName !== "undefined" && !isXML ) {
+                       return context.getElementsByClassName(match[1]);
+               }
+       };
+
+       // release memory in IE
+       div = null;
+})();
+
+function dirNodeCheck( dir, cur, doneName, checkSet, nodeCheck, isXML ) {
+       for ( var i = 0, l = checkSet.length; i < l; i++ ) {
+               var elem = checkSet[i];
+
+               if ( elem ) {
+                       var match = false;
+
+                       elem = elem[dir];
+
+                       while ( elem ) {
+                               if ( elem.sizcache === doneName ) {
+                                       match = checkSet[elem.sizset];
+                                       break;
+                               }
+
+                               if ( elem.nodeType === 1 && !isXML ){
+                                       elem.sizcache = doneName;
+                                       elem.sizset = i;
+                               }
+
+                               if ( elem.nodeName.toLowerCase() === cur ) {
+                                       match = elem;
+                                       break;
+                               }
+
+                               elem = elem[dir];
+                       }
+
+                       checkSet[i] = match;
+               }
+       }
+}
+
+function dirCheck( dir, cur, doneName, checkSet, nodeCheck, isXML ) {
+       for ( var i = 0, l = checkSet.length; i < l; i++ ) {
+               var elem = checkSet[i];
+
+               if ( elem ) {
+                       var match = false;
+                       
+                       elem = elem[dir];
+
+                       while ( elem ) {
+                               if ( elem.sizcache === doneName ) {
+                                       match = checkSet[elem.sizset];
+                                       break;
+                               }
+
+                               if ( elem.nodeType === 1 ) {
+                                       if ( !isXML ) {
+                                               elem.sizcache = doneName;
+                                               elem.sizset = i;
+                                       }
+
+                                       if ( typeof cur !== "string" ) {
+                                               if ( elem === cur ) {
+                                                       match = true;
+                                                       break;
+                                               }
+
+                                       } else if ( Sizzle.filter( cur, [elem] ).length > 0 ) {
+                                               match = elem;
+                                               break;
+                                       }
+                               }
+
+                               elem = elem[dir];
+                       }
+
+                       checkSet[i] = match;
+               }
+       }
+}
+
+if ( document.documentElement.contains ) {
+       Sizzle.contains = function( a, b ) {
+               return a !== b && (a.contains ? a.contains(b) : true);
+       };
+
+} else if ( document.documentElement.compareDocumentPosition ) {
+       Sizzle.contains = function( a, b ) {
+               return !!(a.compareDocumentPosition(b) & 16);
+       };
+
+} else {
+       Sizzle.contains = function() {
+               return false;
+       };
+}
+
+Sizzle.isXML = function( elem ) {
+       // documentElement is verified for cases where it doesn't yet exist
+       // (such as loading iframes in IE - #4833) 
+       var documentElement = (elem ? elem.ownerDocument || elem : 0).documentElement;
+
+       return documentElement ? documentElement.nodeName !== "HTML" : false;
+};
+
+var posProcess = function( selector, context ) {
+       var match,
+               tmpSet = [],
+               later = "",
+               root = context.nodeType ? [context] : context;
+
+       // Position selectors must be done after the filter
+       // And so must :not(positional) so we move all PSEUDOs to the end
+       while ( (match = Expr.match.PSEUDO.exec( selector )) ) {
+               later += match[0];
+               selector = selector.replace( Expr.match.PSEUDO, "" );
+       }
+
+       selector = Expr.relative[selector] ? selector + "*" : selector;
+
+       for ( var i = 0, l = root.length; i < l; i++ ) {
+               Sizzle( selector, root[i], tmpSet );
+       }
+
+       return Sizzle.filter( later, tmpSet );
+};
+
+// EXPOSE
+jQuery.find = Sizzle;
+jQuery.expr = Sizzle.selectors;
+jQuery.expr[":"] = jQuery.expr.filters;
+jQuery.unique = Sizzle.uniqueSort;
+jQuery.text = Sizzle.getText;
+jQuery.isXMLDoc = Sizzle.isXML;
+jQuery.contains = Sizzle.contains;
+
+
+})();
+
+
+var runtil = /Until$/,
+       rparentsprev = /^(?:parents|prevUntil|prevAll)/,
+       // Note: This RegExp should be improved, or likely pulled from Sizzle
+       rmultiselector = /,/,
+       isSimple = /^.[^:#\[\.,]*$/,
+       slice = Array.prototype.slice,
+       POS = jQuery.expr.match.POS,
+       // methods guaranteed to produce a unique set when starting from a unique set
+       guaranteedUnique = {
+               children: true,
+               contents: true,
+               next: true,
+               prev: true
+       };
+
+jQuery.fn.extend({
+       find: function( selector ) {
+               var ret = this.pushStack( "", "find", selector ),
+                       length = 0;
+
+               for ( var i = 0, l = this.length; i < l; i++ ) {
+                       length = ret.length;
+                       jQuery.find( selector, this[i], ret );
+
+                       if ( i > 0 ) {
+                               // Make sure that the results are unique
+                               for ( var n = length; n < ret.length; n++ ) {
+                                       for ( var r = 0; r < length; r++ ) {
+                                               if ( ret[r] === ret[n] ) {
+                                                       ret.splice(n--, 1);
+                                                       break;
+                                               }
+                                       }
+                               }
+                       }
+               }
+
+               return ret;
+       },
+
+       has: function( target ) {
+               var targets = jQuery( target );
+               return this.filter(function() {
+                       for ( var i = 0, l = targets.length; i < l; i++ ) {
+                               if ( jQuery.contains( this, targets[i] ) ) {
+                                       return true;
+                               }
+                       }
+               });
+       },
+
+       not: function( selector ) {
+               return this.pushStack( winnow(this, selector, false), "not", selector);
+       },
+
+       filter: function( selector ) {
+               return this.pushStack( winnow(this, selector, true), "filter", selector );
+       },
+
+       is: function( selector ) {
+               return !!selector && jQuery.filter( selector, this ).length > 0;
+       },
+
+       closest: function( selectors, context ) {
+               var ret = [], i, l, cur = this[0];
+
+               if ( jQuery.isArray( selectors ) ) {
+                       var match, selector,
+                               matches = {},
+                               level = 1;
+
+                       if ( cur && selectors.length ) {
+                               for ( i = 0, l = selectors.length; i < l; i++ ) {
+                                       selector = selectors[i];
+
+                                       if ( !matches[selector] ) {
+                                               matches[selector] = jQuery.expr.match.POS.test( selector ) ?
+                                                       jQuery( selector, context || this.context ) :
+                                                       selector;
+                                       }
+                               }
+
+                               while ( cur && cur.ownerDocument && cur !== context ) {
+                                       for ( selector in matches ) {
+                                               match = matches[selector];
+
+                                               if ( match.jquery ? match.index(cur) > -1 : jQuery(cur).is(match) ) {
+                                                       ret.push({ selector: selector, elem: cur, level: level });
+                                               }
+                                       }
+
+                                       cur = cur.parentNode;
+                                       level++;
+                               }
+                       }
+
+                       return ret;
+               }
+
+               var pos = POS.test( selectors ) ?
+                       jQuery( selectors, context || this.context ) : null;
+
+               for ( i = 0, l = this.length; i < l; i++ ) {
+                       cur = this[i];
+
+                       while ( cur ) {
+                               if ( pos ? pos.index(cur) > -1 : jQuery.find.matchesSelector(cur, selectors) ) {
+                                       ret.push( cur );
+                                       break;
+
+                               } else {
+                                       cur = cur.parentNode;
+                                       if ( !cur || !cur.ownerDocument || cur === context ) {
+                                               break;
+                                       }
+                               }
+                       }
+               }
+
+               ret = ret.length > 1 ? jQuery.unique(ret) : ret;
+
+               return this.pushStack( ret, "closest", selectors );
+       },
+
+       // Determine the position of an element within
+       // the matched set of elements
+       index: function( elem ) {
+               if ( !elem || typeof elem === "string" ) {
+                       return jQuery.inArray( this[0],
+                               // If it receives a string, the selector is used
+                               // If it receives nothing, the siblings are used
+                               elem ? jQuery( elem ) : this.parent().children() );
+               }
+               // Locate the position of the desired element
+               return jQuery.inArray(
+                       // If it receives a jQuery object, the first element is used
+                       elem.jquery ? elem[0] : elem, this );
+       },
+
+       add: function( selector, context ) {
+               var set = typeof selector === "string" ?
+                               jQuery( selector, context ) :
+                               jQuery.makeArray( selector ),
+                       all = jQuery.merge( this.get(), set );
+
+               return this.pushStack( isDisconnected( set[0] ) || isDisconnected( all[0] ) ?
+                       all :
+                       jQuery.unique( all ) );
+       },
+
+       andSelf: function() {
+               return this.add( this.prevObject );
+       }
+});
+
+// A painfully simple check to see if an element is disconnected
+// from a document (should be improved, where feasible).
+function isDisconnected( node ) {
+       return !node || !node.parentNode || node.parentNode.nodeType === 11;
+}
+
+jQuery.each({
+       parent: function( elem ) {
+               var parent = elem.parentNode;
+               return parent && parent.nodeType !== 11 ? parent : null;
+       },
+       parents: function( elem ) {
+               return jQuery.dir( elem, "parentNode" );
+       },
+       parentsUntil: function( elem, i, until ) {
+               return jQuery.dir( elem, "parentNode", until );
+       },
+       next: function( elem ) {
+               return jQuery.nth( elem, 2, "nextSibling" );
+       },
+       prev: function( elem ) {
+               return jQuery.nth( elem, 2, "previousSibling" );
+       },
+       nextAll: function( elem ) {
+               return jQuery.dir( elem, "nextSibling" );
+       },
+       prevAll: function( elem ) {
+               return jQuery.dir( elem, "previousSibling" );
+       },
+       nextUntil: function( elem, i, until ) {
+               return jQuery.dir( elem, "nextSibling", until );
+       },
+       prevUntil: function( elem, i, until ) {
+               return jQuery.dir( elem, "previousSibling", until );
+       },
+       siblings: function( elem ) {
+               return jQuery.sibling( elem.parentNode.firstChild, elem );
+       },
+       children: function( elem ) {
+               return jQuery.sibling( elem.firstChild );
+       },
+       contents: function( elem ) {
+               return jQuery.nodeName( elem, "iframe" ) ?
+                       elem.contentDocument || elem.contentWindow.document :
+                       jQuery.makeArray( elem.childNodes );
+       }
+}, function( name, fn ) {
+       jQuery.fn[ name ] = function( until, selector ) {
+               var ret = jQuery.map( this, fn, until ),
+                       // The variable 'args' was introduced in
+                       // https://github.com/jquery/jquery/commit/52a0238
+                       // to work around a bug in Chrome 10 (Dev) and should be removed when the bug is fixed.
+                       // http://code.google.com/p/v8/issues/detail?id=1050
+                       args = slice.call(arguments);
+
+               if ( !runtil.test( name ) ) {
+                       selector = until;
+               }
+
+               if ( selector && typeof selector === "string" ) {
+                       ret = jQuery.filter( selector, ret );
+               }
+
+               ret = this.length > 1 && !guaranteedUnique[ name ] ? jQuery.unique( ret ) : ret;
+
+               if ( (this.length > 1 || rmultiselector.test( selector )) && rparentsprev.test( name ) ) {
+                       ret = ret.reverse();
+               }
+
+               return this.pushStack( ret, name, args.join(",") );
+       };
+});
+
+jQuery.extend({
+       filter: function( expr, elems, not ) {
+               if ( not ) {
+                       expr = ":not(" + expr + ")";
+               }
+
+               return elems.length === 1 ?
+                       jQuery.find.matchesSelector(elems[0], expr) ? [ elems[0] ] : [] :
+                       jQuery.find.matches(expr, elems);
+       },
+
+       dir: function( elem, dir, until ) {
+               var matched = [],
+                       cur = elem[ dir ];
+
+               while ( cur && cur.nodeType !== 9 && (until === undefined || cur.nodeType !== 1 || !jQuery( cur ).is( until )) ) {
+                       if ( cur.nodeType === 1 ) {
+                               matched.push( cur );
+                       }
+                       cur = cur[dir];
+               }
+               return matched;
+       },
+
+       nth: function( cur, result, dir, elem ) {
+               result = result || 1;
+               var num = 0;
+
+               for ( ; cur; cur = cur[dir] ) {
+                       if ( cur.nodeType === 1 && ++num === result ) {
+                               break;
+                       }
+               }
+
+               return cur;
+       },
+
+       sibling: function( n, elem ) {
+               var r = [];
+
+               for ( ; n; n = n.nextSibling ) {
+                       if ( n.nodeType === 1 && n !== elem ) {
+                               r.push( n );
+                       }
+               }
+
+               return r;
+       }
+});
+
+// Implement the identical functionality for filter and not
+function winnow( elements, qualifier, keep ) {
+       if ( jQuery.isFunction( qualifier ) ) {
+               return jQuery.grep(elements, function( elem, i ) {
+                       var retVal = !!qualifier.call( elem, i, elem );
+                       return retVal === keep;
+               });
+
+       } else if ( qualifier.nodeType ) {
+               return jQuery.grep(elements, function( elem, i ) {
+                       return (elem === qualifier) === keep;
+               });
+
+       } else if ( typeof qualifier === "string" ) {
+               var filtered = jQuery.grep(elements, function( elem ) {
+                       return elem.nodeType === 1;
+               });
+
+               if ( isSimple.test( qualifier ) ) {
+                       return jQuery.filter(qualifier, filtered, !keep);
+               } else {
+                       qualifier = jQuery.filter( qualifier, filtered );
+               }
+       }
+
+       return jQuery.grep(elements, function( elem, i ) {
+               return (jQuery.inArray( elem, qualifier ) >= 0) === keep;
+       });
+}
+
+
+
+
+var rinlinejQuery = / jQuery\d+="(?:\d+|null)"/g,
+       rleadingWhitespace = /^\s+/,
+       rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,
+       rtagName = /<([\w:]+)/,
+       rtbody = /<tbody/i,
+       rhtml = /<|&#?\w+;/,
+       rnocache = /<(?:script|object|embed|option|style)/i,
+       // checked="checked" or checked
+       rchecked = /checked\s*(?:[^=]|=\s*.checked.)/i,
+       wrapMap = {
+               option: [ 1, "<select multiple='multiple'>", "</select>" ],
+               legend: [ 1, "<fieldset>", "</fieldset>" ],
+               thead: [ 1, "<table>", "</table>" ],
+               tr: [ 2, "<table><tbody>", "</tbody></table>" ],
+               td: [ 3, "<table><tbody><tr>", "</tr></tbody></table>" ],
+               col: [ 2, "<table><tbody></tbody><colgroup>", "</colgroup></table>" ],
+               area: [ 1, "<map>", "</map>" ],
+               _default: [ 0, "", "" ]
+       };
+
+wrapMap.optgroup = wrapMap.option;
+wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead;
+wrapMap.th = wrapMap.td;
+
+// IE can't serialize <link> and <script> tags normally
+if ( !jQuery.support.htmlSerialize ) {
+       wrapMap._default = [ 1, "div<div>", "</div>" ];
+}
+
+jQuery.fn.extend({
+       text: function( text ) {
+               if ( jQuery.isFunction(text) ) {
+                       return this.each(function(i) {
+                               var self = jQuery( this );
+
+                               self.text( text.call(this, i, self.text()) );
+                       });
+               }
+
+               if ( typeof text !== "object" && text !== undefined ) {
+                       return this.empty().append( (this[0] && this[0].ownerDocument || document).createTextNode( text ) );
+               }
+
+               return jQuery.text( this );
+       },
+
+       wrapAll: function( html ) {
+               if ( jQuery.isFunction( html ) ) {
+                       return this.each(function(i) {
+                               jQuery(this).wrapAll( html.call(this, i) );
+                       });
+               }
+
+               if ( this[0] ) {
+                       // The elements to wrap the target around
+                       var wrap = jQuery( html, this[0].ownerDocument ).eq(0).clone(true);
+
+                       if ( this[0].parentNode ) {
+                               wrap.insertBefore( this[0] );
+                       }
+
+                       wrap.map(function() {
+                               var elem = this;
+
+                               while ( elem.firstChild && elem.firstChild.nodeType === 1 ) {
+                                       elem = elem.firstChild;
+                               }
+
+                               return elem;
+                       }).append(this);
+               }
+
+               return this;
+       },
+
+       wrapInner: function( html ) {
+               if ( jQuery.isFunction( html ) ) {
+                       return this.each(function(i) {
+                               jQuery(this).wrapInner( html.call(this, i) );
+                       });
+               }
+
+               return this.each(function() {
+                       var self = jQuery( this ),
+                               contents = self.contents();
+
+                       if ( contents.length ) {
+                               contents.wrapAll( html );
+
+                       } else {
+                               self.append( html );
+                       }
+               });
+       },
+
+       wrap: function( html ) {
+               return this.each(function() {
+                       jQuery( this ).wrapAll( html );
+               });
+       },
+
+       unwrap: function() {
+               return this.parent().each(function() {
+                       if ( !jQuery.nodeName( this, "body" ) ) {
+                               jQuery( this ).replaceWith( this.childNodes );
+                       }
+               }).end();
+       },
+
+       append: function() {
+               return this.domManip(arguments, true, function( elem ) {
+                       if ( this.nodeType === 1 ) {
+                               this.appendChild( elem );
+                       }
+               });
+       },
+
+       prepend: function() {
+               return this.domManip(arguments, true, function( elem ) {
+                       if ( this.nodeType === 1 ) {
+                               this.insertBefore( elem, this.firstChild );
+                       }
+               });
+       },
+
+       before: function() {
+               if ( this[0] && this[0].parentNode ) {
+                       return this.domManip(arguments, false, function( elem ) {
+                               this.parentNode.insertBefore( elem, this );
+                       });
+               } else if ( arguments.length ) {
+                       var set = jQuery(arguments[0]);
+                       set.push.apply( set, this.toArray() );
+                       return this.pushStack( set, "before", arguments );
+               }
+       },
+
+       after: function() {
+               if ( this[0] && this[0].parentNode ) {
+                       return this.domManip(arguments, false, function( elem ) {
+                               this.parentNode.insertBefore( elem, this.nextSibling );
+                       });
+               } else if ( arguments.length ) {
+                       var set = this.pushStack( this, "after", arguments );
+                       set.push.apply( set, jQuery(arguments[0]).toArray() );
+                       return set;
+               }
+       },
+
+       // keepData is for internal use only--do not document
+       remove: function( selector, keepData ) {
+               for ( var i = 0, elem; (elem = this[i]) != null; i++ ) {
+                       if ( !selector || jQuery.filter( selector, [ elem ] ).length ) {
+                               if ( !keepData && elem.nodeType === 1 ) {
+                                       jQuery.cleanData( elem.getElementsByTagName("*") );
+                                       jQuery.cleanData( [ elem ] );
+                               }
+
+                               if ( elem.parentNode ) {
+                                       elem.parentNode.removeChild( elem );
+                               }
+                       }
+               }
+
+               return this;
+       },
+
+       empty: function() {
+               for ( var i = 0, elem; (elem = this[i]) != null; i++ ) {
+                       // Remove element nodes and prevent memory leaks
+                       if ( elem.nodeType === 1 ) {
+                               jQuery.cleanData( elem.getElementsByTagName("*") );
+                       }
+
+                       // Remove any remaining nodes
+                       while ( elem.firstChild ) {
+                               elem.removeChild( elem.firstChild );
+                       }
+               }
+
+               return this;
+       },
+
+       clone: function( dataAndEvents, deepDataAndEvents ) {
+               dataAndEvents = dataAndEvents == null ? false : dataAndEvents;
+               deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents;
+
+               return this.map( function () {
+                       return jQuery.clone( this, dataAndEvents, deepDataAndEvents );
+               });
+       },
+
+       html: function( value ) {
+               if ( value === undefined ) {
+                       return this[0] && this[0].nodeType === 1 ?
+                               this[0].innerHTML.replace(rinlinejQuery, "") :
+                               null;
+
+               // See if we can take a shortcut and just use innerHTML
+               } else if ( typeof value === "string" && !rnocache.test( value ) &&
+                       (jQuery.support.leadingWhitespace || !rleadingWhitespace.test( value )) &&
+                       !wrapMap[ (rtagName.exec( value ) || ["", ""])[1].toLowerCase() ] ) {
+
+                       value = value.replace(rxhtmlTag, "<$1></$2>");
+
+                       try {
+                               for ( var i = 0, l = this.length; i < l; i++ ) {
+                                       // Remove element nodes and prevent memory leaks
+                                       if ( this[i].nodeType === 1 ) {
+                                               jQuery.cleanData( this[i].getElementsByTagName("*") );
+                                               this[i].innerHTML = value;
+                                       }
+                               }
+
+                       // If using innerHTML throws an exception, use the fallback method
+                       } catch(e) {
+                               this.empty().append( value );
+                       }
+
+               } else if ( jQuery.isFunction( value ) ) {
+                       this.each(function(i){
+                               var self = jQuery( this );
+
+                               self.html( value.call(this, i, self.html()) );
+                       });
+
+               } else {
+                       this.empty().append( value );
+               }
+
+               return this;
+       },
+
+       replaceWith: function( value ) {
+               if ( this[0] && this[0].parentNode ) {
+                       // Make sure that the elements are removed from the DOM before they are inserted
+                       // this can help fix replacing a parent with child elements
+                       if ( jQuery.isFunction( value ) ) {
+                               return this.each(function(i) {
+                                       var self = jQuery(this), old = self.html();
+                                       self.replaceWith( value.call( this, i, old ) );
+                               });
+                       }
+
+                       if ( typeof value !== "string" ) {
+                               value = jQuery( value ).detach();
+                       }
+
+                       return this.each(function() {
+                               var next = this.nextSibling,
+                                       parent = this.parentNode;
+
+                               jQuery( this ).remove();
+
+                               if ( next ) {
+                                       jQuery(next).before( value );
+                               } else {
+                                       jQuery(parent).append( value );
+                               }
+                       });
+               } else {
+                       return this.pushStack( jQuery(jQuery.isFunction(value) ? value() : value), "replaceWith", value );
+               }
+       },
+
+       detach: function( selector ) {
+               return this.remove( selector, true );
+       },
+
+       domManip: function( args, table, callback ) {
+               var results, first, fragment, parent,
+                       value = args[0],
+                       scripts = [];
+
+               // We can't cloneNode fragments that contain checked, in WebKit
+               if ( !jQuery.support.checkClone && arguments.length === 3 && typeof value === "string" && rchecked.test( value ) ) {
+                       return this.each(function() {
+                               jQuery(this).domManip( args, table, callback, true );
+                       });
+               }
+
+               if ( jQuery.isFunction(value) ) {
+                       return this.each(function(i) {
+                               var self = jQuery(this);
+                               args[0] = value.call(this, i, table ? self.html() : undefined);
+                               self.domManip( args, table, callback );
+                       });
+               }
+
+               if ( this[0] ) {
+                       parent = value && value.parentNode;
+
+                       // If we're in a fragment, just use that instead of building a new one
+                       if ( jQuery.support.parentNode && parent && parent.nodeType === 11 && parent.childNodes.length === this.length ) {
+                               results = { fragment: parent };
+
+                       } else {
+                               results = jQuery.buildFragment( args, this, scripts );
+                       }
+
+                       fragment = results.fragment;
+
+                       if ( fragment.childNodes.length === 1 ) {
+                               first = fragment = fragment.firstChild;
+                       } else {
+                               first = fragment.firstChild;
+                       }
+
+                       if ( first ) {
+                               table = table && jQuery.nodeName( first, "tr" );
+
+                               for ( var i = 0, l = this.length, lastIndex = l - 1; i < l; i++ ) {
+                                       callback.call(
+                                               table ?
+                                                       root(this[i], first) :
+                                                       this[i],
+                                               // Make sure that we do not leak memory by inadvertently discarding
+                                               // the original fragment (which might have attached data) instead of
+                                               // using it; in addition, use the original fragment object for the last
+                                               // item instead of first because it can end up being emptied incorrectly
+                                               // in certain situations (Bug #8070).
+                                               // Fragments from the fragment cache must always be cloned and never used
+                                               // in place.
+                                               results.cacheable || (l > 1 && i < lastIndex) ?
+                                                       jQuery.clone( fragment, true, true ) :
+                                                       fragment
+                                       );
+                               }
+                       }
+
+                       if ( scripts.length ) {
+                               jQuery.each( scripts, evalScript );
+                       }
+               }
+
+               return this;
+       }
+});
+
+function root( elem, cur ) {
+       return jQuery.nodeName(elem, "table") ?
+               (elem.getElementsByTagName("tbody")[0] ||
+               elem.appendChild(elem.ownerDocument.createElement("tbody"))) :
+               elem;
+}
+
+function cloneCopyEvent( src, dest ) {
+
+       if ( dest.nodeType !== 1 || !jQuery.hasData( src ) ) {
+               return;
+       }
+
+       var internalKey = jQuery.expando,
+               oldData = jQuery.data( src ),
+               curData = jQuery.data( dest, oldData );
+
+       // Switch to use the internal data object, if it exists, for the next
+       // stage of data copying
+       if ( (oldData = oldData[ internalKey ]) ) {
+               var events = oldData.events;
+                               curData = curData[ internalKey ] = jQuery.extend({}, oldData);
+
+               if ( events ) {
+                       delete curData.handle;
+                       curData.events = {};
+
+                       for ( var type in events ) {
+                               for ( var i = 0, l = events[ type ].length; i < l; i++ ) {
+                                       jQuery.event.add( dest, type + ( events[ type ][ i ].namespace ? "." : "" ) + events[ type ][ i ].namespace, events[ type ][ i ], events[ type ][ i ].data );
+                               }
+                       }
+               }
+       }
+}
+
+function cloneFixAttributes(src, dest) {
+       // We do not need to do anything for non-Elements
+       if ( dest.nodeType !== 1 ) {
+               return;
+       }
+
+       var nodeName = dest.nodeName.toLowerCase();
+
+       // clearAttributes removes the attributes, which we don't want,
+       // but also removes the attachEvent events, which we *do* want
+       dest.clearAttributes();
+
+       // mergeAttributes, in contrast, only merges back on the
+       // original attributes, not the events
+       dest.mergeAttributes(src);
+
+       // IE6-8 fail to clone children inside object elements that use
+       // the proprietary classid attribute value (rather than the type
+       // attribute) to identify the type of content to display
+       if ( nodeName === "object" ) {
+               dest.outerHTML = src.outerHTML;
+
+       } else if ( nodeName === "input" && (src.type === "checkbox" || src.type === "radio") ) {
+               // IE6-8 fails to persist the checked state of a cloned checkbox
+               // or radio button. Worse, IE6-7 fail to give the cloned element
+               // a checked appearance if the defaultChecked value isn't also set
+               if ( src.checked ) {
+                       dest.defaultChecked = dest.checked = src.checked;
+               }
+
+               // IE6-7 get confused and end up setting the value of a cloned
+               // checkbox/radio button to an empty string instead of "on"
+               if ( dest.value !== src.value ) {
+                       dest.value = src.value;
+               }
+
+       // IE6-8 fails to return the selected option to the default selected
+       // state when cloning options
+       } else if ( nodeName === "option" ) {
+               dest.selected = src.defaultSelected;
+
+       // IE6-8 fails to set the defaultValue to the correct value when
+       // cloning other types of input fields
+       } else if ( nodeName === "input" || nodeName === "textarea" ) {
+               dest.defaultValue = src.defaultValue;
+       }
+
+       // Event data gets referenced instead of copied if the expando
+       // gets copied too
+       dest.removeAttribute( jQuery.expando );
+}
+
+jQuery.buildFragment = function( args, nodes, scripts ) {
+       var fragment, cacheable, cacheresults,
+               doc = (nodes && nodes[0] ? nodes[0].ownerDocument || nodes[0] : document);
+
+       // Only cache "small" (1/2 KB) HTML strings that are associated with the main document
+       // Cloning options loses the selected state, so don't cache them
+       // IE 6 doesn't like it when you put <object> or <embed> elements in a fragment
+       // Also, WebKit does not clone 'checked' attributes on cloneNode, so don't cache
+       if ( args.length === 1 && typeof args[0] === "string" && args[0].length < 512 && doc === document &&
+               args[0].charAt(0) === "<" && !rnocache.test( args[0] ) && (jQuery.support.checkClone || !rchecked.test( args[0] )) ) {
+
+               cacheable = true;
+               cacheresults = jQuery.fragments[ args[0] ];
+               if ( cacheresults ) {
+                       if ( cacheresults !== 1 ) {
+                               fragment = cacheresults;
+                       }
+               }
+       }
+
+       if ( !fragment ) {
+               fragment = doc.createDocumentFragment();
+               jQuery.clean( args, doc, fragment, scripts );
+       }
+
+       if ( cacheable ) {
+               jQuery.fragments[ args[0] ] = cacheresults ? fragment : 1;
+       }
+
+       return { fragment: fragment, cacheable: cacheable };
+};
+
+jQuery.fragments = {};
+
+jQuery.each({
+       appendTo: "append",
+       prependTo: "prepend",
+       insertBefore: "before",
+       insertAfter: "after",
+       replaceAll: "replaceWith"
+}, function( name, original ) {
+       jQuery.fn[ name ] = function( selector ) {
+               var ret = [],
+                       insert = jQuery( selector ),
+                       parent = this.length === 1 && this[0].parentNode;
+
+               if ( parent && parent.nodeType === 11 && parent.childNodes.length === 1 && insert.length === 1 ) {
+                       insert[ original ]( this[0] );
+                       return this;
+
+               } else {
+                       for ( var i = 0, l = insert.length; i < l; i++ ) {
+                               var elems = (i > 0 ? this.clone(true) : this).get();
+                               jQuery( insert[i] )[ original ]( elems );
+                               ret = ret.concat( elems );
+                       }
+
+                       return this.pushStack( ret, name, insert.selector );
+               }
+       };
+});
+
+function getAll( elem ) {
+       if ( "getElementsByTagName" in elem ) {
+               return elem.getElementsByTagName( "*" );
+       
+       } else if ( "querySelectorAll" in elem ) {
+               return elem.querySelectorAll( "*" );
+
+       } else {
+               return [];
+       }
+}
+
+jQuery.extend({
+       clone: function( elem, dataAndEvents, deepDataAndEvents ) {
+               var clone = elem.cloneNode(true),
+                               srcElements,
+                               destElements,
+                               i;
+
+               if ( (!jQuery.support.noCloneEvent || !jQuery.support.noCloneChecked) &&
+                               (elem.nodeType === 1 || elem.nodeType === 11) && !jQuery.isXMLDoc(elem) ) {
+                       // IE copies events bound via attachEvent when using cloneNode.
+                       // Calling detachEvent on the clone will also remove the events
+                       // from the original. In order to get around this, we use some
+                       // proprietary methods to clear the events. Thanks to MooTools
+                       // guys for this hotness.
+
+                       cloneFixAttributes( elem, clone );
+
+                       // Using Sizzle here is crazy slow, so we use getElementsByTagName
+                       // instead
+                       srcElements = getAll( elem );
+                       destElements = getAll( clone );
+
+                       // Weird iteration because IE will replace the length property
+                       // with an element if you are cloning the body and one of the
+                       // elements on the page has a name or id of "length"
+                       for ( i = 0; srcElements[i]; ++i ) {
+                               cloneFixAttributes( srcElements[i], destElements[i] );
+                       }
+               }
+
+               // Copy the events from the original to the clone
+               if ( dataAndEvents ) {
+                       cloneCopyEvent( elem, clone );
+
+                       if ( deepDataAndEvents ) {
+                               srcElements = getAll( elem );
+                               destElements = getAll( clone );
+
+                               for ( i = 0; srcElements[i]; ++i ) {
+                                       cloneCopyEvent( srcElements[i], destElements[i] );
+                               }
+                       }
+               }
+
+               // Return the cloned set
+               return clone;
+},
+       clean: function( elems, context, fragment, scripts ) {
+               context = context || document;
+
+               // !context.createElement fails in IE with an error but returns typeof 'object'
+               if ( typeof context.createElement === "undefined" ) {
+                       context = context.ownerDocument || context[0] && context[0].ownerDocument || document;
+               }
+
+               var ret = [];
+
+               for ( var i = 0, elem; (elem = elems[i]) != null; i++ ) {
+                       if ( typeof elem === "number" ) {
+                               elem += "";
+                       }
+
+                       if ( !elem ) {
+                               continue;
+                       }
+
+                       // Convert html string into DOM nodes
+                       if ( typeof elem === "string" && !rhtml.test( elem ) ) {
+                               elem = context.createTextNode( elem );
+
+                       } else if ( typeof elem === "string" ) {
+                               // Fix "XHTML"-style tags in all browsers
+                               elem = elem.replace(rxhtmlTag, "<$1></$2>");
+
+                               // Trim whitespace, otherwise indexOf won't work as expected
+                               var tag = (rtagName.exec( elem ) || ["", ""])[1].toLowerCase(),
+                                       wrap = wrapMap[ tag ] || wrapMap._default,
+                                       depth = wrap[0],
+                                       div = context.createElement("div");
+
+                               // Go to html and back, then peel off extra wrappers
+                               div.innerHTML = wrap[1] + elem + wrap[2];
+
+                               // Move to the right depth
+                               while ( depth-- ) {
+                                       div = div.lastChild;
+                               }
+
+                               // Remove IE's autoinserted <tbody> from table fragments
+                               if ( !jQuery.support.tbody ) {
+
+                                       // String was a <table>, *may* have spurious <tbody>
+                                       var hasBody = rtbody.test(elem),
+                                               tbody = tag === "table" && !hasBody ?
+                                                       div.firstChild && div.firstChild.childNodes :
+
+                                                       // String was a bare <thead> or <tfoot>
+                                                       wrap[1] === "<table>" && !hasBody ?
+                                                               div.childNodes :
+                                                               [];
+
+                                       for ( var j = tbody.length - 1; j >= 0 ; --j ) {
+                                               if ( jQuery.nodeName( tbody[ j ], "tbody" ) && !tbody[ j ].childNodes.length ) {
+                                                       tbody[ j ].parentNode.removeChild( tbody[ j ] );
+                                               }
+                                       }
+
+                               }
+
+                               // IE completely kills leading whitespace when innerHTML is used
+                               if ( !jQuery.support.leadingWhitespace && rleadingWhitespace.test( elem ) ) {
+                                       div.insertBefore( context.createTextNode( rleadingWhitespace.exec(elem)[0] ), div.firstChild );
+                               }
+
+                               elem = div.childNodes;
+                       }
+
+                       if ( elem.nodeType ) {
+                               ret.push( elem );
+                       } else {
+                               ret = jQuery.merge( ret, elem );
+                       }
+               }
+
+               if ( fragment ) {
+                       for ( i = 0; ret[i]; i++ ) {
+                               if ( scripts && jQuery.nodeName( ret[i], "script" ) && (!ret[i].type || ret[i].type.toLowerCase() === "text/javascript") ) {
+                                       scripts.push( ret[i].parentNode ? ret[i].parentNode.removeChild( ret[i] ) : ret[i] );
+
+                               } else {
+                                       if ( ret[i].nodeType === 1 ) {
+                                               ret.splice.apply( ret, [i + 1, 0].concat(jQuery.makeArray(ret[i].getElementsByTagName("script"))) );
+                                       }
+                                       fragment.appendChild( ret[i] );
+                               }
+                       }
+               }
+
+               return ret;
+       },
+
+       cleanData: function( elems ) {
+               var data, id, cache = jQuery.cache, internalKey = jQuery.expando, special = jQuery.event.special,
+                       deleteExpando = jQuery.support.deleteExpando;
+
+               for ( var i = 0, elem; (elem = elems[i]) != null; i++ ) {
+                       if ( elem.nodeName && jQuery.noData[elem.nodeName.toLowerCase()] ) {
+                               continue;
+                       }
+
+                       id = elem[ jQuery.expando ];
+
+                       if ( id ) {
+                               data = cache[ id ] && cache[ id ][ internalKey ];
+
+                               if ( data && data.events ) {
+                                       for ( var type in data.events ) {
+                                               if ( special[ type ] ) {
+                                                       jQuery.event.remove( elem, type );
+
+                                               // This is a shortcut to avoid jQuery.event.remove's overhead
+                                               } else {
+                                                       jQuery.removeEvent( elem, type, data.handle );
+                                               }
+                                       }
+
+                                       // Null the DOM reference to avoid IE6/7/8 leak (#7054)
+                                       if ( data.handle ) {
+                                               data.handle.elem = null;
+                                       }
+                               }
+
+                               if ( deleteExpando ) {
+                                       delete elem[ jQuery.expando ];
+
+                               } else if ( elem.removeAttribute ) {
+                                       elem.removeAttribute( jQuery.expando );
+                               }
+
+                               delete cache[ id ];
+                       }
+               }
+       }
+});
+
+function evalScript( i, elem ) {
+       if ( elem.src ) {
+               jQuery.ajax({
+                       url: elem.src,
+                       async: false,
+                       dataType: "script"
+               });
+       } else {
+               jQuery.globalEval( elem.text || elem.textContent || elem.innerHTML || "" );
+       }
+
+       if ( elem.parentNode ) {
+               elem.parentNode.removeChild( elem );
+       }
+}
+
+
+
+
+var ralpha = /alpha\([^)]*\)/i,
+       ropacity = /opacity=([^)]*)/,
+       rdashAlpha = /-([a-z])/ig,
+       rupper = /([A-Z])/g,
+       rnumpx = /^-?\d+(?:px)?$/i,
+       rnum = /^-?\d/,
+
+       cssShow = { position: "absolute", visibility: "hidden", display: "block" },
+       cssWidth = [ "Left", "Right" ],
+       cssHeight = [ "Top", "Bottom" ],
+       curCSS,
+
+       getComputedStyle,
+       currentStyle,
+
+       fcamelCase = function( all, letter ) {
+               return letter.toUpperCase();
+       };
+
+jQuery.fn.css = function( name, value ) {
+       // Setting 'undefined' is a no-op
+       if ( arguments.length === 2 && value === undefined ) {
+               return this;
+       }
+
+       return jQuery.access( this, name, value, true, function( elem, name, value ) {
+               return value !== undefined ?
+                       jQuery.style( elem, name, value ) :
+                       jQuery.css( elem, name );
+       });
+};
+
+jQuery.extend({
+       // Add in style property hooks for overriding the default
+       // behavior of getting and setting a style property
+       cssHooks: {
+               opacity: {
+                       get: function( elem, computed ) {
+                               if ( computed ) {
+                                       // We should always get a number back from opacity
+                                       var ret = curCSS( elem, "opacity", "opacity" );
+                                       return ret === "" ? "1" : ret;
+
+                               } else {
+                                       return elem.style.opacity;
+                               }
+                       }
+               }
+       },
+
+       // Exclude the following css properties to add px
+       cssNumber: {
+               "zIndex": true,
+               "fontWeight": true,
+               "opacity": true,
+               "zoom": true,
+               "lineHeight": true
+       },
+
+       // Add in properties whose names you wish to fix before
+       // setting or getting the value
+       cssProps: {
+               // normalize float css property
+               "float": jQuery.support.cssFloat ? "cssFloat" : "styleFloat"
+       },
+
+       // Get and set the style property on a DOM Node
+       style: function( elem, name, value, extra ) {
+               // Don't set styles on text and comment nodes
+               if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style ) {
+                       return;
+               }
+
+               // Make sure that we're working with the right name
+               var ret, origName = jQuery.camelCase( name ),
+                       style = elem.style, hooks = jQuery.cssHooks[ origName ];
+
+               name = jQuery.cssProps[ origName ] || origName;
+
+               // Check if we're setting a value
+               if ( value !== undefined ) {
+                       // Make sure that NaN and null values aren't set. See: #7116
+                       if ( typeof value === "number" && isNaN( value ) || value == null ) {
+                               return;
+                       }
+
+                       // If a number was passed in, add 'px' to the (except for certain CSS properties)
+                       if ( typeof value === "number" && !jQuery.cssNumber[ origName ] ) {
+                               value += "px";
+                       }
+
+                       // If a hook was provided, use that value, otherwise just set the specified value
+                       if ( !hooks || !("set" in hooks) || (value = hooks.set( elem, value )) !== undefined ) {
+                               // Wrapped to prevent IE from throwing errors when 'invalid' values are provided
+                               // Fixes bug #5509
+                               try {
+                                       style[ name ] = value;
+                               } catch(e) {}
+                       }
+
+               } else {
+                       // If a hook was provided get the non-computed value from there
+                       if ( hooks && "get" in hooks && (ret = hooks.get( elem, false, extra )) !== undefined ) {
+                               return ret;
+                       }
+
+                       // Otherwise just get the value from the style object
+                       return style[ name ];
+               }
+       },
+
+       css: function( elem, name, extra ) {
+               // Make sure that we're working with the right name
+               var ret, origName = jQuery.camelCase( name ),
+                       hooks = jQuery.cssHooks[ origName ];
+
+               name = jQuery.cssProps[ origName ] || origName;
+
+               // If a hook was provided get the computed value from there
+               if ( hooks && "get" in hooks && (ret = hooks.get( elem, true, extra )) !== undefined ) {
+                       return ret;
+
+               // Otherwise, if a way to get the computed value exists, use that
+               } else if ( curCSS ) {
+                       return curCSS( elem, name, origName );
+               }
+       },
+
+       // A method for quickly swapping in/out CSS properties to get correct calculations
+       swap: function( elem, options, callback ) {
+               var old = {};
+
+               // Remember the old values, and insert the new ones
+               for ( var name in options ) {
+                       old[ name ] = elem.style[ name ];
+                       elem.style[ name ] = options[ name ];
+               }
+
+               callback.call( elem );
+
+               // Revert the old values
+               for ( name in options ) {
+                       elem.style[ name ] = old[ name ];
+               }
+       },
+
+       camelCase: function( string ) {
+               return string.replace( rdashAlpha, fcamelCase );
+       }
+});
+
+// DEPRECATED, Use jQuery.css() instead
+jQuery.curCSS = jQuery.css;
+
+jQuery.each(["height", "width"], function( i, name ) {
+       jQuery.cssHooks[ name ] = {
+               get: function( elem, computed, extra ) {
+                       var val;
+
+                       if ( computed ) {
+                               if ( elem.offsetWidth !== 0 ) {
+                                       val = getWH( elem, name, extra );
+
+                               } else {
+                                       jQuery.swap( elem, cssShow, function() {
+                                               val = getWH( elem, name, extra );
+                                       });
+                               }
+
+                               if ( val <= 0 ) {
+                                       val = curCSS( elem, name, name );
+
+                                       if ( val === "0px" && currentStyle ) {
+                                               val = currentStyle( elem, name, name );
+                                       }
+
+                                       if ( val != null ) {
+                                               // Should return "auto" instead of 0, use 0 for
+                                               // temporary backwards-compat
+                                               return val === "" || val === "auto" ? "0px" : val;
+                                       }
+                               }
+
+                               if ( val < 0 || val == null ) {
+                                       val = elem.style[ name ];
+
+                                       // Should return "auto" instead of 0, use 0 for
+                                       // temporary backwards-compat
+                                       return val === "" || val === "auto" ? "0px" : val;
+                               }
+
+                               return typeof val === "string" ? val : val + "px";
+                       }
+               },
+
+               set: function( elem, value ) {
+                       if ( rnumpx.test( value ) ) {
+                               // ignore negative width and height values #1599
+                               value = parseFloat(value);
+
+                               if ( value >= 0 ) {
+                                       return value + "px";
+                               }
+
+                       } else {
+                               return value;
+                       }
+               }
+       };
+});
+
+if ( !jQuery.support.opacity ) {
+       jQuery.cssHooks.opacity = {
+               get: function( elem, computed ) {
+                       // IE uses filters for opacity
+                       return ropacity.test((computed && elem.currentStyle ? elem.currentStyle.filter : elem.style.filter) || "") ?
+                               (parseFloat(RegExp.$1) / 100) + "" :
+                               computed ? "1" : "";
+               },
+
+               set: function( elem, value ) {
+                       var style = elem.style;
+
+                       // IE has trouble with opacity if it does not have layout
+                       // Force it by setting the zoom level
+                       style.zoom = 1;
+
+                       // Set the alpha filter to set the opacity
+                       var opacity = jQuery.isNaN(value) ?
+                               "" :
+                               "alpha(opacity=" + value * 100 + ")",
+                               filter = style.filter || "";
+
+                       style.filter = ralpha.test(filter) ?
+                               filter.replace(ralpha, opacity) :
+                               style.filter + ' ' + opacity;
+               }
+       };
+}
+
+if ( document.defaultView && document.defaultView.getComputedStyle ) {
+       getComputedStyle = function( elem, newName, name ) {
+               var ret, defaultView, computedStyle;
+
+               name = name.replace( rupper, "-$1" ).toLowerCase();
+
+               if ( !(defaultView = elem.ownerDocument.defaultView) ) {
+                       return undefined;
+               }
+
+               if ( (computedStyle = defaultView.getComputedStyle( elem, null )) ) {
+                       ret = computedStyle.getPropertyValue( name );
+                       if ( ret === "" && !jQuery.contains( elem.ownerDocument.documentElement, elem ) ) {
+                               ret = jQuery.style( elem, name );
+                       }
+               }
+
+               return ret;
+       };
+}
+
+if ( document.documentElement.currentStyle ) {
+       currentStyle = function( elem, name ) {
+               var left,
+                       ret = elem.currentStyle && elem.currentStyle[ name ],
+                       rsLeft = elem.runtimeStyle && elem.runtimeStyle[ name ],
+                       style = elem.style;
+
+               // From the awesome hack by Dean Edwards
+               // http://erik.eae.net/archives/2007/07/27/18.54.15/#comment-102291
+
+               // If we're not dealing with a regular pixel number
+               // but a number that has a weird ending, we need to convert it to pixels
+               if ( !rnumpx.test( ret ) && rnum.test( ret ) ) {
+                       // Remember the original values
+                       left = style.left;
+
+                       // Put in the new values to get a computed value out
+                       if ( rsLeft ) {
+                               elem.runtimeStyle.left = elem.currentStyle.left;
+                       }
+                       style.left = name === "fontSize" ? "1em" : (ret || 0);
+                       ret = style.pixelLeft + "px";
+
+                       // Revert the changed values
+                       style.left = left;
+                       if ( rsLeft ) {
+                               elem.runtimeStyle.left = rsLeft;
+                       }
+               }
+
+               return ret === "" ? "auto" : ret;
+       };
+}
+
+curCSS = getComputedStyle || currentStyle;
+
+function getWH( elem, name, extra ) {
+       var which = name === "width" ? cssWidth : cssHeight,
+               val = name === "width" ? elem.offsetWidth : elem.offsetHeight;
+
+       if ( extra === "border" ) {
+               return val;
+       }
+
+       jQuery.each( which, function() {
+               if ( !extra ) {
+                       val -= parseFloat(jQuery.css( elem, "padding" + this )) || 0;
+               }
+
+               if ( extra === "margin" ) {
+                       val += parseFloat(jQuery.css( elem, "margin" + this )) || 0;
+
+               } else {
+                       val -= parseFloat(jQuery.css( elem, "border" + this + "Width" )) || 0;
+               }
+       });
+
+       return val;
+}
+
+if ( jQuery.expr && jQuery.expr.filters ) {
+       jQuery.expr.filters.hidden = function( elem ) {
+               var width = elem.offsetWidth,
+                       height = elem.offsetHeight;
+
+               return (width === 0 && height === 0) || (!jQuery.support.reliableHiddenOffsets && (elem.style.display || jQuery.css( elem, "display" )) === "none");
+       };
+
+       jQuery.expr.filters.visible = function( elem ) {
+               return !jQuery.expr.filters.hidden( elem );
+       };
+}
+
+
+
+
+var r20 = /%20/g,
+       rbracket = /\[\]$/,
+       rCRLF = /\r?\n/g,
+       rhash = /#.*$/,
+       rheaders = /^(.*?):[ \t]*([^\r\n]*)\r?$/mg, // IE leaves an \r character at EOL
+       rinput = /^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,
+       // #7653, #8125, #8152: local protocol detection
+       rlocalProtocol = /(?:^file|^widget|\-extension):$/,
+       rnoContent = /^(?:GET|HEAD)$/,
+       rprotocol = /^\/\//,
+       rquery = /\?/,
+       rscript = /<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,
+       rselectTextarea = /^(?:select|textarea)/i,
+       rspacesAjax = /\s+/,
+       rts = /([?&])_=[^&]*/,
+       rucHeaders = /(^|\-)([a-z])/g,
+       rucHeadersFunc = function( _, $1, $2 ) {
+               return $1 + $2.toUpperCase();
+       },
+       rurl = /^([\w\+\.\-]+:)\/\/([^\/?#:]*)(?::(\d+))?/,
+
+       // Keep a copy of the old load method
+       _load = jQuery.fn.load,
+
+       /* Prefilters
+        * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js for an example)
+        * 2) These are called:
+        *    - BEFORE asking for a transport
+        *    - AFTER param serialization (s.data is a string if s.processData is true)
+        * 3) key is the dataType
+        * 4) the catchall symbol "*" can be used
+        * 5) execution will start with transport dataType and THEN continue down to "*" if needed
+        */
+       prefilters = {},
+
+       /* Transports bindings
+        * 1) key is the dataType
+        * 2) the catchall symbol "*" can be used
+        * 3) selection will start with transport dataType and THEN go to "*" if needed
+        */
+       transports = {},
+
+       // Document location
+       ajaxLocation,
+
+       // Document location segments
+       ajaxLocParts;
+
+// #8138, IE may throw an exception when accessing
+// a field from document.location if document.domain has been set
+try {
+       ajaxLocation = document.location.href;
+} catch( e ) {
+       // Use the href attribute of an A element
+       // since IE will modify it given document.location
+       ajaxLocation = document.createElement( "a" );
+       ajaxLocation.href = "";
+       ajaxLocation = ajaxLocation.href;
+}
+
+// Segment location into parts
+ajaxLocParts = rurl.exec( ajaxLocation.toLowerCase() );
+
+// Base "constructor" for jQuery.ajaxPrefilter and jQuery.ajaxTransport
+function addToPrefiltersOrTransports( structure ) {
+
+       // dataTypeExpression is optional and defaults to "*"
+       return function( dataTypeExpression, func ) {
+
+               if ( typeof dataTypeExpression !== "string" ) {
+                       func = dataTypeExpression;
+                       dataTypeExpression = "*";
+               }
+
+               if ( jQuery.isFunction( func ) ) {
+                       var dataTypes = dataTypeExpression.toLowerCase().split( rspacesAjax ),
+                               i = 0,
+                               length = dataTypes.length,
+                               dataType,
+                               list,
+                               placeBefore;
+
+                       // For each dataType in the dataTypeExpression
+                       for(; i < length; i++ ) {
+                               dataType = dataTypes[ i ];
+                               // We control if we're asked to add before
+                               // any existing element
+                               placeBefore = /^\+/.test( dataType );
+                               if ( placeBefore ) {
+                                       dataType = dataType.substr( 1 ) || "*";
+                               }
+                               list = structure[ dataType ] = structure[ dataType ] || [];
+                               // then we add to the structure accordingly
+                               list[ placeBefore ? "unshift" : "push" ]( func );
+                       }
+               }
+       };
+}
+
+//Base inspection function for prefilters and transports
+function inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR,
+               dataType /* internal */, inspected /* internal */ ) {
+
+       dataType = dataType || options.dataTypes[ 0 ];
+       inspected = inspected || {};
+
+       inspected[ dataType ] = true;
+
+       var list = structure[ dataType ],
+               i = 0,
+               length = list ? list.length : 0,
+               executeOnly = ( structure === prefilters ),
+               selection;
+
+       for(; i < length && ( executeOnly || !selection ); i++ ) {
+               selection = list[ i ]( options, originalOptions, jqXHR );
+               // If we got redirected to another dataType
+               // we try there if executing only and not done already
+               if ( typeof selection === "string" ) {
+                       if ( !executeOnly || inspected[ selection ] ) {
+                               selection = undefined;
+                       } else {
+                               options.dataTypes.unshift( selection );
+                               selection = inspectPrefiltersOrTransports(
+                                               structure, options, originalOptions, jqXHR, selection, inspected );
+                       }
+               }
+       }
+       // If we're only executing or nothing was selected
+       // we try the catchall dataType if not done already
+       if ( ( executeOnly || !selection ) && !inspected[ "*" ] ) {
+               selection = inspectPrefiltersOrTransports(
+                               structure, options, originalOptions, jqXHR, "*", inspected );
+       }
+       // unnecessary when only executing (prefilters)
+       // but it'll be ignored by the caller in that case
+       return selection;
+}
+
+jQuery.fn.extend({
+       load: function( url, params, callback ) {
+               if ( typeof url !== "string" && _load ) {
+                       return _load.apply( this, arguments );
+
+               // Don't do a request if no elements are being requested
+               } else if ( !this.length ) {
+                       return this;
+               }
+
+               var off = url.indexOf( " " );
+               if ( off >= 0 ) {
+                       var selector = url.slice( off, url.length );
+                       url = url.slice( 0, off );
+               }
+
+               // Default to a GET request
+               var type = "GET";
+
+               // If the second parameter was provided
+               if ( params ) {
+                       // If it's a function
+                       if ( jQuery.isFunction( params ) ) {
+                               // We assume that it's the callback
+                               callback = params;
+                               params = undefined;
+
+                       // Otherwise, build a param string
+                       } else if ( typeof params === "object" ) {
+                               params = jQuery.param( params, jQuery.ajaxSettings.traditional );
+                               type = "POST";
+                       }
+               }
+
+               var self = this;
+
+               // Request the remote document
+               jQuery.ajax({
+                       url: url,
+                       type: type,
+                       dataType: "html",
+                       data: params,
+                       // Complete callback (responseText is used internally)
+                       complete: function( jqXHR, status, responseText ) {
+                               // Store the response as specified by the jqXHR object
+                               responseText = jqXHR.responseText;
+                               // If successful, inject the HTML into all the matched elements
+                               if ( jqXHR.isResolved() ) {
+                                       // #4825: Get the actual response in case
+                                       // a dataFilter is present in ajaxSettings
+                                       jqXHR.done(function( r ) {
+                                               responseText = r;
+                                       });
+                                       // See if a selector was specified
+                                       self.html( selector ?
+                                               // Create a dummy div to hold the results
+                                               jQuery("<div>")
+                                                       // inject the contents of the document in, removing the scripts
+                                                       // to avoid any 'Permission Denied' errors in IE
+                                                       .append(responseText.replace(rscript, ""))
+
+                                                       // Locate the specified elements
+                                                       .find(selector) :
+
+                                               // If not, just inject the full result
+                                               responseText );
+                               }
+
+                               if ( callback ) {
+                                       self.each( callback, [ responseText, status, jqXHR ] );
+                               }
+                       }
+               });
+
+               return this;
+       },
+
+       serialize: function() {
+               return jQuery.param( this.serializeArray() );
+       },
+
+       serializeArray: function() {
+               return this.map(function(){
+                       return this.elements ? jQuery.makeArray( this.elements ) : this;
+               })
+               .filter(function(){
+                       return this.name && !this.disabled &&
+                               ( this.checked || rselectTextarea.test( this.nodeName ) ||
+                                       rinput.test( this.type ) );
+               })
+               .map(function( i, elem ){
+                       var val = jQuery( this ).val();
+
+                       return val == null ?
+                               null :
+                               jQuery.isArray( val ) ?
+                                       jQuery.map( val, function( val, i ){
+                                               return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) };
+                                       }) :
+                                       { name: elem.name, value: val.replace( rCRLF, "\r\n" ) };
+               }).get();
+       }
+});
+
+// Attach a bunch of functions for handling common AJAX events
+jQuery.each( "ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split( " " ), function( i, o ){
+       jQuery.fn[ o ] = function( f ){
+               return this.bind( o, f );
+       };
+} );
+
+jQuery.each( [ "get", "post" ], function( i, method ) {
+       jQuery[ method ] = function( url, data, callback, type ) {
+               // shift arguments if data argument was omitted
+               if ( jQuery.isFunction( data ) ) {
+                       type = type || callback;
+                       callback = data;
+                       data = undefined;
+               }
+
+               return jQuery.ajax({
+                       type: method,
+                       url: url,
+                       data: data,
+                       success: callback,
+                       dataType: type
+               });
+       };
+} );
+
+jQuery.extend({
+
+       getScript: function( url, callback ) {
+               return jQuery.get( url, undefined, callback, "script" );
+       },
+
+       getJSON: function( url, data, callback ) {
+               return jQuery.get( url, data, callback, "json" );
+       },
+
+       // Creates a full fledged settings object into target
+       // with both ajaxSettings and settings fields.
+       // If target is omitted, writes into ajaxSettings.
+       ajaxSetup: function ( target, settings ) {
+               if ( !settings ) {
+                       // Only one parameter, we extend ajaxSettings
+                       settings = target;
+                       target = jQuery.extend( true, jQuery.ajaxSettings, settings );
+               } else {
+                       // target was provided, we extend into it
+                       jQuery.extend( true, target, jQuery.ajaxSettings, settings );
+               }
+               // Flatten fields we don't want deep extended
+               for( var field in { context: 1, url: 1 } ) {
+                       if ( field in settings ) {
+                               target[ field ] = settings[ field ];
+                       } else if( field in jQuery.ajaxSettings ) {
+                               target[ field ] = jQuery.ajaxSettings[ field ];
+                       }
+               }
+               return target;
+       },
+
+       ajaxSettings: {
+               url: ajaxLocation,
+               isLocal: rlocalProtocol.test( ajaxLocParts[ 1 ] ),
+               global: true,
+               type: "GET",
+               contentType: "application/x-www-form-urlencoded",
+               processData: true,
+               async: true,
+               /*
+               timeout: 0,
+               data: null,
+               dataType: null,
+               username: null,
+               password: null,
+               cache: null,
+               traditional: false,
+               headers: {},
+               crossDomain: null,
+               */
+
+               accepts: {
+                       xml: "application/xml, text/xml",
+                       html: "text/html",
+                       text: "text/plain",
+                       json: "application/json, text/javascript",
+                       "*": "*/*"
+               },
+
+               contents: {
+                       xml: /xml/,
+                       html: /html/,
+                       json: /json/
+               },
+
+               responseFields: {
+                       xml: "responseXML",
+                       text: "responseText"
+               },
+
+               // List of data converters
+               // 1) key format is "source_type destination_type" (a single space in-between)
+               // 2) the catchall symbol "*" can be used for source_type
+               converters: {
+
+                       // Convert anything to text
+                       "* text": window.String,
+
+                       // Text to html (true = no transformation)
+                       "text html": true,
+
+                       // Evaluate text as a json expression
+                       "text json": jQuery.parseJSON,
+
+                       // Parse text as xml
+                       "text xml": jQuery.parseXML
+               }
+       },
+
+       ajaxPrefilter: addToPrefiltersOrTransports( prefilters ),
+       ajaxTransport: addToPrefiltersOrTransports( transports ),
+
+       // Main method
+       ajax: function( url, options ) {
+
+               // If url is an object, simulate pre-1.5 signature
+               if ( typeof url === "object" ) {
+                       options = url;
+                       url = undefined;
+               }
+
+               // Force options to be an object
+               options = options || {};
+
+               var // Create the final options object
+                       s = jQuery.ajaxSetup( {}, options ),
+                       // Callbacks context
+                       callbackContext = s.context || s,
+                       // Context for global events
+                       // It's the callbackContext if one was provided in the options
+                       // and if it's a DOM node or a jQuery collection
+                       globalEventContext = callbackContext !== s &&
+                               ( callbackContext.nodeType || callbackContext instanceof jQuery ) ?
+                                               jQuery( callbackContext ) : jQuery.event,
+                       // Deferreds
+                       deferred = jQuery.Deferred(),
+                       completeDeferred = jQuery._Deferred(),
+                       // Status-dependent callbacks
+                       statusCode = s.statusCode || {},
+                       // ifModified key
+                       ifModifiedKey,
+                       // Headers (they are sent all at once)
+                       requestHeaders = {},
+                       // Response headers
+                       responseHeadersString,
+                       responseHeaders,
+                       // transport
+                       transport,
+                       // timeout handle
+                       timeoutTimer,
+                       // Cross-domain detection vars
+                       parts,
+                       // The jqXHR state
+                       state = 0,
+                       // To know if global events are to be dispatched
+                       fireGlobals,
+                       // Loop variable
+                       i,
+                       // Fake xhr
+                       jqXHR = {
+
+                               readyState: 0,
+
+                               // Caches the header
+                               setRequestHeader: function( name, value ) {
+                                       if ( !state ) {
+                                               requestHeaders[ name.toLowerCase().replace( rucHeaders, rucHeadersFunc ) ] = value;
+                                       }
+                                       return this;
+                               },
+
+                               // Raw string
+                               getAllResponseHeaders: function() {
+                                       return state === 2 ? responseHeadersString : null;
+                               },
+
+                               // Builds headers hashtable if needed
+                               getResponseHeader: function( key ) {
+                                       var match;
+                                       if ( state === 2 ) {
+                                               if ( !responseHeaders ) {
+                                                       responseHeaders = {};
+                                                       while( ( match = rheaders.exec( responseHeadersString ) ) ) {
+                                                               responseHeaders[ match[1].toLowerCase() ] = match[ 2 ];
+                                                       }
+                                               }
+                                               match = responseHeaders[ key.toLowerCase() ];
+                                       }
+                                       return match === undefined ? null : match;
+                               },
+
+                               // Overrides response content-type header
+                               overrideMimeType: function( type ) {
+                                       if ( !state ) {
+                                               s.mimeType = type;
+                                       }
+                                       return this;
+                               },
+
+                               // Cancel the request
+                               abort: function( statusText ) {
+                                       statusText = statusText || "abort";
+                                       if ( transport ) {
+                                               transport.abort( statusText );
+                                       }
+                                       done( 0, statusText );
+                                       return this;
+                               }
+                       };
+
+               // Callback for when everything is done
+               // It is defined here because jslint complains if it is declared
+               // at the end of the function (which would be more logical and readable)
+               function done( status, statusText, responses, headers ) {
+
+                       // Called once
+                       if ( state === 2 ) {
+                               return;
+                       }
+
+                       // State is "done" now
+                       state = 2;
+
+                       // Clear timeout if it exists
+                       if ( timeoutTimer ) {
+                               clearTimeout( timeoutTimer );
+                       }
+
+                       // Dereference transport for early garbage collection
+                       // (no matter how long the jqXHR object will be used)
+                       transport = undefined;
+
+                       // Cache response headers
+                       responseHeadersString = headers || "";
+
+                       // Set readyState
+                       jqXHR.readyState = status ? 4 : 0;
+
+                       var isSuccess,
+                               success,
+                               error,
+                               response = responses ? ajaxHandleResponses( s, jqXHR, responses ) : undefined,
+                               lastModified,
+                               etag;
+
+                       // If successful, handle type chaining
+                       if ( status >= 200 && status < 300 || status === 304 ) {
+
+                               // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
+                               if ( s.ifModified ) {
+
+                                       if ( ( lastModified = jqXHR.getResponseHeader( "Last-Modified" ) ) ) {
+                                               jQuery.lastModified[ ifModifiedKey ] = lastModified;
+                                       }
+                                       if ( ( etag = jqXHR.getResponseHeader( "Etag" ) ) ) {
+                                               jQuery.etag[ ifModifiedKey ] = etag;
+                                       }
+                               }
+
+                               // If not modified
+                               if ( status === 304 ) {
+
+                                       statusText = "notmodified";
+                                       isSuccess = true;
+
+                               // If we have data
+                               } else {
+
+                                       try {
+                                               success = ajaxConvert( s, response );
+                                               statusText = "success";
+                                               isSuccess = true;
+                                       } catch(e) {
+                                               // We have a parsererror
+                                               statusText = "parsererror";
+                                               error = e;
+                                       }
+                               }
+                       } else {
+                               // We extract error from statusText
+                               // then normalize statusText and status for non-aborts
+                               error = statusText;
+                               if( !statusText || status ) {
+                                       statusText = "error";
+                                       if ( status < 0 ) {
+                                               status = 0;
+                                       }
+                               }
+                       }
+
+                       // Set data for the fake xhr object
+                       jqXHR.status = status;
+                       jqXHR.statusText = statusText;
+
+                       // Success/Error
+                       if ( isSuccess ) {
+                               deferred.resolveWith( callbackContext, [ success, statusText, jqXHR ] );
+                       } else {
+                               deferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] );
+                       }
+
+                       // Status-dependent callbacks
+                       jqXHR.statusCode( statusCode );
+                       statusCode = undefined;
+
+                       if ( fireGlobals ) {
+                               globalEventContext.trigger( "ajax" + ( isSuccess ? "Success" : "Error" ),
+                                               [ jqXHR, s, isSuccess ? success : error ] );
+                       }
+
+                       // Complete
+                       completeDeferred.resolveWith( callbackContext, [ jqXHR, statusText ] );
+
+                       if ( fireGlobals ) {
+                               globalEventContext.trigger( "ajaxComplete", [ jqXHR, s] );
+                               // Handle the global AJAX counter
+                               if ( !( --jQuery.active ) ) {
+                                       jQuery.event.trigger( "ajaxStop" );
+                               }
+                       }
+               }
+
+               // Attach deferreds
+               deferred.promise( jqXHR );
+               jqXHR.success = jqXHR.done;
+               jqXHR.error = jqXHR.fail;
+               jqXHR.complete = completeDeferred.done;
+
+               // Status-dependent callbacks
+               jqXHR.statusCode = function( map ) {
+                       if ( map ) {
+                               var tmp;
+                               if ( state < 2 ) {
+                                       for( tmp in map ) {
+                                               statusCode[ tmp ] = [ statusCode[tmp], map[tmp] ];
+                                       }
+                               } else {
+                                       tmp = map[ jqXHR.status ];
+                                       jqXHR.then( tmp, tmp );
+                               }
+                       }
+                       return this;
+               };
+
+               // Remove hash character (#7531: and string promotion)
+               // Add protocol if not provided (#5866: IE7 issue with protocol-less urls)
+               // We also use the url parameter if available
+               s.url = ( ( url || s.url ) + "" ).replace( rhash, "" ).replace( rprotocol, ajaxLocParts[ 1 ] + "//" );
+
+               // Extract dataTypes list
+               s.dataTypes = jQuery.trim( s.dataType || "*" ).toLowerCase().split( rspacesAjax );
+
+               // Determine if a cross-domain request is in order
+               if ( !s.crossDomain ) {
+                       parts = rurl.exec( s.url.toLowerCase() );
+                       s.crossDomain = !!( parts &&
+                               ( parts[ 1 ] != ajaxLocParts[ 1 ] || parts[ 2 ] != ajaxLocParts[ 2 ] ||
+                                       ( parts[ 3 ] || ( parts[ 1 ] === "http:" ? 80 : 443 ) ) !=
+                                               ( ajaxLocParts[ 3 ] || ( ajaxLocParts[ 1 ] === "http:" ? 80 : 443 ) ) )
+                       );
+               }
+
+               // Convert data if not already a string
+               if ( s.data && s.processData && typeof s.data !== "string" ) {
+                       s.data = jQuery.param( s.data, s.traditional );
+               }
+
+               // Apply prefilters
+               inspectPrefiltersOrTransports( prefilters, s, options, jqXHR );
+
+               // If request was aborted inside a prefiler, stop there
+               if ( state === 2 ) {
+                       return false;
+               }
+
+               // We can fire global events as of now if asked to
+               fireGlobals = s.global;
+
+               // Uppercase the type
+               s.type = s.type.toUpperCase();
+
+               // Determine if request has content
+               s.hasContent = !rnoContent.test( s.type );
+
+               // Watch for a new set of requests
+               if ( fireGlobals && jQuery.active++ === 0 ) {
+                       jQuery.event.trigger( "ajaxStart" );
+               }
+
+               // More options handling for requests with no content
+               if ( !s.hasContent ) {
+
+                       // If data is available, append data to url
+                       if ( s.data ) {
+                               s.url += ( rquery.test( s.url ) ? "&" : "?" ) + s.data;
+                       }
+
+                       // Get ifModifiedKey before adding the anti-cache parameter
+                       ifModifiedKey = s.url;
+
+                       // Add anti-cache in url if needed
+                       if ( s.cache === false ) {
+
+                               var ts = jQuery.now(),
+                                       // try replacing _= if it is there
+                                       ret = s.url.replace( rts, "$1_=" + ts );
+
+                               // if nothing was replaced, add timestamp to the end
+                               s.url = ret + ( (ret === s.url ) ? ( rquery.test( s.url ) ? "&" : "?" ) + "_=" + ts : "" );
+                       }
+               }
+
+               // Set the correct header, if data is being sent
+               if ( s.data && s.hasContent && s.contentType !== false || options.contentType ) {
+                       requestHeaders[ "Content-Type" ] = s.contentType;
+               }
+
+               // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
+               if ( s.ifModified ) {
+                       ifModifiedKey = ifModifiedKey || s.url;
+                       if ( jQuery.lastModified[ ifModifiedKey ] ) {
+                               requestHeaders[ "If-Modified-Since" ] = jQuery.lastModified[ ifModifiedKey ];
+                       }
+                       if ( jQuery.etag[ ifModifiedKey ] ) {
+                               requestHeaders[ "If-None-Match" ] = jQuery.etag[ ifModifiedKey ];
+                       }
+               }
+
+               // Set the Accepts header for the server, depending on the dataType
+               requestHeaders.Accept = s.dataTypes[ 0 ] && s.accepts[ s.dataTypes[0] ] ?
+                       s.accepts[ s.dataTypes[0] ] + ( s.dataTypes[ 0 ] !== "*" ? ", */*; q=0.01" : "" ) :
+                       s.accepts[ "*" ];
+
+               // Check for headers option
+               for ( i in s.headers ) {
+                       jqXHR.setRequestHeader( i, s.headers[ i ] );
+               }
+
+               // Allow custom headers/mimetypes and early abort
+               if ( s.beforeSend && ( s.beforeSend.call( callbackContext, jqXHR, s ) === false || state === 2 ) ) {
+                               // Abort if not done already
+                               jqXHR.abort();
+                               return false;
+
+               }
+
+               // Install callbacks on deferreds
+               for ( i in { success: 1, error: 1, complete: 1 } ) {
+                       jqXHR[ i ]( s[ i ] );
+               }
+
+               // Get transport
+               transport = inspectPrefiltersOrTransports( transports, s, options, jqXHR );
+
+               // If no transport, we auto-abort
+               if ( !transport ) {
+                       done( -1, "No Transport" );
+               } else {
+                       jqXHR.readyState = 1;
+                       // Send global event
+                       if ( fireGlobals ) {
+                               globalEventContext.trigger( "ajaxSend", [ jqXHR, s ] );
+                       }
+                       // Timeout
+                       if ( s.async && s.timeout > 0 ) {
+                               timeoutTimer = setTimeout( function(){
+                                       jqXHR.abort( "timeout" );
+                               }, s.timeout );
+                       }
+
+                       try {
+                               state = 1;
+                               transport.send( requestHeaders, done );
+                       } catch (e) {
+                               // Propagate exception as error if not done
+                               if ( status < 2 ) {
+                                       done( -1, e );
+                               // Simply rethrow otherwise
+                               } else {
+                                       jQuery.error( e );
+                               }
+                       }
+               }
+
+               return jqXHR;
+       },
+
+       // Serialize an array of form elements or a set of
+       // key/values into a query string
+       param: function( a, traditional ) {
+               var s = [],
+                       add = function( key, value ) {
+                               // If value is a function, invoke it and return its value
+                               value = jQuery.isFunction( value ) ? value() : value;
+                               s[ s.length ] = encodeURIComponent( key ) + "=" + encodeURIComponent( value );
+                       };
+
+               // Set traditional to true for jQuery <= 1.3.2 behavior.
+               if ( traditional === undefined ) {
+                       traditional = jQuery.ajaxSettings.traditional;
+               }
+
+               // If an array was passed in, assume that it is an array of form elements.
+               if ( jQuery.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) {
+                       // Serialize the form elements
+                       jQuery.each( a, function() {
+                               add( this.name, this.value );
+                       } );
+
+               } else {
+                       // If traditional, encode the "old" way (the way 1.3.2 or older
+                       // did it), otherwise encode params recursively.
+                       for ( var prefix in a ) {
+                               buildParams( prefix, a[ prefix ], traditional, add );
+                       }
+               }
+
+               // Return the resulting serialization
+               return s.join( "&" ).replace( r20, "+" );
+       }
+});
+
+function buildParams( prefix, obj, traditional, add ) {
+       if ( jQuery.isArray( obj ) && obj.length ) {
+               // Serialize array item.
+               jQuery.each( obj, function( i, v ) {
+                       if ( traditional || rbracket.test( prefix ) ) {
+                               // Treat each array item as a scalar.
+                               add( prefix, v );
+
+                       } else {
+                               // If array item is non-scalar (array or object), encode its
+                               // numeric index to resolve deserialization ambiguity issues.
+                               // Note that rack (as of 1.0.0) can't currently deserialize
+                               // nested arrays properly, and attempting to do so may cause
+                               // a server error. Possible fixes are to modify rack's
+                               // deserialization algorithm or to provide an option or flag
+                               // to force array serialization to be shallow.
+                               buildParams( prefix + "[" + ( typeof v === "object" || jQuery.isArray(v) ? i : "" ) + "]", v, traditional, add );
+                       }
+               });
+
+       } else if ( !traditional && obj != null && typeof obj === "object" ) {
+               // If we see an array here, it is empty and should be treated as an empty
+               // object
+               if ( jQuery.isArray( obj ) || jQuery.isEmptyObject( obj ) ) {
+                       add( prefix, "" );
+
+               // Serialize object item.
+               } else {
+                       for ( var name in obj ) {
+                               buildParams( prefix + "[" + name + "]", obj[ name ], traditional, add );
+                       }
+               }
+
+       } else {
+               // Serialize scalar item.
+               add( prefix, obj );
+       }
+}
+
+// This is still on the jQuery object... for now
+// Want to move this to jQuery.ajax some day
+jQuery.extend({
+
+       // Counter for holding the number of active queries
+       active: 0,
+
+       // Last-Modified header cache for next request
+       lastModified: {},
+       etag: {}
+
+});
+
+/* Handles responses to an ajax request:
+ * - sets all responseXXX fields accordingly
+ * - finds the right dataType (mediates between content-type and expected dataType)
+ * - returns the corresponding response
+ */
+function ajaxHandleResponses( s, jqXHR, responses ) {
+
+       var contents = s.contents,
+               dataTypes = s.dataTypes,
+               responseFields = s.responseFields,
+               ct,
+               type,
+               finalDataType,
+               firstDataType;
+
+       // Fill responseXXX fields
+       for( type in responseFields ) {
+               if ( type in responses ) {
+                       jqXHR[ responseFields[type] ] = responses[ type ];
+               }
+       }
+
+       // Remove auto dataType and get content-type in the process
+       while( dataTypes[ 0 ] === "*" ) {
+               dataTypes.shift();
+               if ( ct === undefined ) {
+                       ct = s.mimeType || jqXHR.getResponseHeader( "content-type" );
+               }
+       }
+
+       // Check if we're dealing with a known content-type
+       if ( ct ) {
+               for ( type in contents ) {
+                       if ( contents[ type ] && contents[ type ].test( ct ) ) {
+                               dataTypes.unshift( type );
+                               break;
+                       }
+               }
+       }
+
+       // Check to see if we have a response for the expected dataType
+       if ( dataTypes[ 0 ] in responses ) {
+               finalDataType = dataTypes[ 0 ];
+       } else {
+               // Try convertible dataTypes
+               for ( type in responses ) {
+                       if ( !dataTypes[ 0 ] || s.converters[ type + " " + dataTypes[0] ] ) {
+                               finalDataType = type;
+                               break;
+                       }
+                       if ( !firstDataType ) {
+                               firstDataType = type;
+                       }
+               }
+               // Or just use first one
+               finalDataType = finalDataType || firstDataType;
+       }
+
+       // If we found a dataType
+       // We add the dataType to the list if needed
+       // and return the corresponding response
+       if ( finalDataType ) {
+               if ( finalDataType !== dataTypes[ 0 ] ) {
+                       dataTypes.unshift( finalDataType );
+               }
+               return responses[ finalDataType ];
+       }
+}
+
+// Chain conversions given the request and the original response
+function ajaxConvert( s, response ) {
+
+       // Apply the dataFilter if provided
+       if ( s.dataFilter ) {
+               response = s.dataFilter( response, s.dataType );
+       }
+
+       var dataTypes = s.dataTypes,
+               converters = {},
+               i,
+               key,
+               length = dataTypes.length,
+               tmp,
+               // Current and previous dataTypes
+               current = dataTypes[ 0 ],
+               prev,
+               // Conversion expression
+               conversion,
+               // Conversion function
+               conv,
+               // Conversion functions (transitive conversion)
+               conv1,
+               conv2;
+
+       // For each dataType in the chain
+       for( i = 1; i < length; i++ ) {
+
+               // Create converters map
+               // with lowercased keys
+               if ( i === 1 ) {
+                       for( key in s.converters ) {
+                               if( typeof key === "string" ) {
+                                       converters[ key.toLowerCase() ] = s.converters[ key ];
+                               }
+                       }
+               }
+
+               // Get the dataTypes
+               prev = current;
+               current = dataTypes[ i ];
+
+               // If current is auto dataType, update it to prev
+               if( current === "*" ) {
+                       current = prev;
+               // If no auto and dataTypes are actually different
+               } else if ( prev !== "*" && prev !== current ) {
+
+                       // Get the converter
+                       conversion = prev + " " + current;
+                       conv = converters[ conversion ] || converters[ "* " + current ];
+
+                       // If there is no direct converter, search transitively
+                       if ( !conv ) {
+                               conv2 = undefined;
+                               for( conv1 in converters ) {
+                                       tmp = conv1.split( " " );
+                                       if ( tmp[ 0 ] === prev || tmp[ 0 ] === "*" ) {
+                                               conv2 = converters[ tmp[1] + " " + current ];
+                                               if ( conv2 ) {
+                                                       conv1 = converters[ conv1 ];
+                                                       if ( conv1 === true ) {
+                                                               conv = conv2;
+                                                       } else if ( conv2 === true ) {
+                                                               conv = conv1;
+                                                       }
+                                                       break;
+                                               }
+                                       }
+                               }
+                       }
+                       // If we found no converter, dispatch an error
+                       if ( !( conv || conv2 ) ) {
+                               jQuery.error( "No conversion from " + conversion.replace(" "," to ") );
+                       }
+                       // If found converter is not an equivalence
+                       if ( conv !== true ) {
+                               // Convert with 1 or 2 converters accordingly
+                               response = conv ? conv( response ) : conv2( conv1(response) );
+                       }
+               }
+       }
+       return response;
+}
+
+
+
+
+var jsc = jQuery.now(),
+       jsre = /(\=)\?(&|$)|()\?\?()/i;
+
+// Default jsonp settings
+jQuery.ajaxSetup({
+       jsonp: "callback",
+       jsonpCallback: function() {
+               return jQuery.expando + "_" + ( jsc++ );
+       }
+});
+
+// Detect, normalize options and install callbacks for jsonp requests
+jQuery.ajaxPrefilter( "json jsonp", function( s, originalSettings, jqXHR ) {
+
+       var dataIsString = ( typeof s.data === "string" );
+
+       if ( s.dataTypes[ 0 ] === "jsonp" ||
+               originalSettings.jsonpCallback ||
+               originalSettings.jsonp != null ||
+               s.jsonp !== false && ( jsre.test( s.url ) ||
+                               dataIsString && jsre.test( s.data ) ) ) {
+
+               var responseContainer,
+                       jsonpCallback = s.jsonpCallback =
+                               jQuery.isFunction( s.jsonpCallback ) ? s.jsonpCallback() : s.jsonpCallback,
+                       previous = window[ jsonpCallback ],
+                       url = s.url,
+                       data = s.data,
+                       replace = "$1" + jsonpCallback + "$2",
+                       cleanUp = function() {
+                               // Set callback back to previous value
+                               window[ jsonpCallback ] = previous;
+                               // Call if it was a function and we have a response
+                               if ( responseContainer && jQuery.isFunction( previous ) ) {
+                                       window[ jsonpCallback ]( responseContainer[ 0 ] );
+                               }
+                       };
+
+               if ( s.jsonp !== false ) {
+                       url = url.replace( jsre, replace );
+                       if ( s.url === url ) {
+                               if ( dataIsString ) {
+                                       data = data.replace( jsre, replace );
+                               }
+                               if ( s.data === data ) {
+                                       // Add callback manually
+                                       url += (/\?/.test( url ) ? "&" : "?") + s.jsonp + "=" + jsonpCallback;
+                               }
+                       }
+               }
+
+               s.url = url;
+               s.data = data;
+
+               // Install callback
+               window[ jsonpCallback ] = function( response ) {
+                       responseContainer = [ response ];
+               };
+
+               // Install cleanUp function
+               jqXHR.then( cleanUp, cleanUp );
+
+               // Use data converter to retrieve json after script execution
+               s.converters["script json"] = function() {
+                       if ( !responseContainer ) {
+                               jQuery.error( jsonpCallback + " was not called" );
+                       }
+                       return responseContainer[ 0 ];
+               };
+
+               // force json dataType
+               s.dataTypes[ 0 ] = "json";
+
+               // Delegate to script
+               return "script";
+       }
+} );
+
+
+
+
+// Install script dataType
+jQuery.ajaxSetup({
+       accepts: {
+               script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"
+       },
+       contents: {
+               script: /javascript|ecmascript/
+       },
+       converters: {
+               "text script": function( text ) {
+                       jQuery.globalEval( text );
+                       return text;
+               }
+       }
+});
+
+// Handle cache's special case and global
+jQuery.ajaxPrefilter( "script", function( s ) {
+       if ( s.cache === undefined ) {
+               s.cache = false;
+       }
+       if ( s.crossDomain ) {
+               s.type = "GET";
+               s.global = false;
+       }
+} );
+
+// Bind script tag hack transport
+jQuery.ajaxTransport( "script", function(s) {
+
+       // This transport only deals with cross domain requests
+       if ( s.crossDomain ) {
+
+               var script,
+                       head = document.head || document.getElementsByTagName( "head" )[0] || document.documentElement;
+
+               return {
+
+                       send: function( _, callback ) {
+
+                               script = document.createElement( "script" );
+
+                               script.async = "async";
+
+                               if ( s.scriptCharset ) {
+                                       script.charset = s.scriptCharset;
+                               }
+
+                               script.src = s.url;
+
+                               // Attach handlers for all browsers
+                               script.onload = script.onreadystatechange = function( _, isAbort ) {
+
+                                       if ( !script.readyState || /loaded|complete/.test( script.readyState ) ) {
+
+                                               // Handle memory leak in IE
+                                               script.onload = script.onreadystatechange = null;
+
+                                               // Remove the script
+                                               if ( head && script.parentNode ) {
+                                                       head.removeChild( script );
+                                               }
+
+                                               // Dereference the script
+                                               script = undefined;
+
+                                               // Callback if not abort
+                                               if ( !isAbort ) {
+                                                       callback( 200, "success" );
+                                               }
+                                       }
+                               };
+                               // Use insertBefore instead of appendChild  to circumvent an IE6 bug.
+                               // This arises when a base node is used (#2709 and #4378).
+                               head.insertBefore( script, head.firstChild );
+                       },
+
+                       abort: function() {
+                               if ( script ) {
+                                       script.onload( 0, 1 );
+                               }
+                       }
+               };
+       }
+} );
+
+
+
+
+var // #5280: next active xhr id and list of active xhrs' callbacks
+       xhrId = jQuery.now(),
+       xhrCallbacks,
+
+       // XHR used to determine supports properties
+       testXHR;
+
+// #5280: Internet Explorer will keep connections alive if we don't abort on unload
+function xhrOnUnloadAbort() {
+       jQuery( window ).unload(function() {
+               // Abort all pending requests
+               for ( var key in xhrCallbacks ) {
+                       xhrCallbacks[ key ]( 0, 1 );
+               }
+       });
+}
+
+// Functions to create xhrs
+function createStandardXHR() {
+       try {
+               return new window.XMLHttpRequest();
+       } catch( e ) {}
+}
+
+function createActiveXHR() {
+       try {
+               return new window.ActiveXObject( "Microsoft.XMLHTTP" );
+       } catch( e ) {}
+}
+
+// Create the request object
+// (This is still attached to ajaxSettings for backward compatibility)
+jQuery.ajaxSettings.xhr = window.ActiveXObject ?
+       /* Microsoft failed to properly
+        * implement the XMLHttpRequest in IE7 (can't request local files),
+        * so we use the ActiveXObject when it is available
+        * Additionally XMLHttpRequest can be disabled in IE7/IE8 so
+        * we need a fallback.
+        */
+       function() {
+               return !this.isLocal && createStandardXHR() || createActiveXHR();
+       } :
+       // For all other browsers, use the standard XMLHttpRequest object
+       createStandardXHR;
+
+// Test if we can create an xhr object
+testXHR = jQuery.ajaxSettings.xhr();
+jQuery.support.ajax = !!testXHR;
+
+// Does this browser support crossDomain XHR requests
+jQuery.support.cors = testXHR && ( "withCredentials" in testXHR );
+
+// No need for the temporary xhr anymore
+testXHR = undefined;
+
+// Create transport if the browser can provide an xhr
+if ( jQuery.support.ajax ) {
+
+       jQuery.ajaxTransport(function( s ) {
+               // Cross domain only allowed if supported through XMLHttpRequest
+               if ( !s.crossDomain || jQuery.support.cors ) {
+
+                       var callback;
+
+                       return {
+                               send: function( headers, complete ) {
+
+                                       // Get a new xhr
+                                       var xhr = s.xhr(),
+                                               handle,
+                                               i;
+
+                                       // Open the socket
+                                       // Passing null username, generates a login popup on Opera (#2865)
+                                       if ( s.username ) {
+                                               xhr.open( s.type, s.url, s.async, s.username, s.password );
+                                       } else {
+                                               xhr.open( s.type, s.url, s.async );
+                                       }
+
+                                       // Apply custom fields if provided
+                                       if ( s.xhrFields ) {
+                                               for ( i in s.xhrFields ) {
+                                                       xhr[ i ] = s.xhrFields[ i ];
+                                               }
+                                       }
+
+                                       // Override mime type if needed
+                                       if ( s.mimeType && xhr.overrideMimeType ) {
+                                               xhr.overrideMimeType( s.mimeType );
+                                       }
+
+                                       // Requested-With header
+                                       // Not set for crossDomain requests with no content
+                                       // (see why at http://trac.dojotoolkit.org/ticket/9486)
+                                       // Won't change header if already provided
+                                       if ( !( s.crossDomain && !s.hasContent ) && !headers["X-Requested-With"] ) {
+                                               headers[ "X-Requested-With" ] = "XMLHttpRequest";
+                                       }
+
+                                       // Need an extra try/catch for cross domain requests in Firefox 3
+                                       try {
+                                               for ( i in headers ) {
+                                                       xhr.setRequestHeader( i, headers[ i ] );
+                                               }
+                                       } catch( _ ) {}
+
+                                       // Do send the request
+                                       // This may raise an exception which is actually
+                                       // handled in jQuery.ajax (so no try/catch here)
+                                       xhr.send( ( s.hasContent && s.data ) || null );
+
+                                       // Listener
+                                       callback = function( _, isAbort ) {
+
+                                               var status,
+                                                       statusText,
+                                                       responseHeaders,
+                                                       responses,
+                                                       xml;
+
+                                               // Firefox throws exceptions when accessing properties
+                                               // of an xhr when a network error occured
+                                               // http://helpful.knobs-dials.com/index.php/Component_returned_failure_code:_0x80040111_(NS_ERROR_NOT_AVAILABLE)
+                                               try {
+
+                                                       // Was never called and is aborted or complete
+                                                       if ( callback && ( isAbort || xhr.readyState === 4 ) ) {
+
+                                                               // Only called once
+                                                               callback = undefined;
+
+                                                               // Do not keep as active anymore
+                                                               if ( handle ) {
+                                                                       xhr.onreadystatechange = jQuery.noop;
+                                                                       delete xhrCallbacks[ handle ];
+                                                               }
+
+                                                               // If it's an abort
+                                                               if ( isAbort ) {
+                                                                       // Abort it manually if needed
+                                                                       if ( xhr.readyState !== 4 ) {
+                                                                               xhr.abort();
+                                                                       }
+                                                               } else {
+                                                                       status = xhr.status;
+                                                                       responseHeaders = xhr.getAllResponseHeaders();
+                                                                       responses = {};
+                                                                       xml = xhr.responseXML;
+
+                                                                       // Construct response list
+                                                                       if ( xml && xml.documentElement /* #4958 */ ) {
+                                                                               responses.xml = xml;
+                                                                       }
+                                                                       responses.text = xhr.responseText;
+
+                                                                       // Firefox throws an exception when accessing
+                                                                       // statusText for faulty cross-domain requests
+                                                                       try {
+                                                                               statusText = xhr.statusText;
+                                                                       } catch( e ) {
+                                                                               // We normalize with Webkit giving an empty statusText
+                                                                               statusText = "";
+                                                                       }
+
+                                                                       // Filter status for non standard behaviors
+
+                                                                       // If the request is local and we have data: assume a success
+                                                                       // (success with no data won't get notified, that's the best we
+                                                                       // can do given current implementations)
+                                                                       if ( !status && s.isLocal && !s.crossDomain ) {
+                                                                               status = responses.text ? 200 : 404;
+                                                                       // IE - #1450: sometimes returns 1223 when it should be 204
+                                                                       } else if ( status === 1223 ) {
+                                                                               status = 204;
+                                                                       }
+                                                               }
+                                                       }
+                                               } catch( firefoxAccessException ) {
+                                                       if ( !isAbort ) {
+                                                               complete( -1, firefoxAccessException );
+                                                       }
+                                               }
+
+                                               // Call complete if needed
+                                               if ( responses ) {
+                                                       complete( status, statusText, responses, responseHeaders );
+                                               }
+                                       };
+
+                                       // if we're in sync mode or it's in cache
+                                       // and has been retrieved directly (IE6 & IE7)
+                                       // we need to manually fire the callback
+                                       if ( !s.async || xhr.readyState === 4 ) {
+                                               callback();
+                                       } else {
+                                               // Create the active xhrs callbacks list if needed
+                                               // and attach the unload handler
+                                               if ( !xhrCallbacks ) {
+                                                       xhrCallbacks = {};
+                                                       xhrOnUnloadAbort();
+                                               }
+                                               // Add to list of active xhrs callbacks
+                                               handle = xhrId++;
+                                               xhr.onreadystatechange = xhrCallbacks[ handle ] = callback;
+                                       }
+                               },
+
+                               abort: function() {
+                                       if ( callback ) {
+                                               callback(0,1);
+                                       }
+                               }
+                       };
+               }
+       });
+}
+
+
+
+
+var elemdisplay = {},
+       rfxtypes = /^(?:toggle|show|hide)$/,
+       rfxnum = /^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,
+       timerId,
+       fxAttrs = [
+               // height animations
+               [ "height", "marginTop", "marginBottom", "paddingTop", "paddingBottom" ],
+               // width animations
+               [ "width", "marginLeft", "marginRight", "paddingLeft", "paddingRight" ],
+               // opacity animations
+               [ "opacity" ]
+       ];
+
+jQuery.fn.extend({
+       show: function( speed, easing, callback ) {
+               var elem, display;
+
+               if ( speed || speed === 0 ) {
+                       return this.animate( genFx("show", 3), speed, easing, callback);
+
+               } else {
+                       for ( var i = 0, j = this.length; i < j; i++ ) {
+                               elem = this[i];
+                               display = elem.style.display;
+
+                               // Reset the inline display of this element to learn if it is
+                               // being hidden by cascaded rules or not
+                               if ( !jQuery._data(elem, "olddisplay") && display === "none" ) {
+                                       display = elem.style.display = "";
+                               }
+
+                               // Set elements which have been overridden with display: none
+                               // in a stylesheet to whatever the default browser style is
+                               // for such an element
+                               if ( display === "" && jQuery.css( elem, "display" ) === "none" ) {
+                                       jQuery._data(elem, "olddisplay", defaultDisplay(elem.nodeName));
+                               }
+                       }
+
+                       // Set the display of most of the elements in a second loop
+                       // to avoid the constant reflow
+                       for ( i = 0; i < j; i++ ) {
+                               elem = this[i];
+                               display = elem.style.display;
+
+                               if ( display === "" || display === "none" ) {
+                                       elem.style.display = jQuery._data(elem, "olddisplay") || "";
+                               }
+                       }
+
+                       return this;
+               }
+       },
+
+       hide: function( speed, easing, callback ) {
+               if ( speed || speed === 0 ) {
+                       return this.animate( genFx("hide", 3), speed, easing, callback);
+
+               } else {
+                       for ( var i = 0, j = this.length; i < j; i++ ) {
+                               var display = jQuery.css( this[i], "display" );
+
+                               if ( display !== "none" && !jQuery._data( this[i], "olddisplay" ) ) {
+                                       jQuery._data( this[i], "olddisplay", display );
+                               }
+                       }
+
+                       // Set the display of the elements in a second loop
+                       // to avoid the constant reflow
+                       for ( i = 0; i < j; i++ ) {
+                               this[i].style.display = "none";
+                       }
+
+                       return this;
+               }
+       },
+
+       // Save the old toggle function
+       _toggle: jQuery.fn.toggle,
+
+       toggle: function( fn, fn2, callback ) {
+               var bool = typeof fn === "boolean";
+
+               if ( jQuery.isFunction(fn) && jQuery.isFunction(fn2) ) {
+                       this._toggle.apply( this, arguments );
+
+               } else if ( fn == null || bool ) {
+                       this.each(function() {
+                               var state = bool ? fn : jQuery(this).is(":hidden");
+                               jQuery(this)[ state ? "show" : "hide" ]();
+                       });
+
+               } else {
+                       this.animate(genFx("toggle", 3), fn, fn2, callback);
+               }
+
+               return this;
+       },
+
+       fadeTo: function( speed, to, easing, callback ) {
+               return this.filter(":hidden").css("opacity", 0).show().end()
+                                       .animate({opacity: to}, speed, easing, callback);
+       },
+
+       animate: function( prop, speed, easing, callback ) {
+               var optall = jQuery.speed(speed, easing, callback);
+
+               if ( jQuery.isEmptyObject( prop ) ) {
+                       return this.each( optall.complete );
+               }
+
+               return this[ optall.queue === false ? "each" : "queue" ](function() {
+                       // XXX 'this' does not always have a nodeName when running the
+                       // test suite
+
+                       var opt = jQuery.extend({}, optall), p,
+                               isElement = this.nodeType === 1,
+                               hidden = isElement && jQuery(this).is(":hidden"),
+                               self = this;
+
+                       for ( p in prop ) {
+                               var name = jQuery.camelCase( p );
+
+                               if ( p !== name ) {
+                                       prop[ name ] = prop[ p ];
+                                       delete prop[ p ];
+                                       p = name;
+                               }
+
+                               if ( prop[p] === "hide" && hidden || prop[p] === "show" && !hidden ) {
+                                       return opt.complete.call(this);
+                               }
+
+                               if ( isElement && ( p === "height" || p === "width" ) ) {
+                                       // Make sure that nothing sneaks out
+                                       // Record all 3 overflow attributes because IE does not
+                                       // change the overflow attribute when overflowX and
+                                       // overflowY are set to the same value
+                                       opt.overflow = [ this.style.overflow, this.style.overflowX, this.style.overflowY ];
+
+                                       // Set display property to inline-block for height/width
+                                       // animations on inline elements that are having width/height
+                                       // animated
+                                       if ( jQuery.css( this, "display" ) === "inline" &&
+                                                       jQuery.css( this, "float" ) === "none" ) {
+                                               if ( !jQuery.support.inlineBlockNeedsLayout ) {
+                                                       this.style.display = "inline-block";
+
+                                               } else {
+                                                       var display = defaultDisplay(this.nodeName);
+
+                                                       // inline-level elements accept inline-block;
+                                                       // block-level elements need to be inline with layout
+                                                       if ( display === "inline" ) {
+                                                               this.style.display = "inline-block";
+
+                                                       } else {
+                                                               this.style.display = "inline";
+                                                               this.style.zoom = 1;
+                                                       }
+                                               }
+                                       }
+                               }
+
+                               if ( jQuery.isArray( prop[p] ) ) {
+                                       // Create (if needed) and add to specialEasing
+                                       (opt.specialEasing = opt.specialEasing || {})[p] = prop[p][1];
+                                       prop[p] = prop[p][0];
+                               }
+                       }
+
+                       if ( opt.overflow != null ) {
+                               this.style.overflow = "hidden";
+                       }
+
+                       opt.curAnim = jQuery.extend({}, prop);
+
+                       jQuery.each( prop, function( name, val ) {
+                               var e = new jQuery.fx( self, opt, name );
+
+                               if ( rfxtypes.test(val) ) {
+                                       e[ val === "toggle" ? hidden ? "show" : "hide" : val ]( prop );
+
+                               } else {
+                                       var parts = rfxnum.exec(val),
+                                               start = e.cur();
+
+                                       if ( parts ) {
+                                               var end = parseFloat( parts[2] ),
+                                                       unit = parts[3] || ( jQuery.cssNumber[ name ] ? "" : "px" );
+
+                                               // We need to compute starting value
+                                               if ( unit !== "px" ) {
+                                                       jQuery.style( self, name, (end || 1) + unit);
+                                                       start = ((end || 1) / e.cur()) * start;
+                                                       jQuery.style( self, name, start + unit);
+                                               }
+
+                                               // If a +=/-= token was provided, we're doing a relative animation
+                                               if ( parts[1] ) {
+                                                       end = ((parts[1] === "-=" ? -1 : 1) * end) + start;
+                                               }
+
+                                               e.custom( start, end, unit );
+
+                                       } else {
+                                               e.custom( start, val, "" );
+                                       }
+                               }
+                       });
+
+                       // For JS strict compliance
+                       return true;
+               });
+       },
+
+       stop: function( clearQueue, gotoEnd ) {
+               var timers = jQuery.timers;
+
+               if ( clearQueue ) {
+                       this.queue([]);
+               }
+
+               this.each(function() {
+                       // go in reverse order so anything added to the queue during the loop is ignored
+                       for ( var i = timers.length - 1; i >= 0; i-- ) {
+                               if ( timers[i].elem === this ) {
+                                       if (gotoEnd) {
+                                               // force the next step to be the last
+                                               timers[i](true);
+                                       }
+
+                                       timers.splice(i, 1);
+                               }
+                       }
+               });
+
+               // start the next in the queue if the last step wasn't forced
+               if ( !gotoEnd ) {
+                       this.dequeue();
+               }
+
+               return this;
+       }
+
+});
+
+function genFx( type, num ) {
+       var obj = {};
+
+       jQuery.each( fxAttrs.concat.apply([], fxAttrs.slice(0,num)), function() {
+               obj[ this ] = type;
+       });
+
+       return obj;
+}
+
+// Generate shortcuts for custom animations
+jQuery.each({
+       slideDown: genFx("show", 1),
+       slideUp: genFx("hide", 1),
+       slideToggle: genFx("toggle", 1),
+       fadeIn: { opacity: "show" },
+       fadeOut: { opacity: "hide" },
+       fadeToggle: { opacity: "toggle" }
+}, function( name, props ) {
+       jQuery.fn[ name ] = function( speed, easing, callback ) {
+               return this.animate( props, speed, easing, callback );
+       };
+});
+
+jQuery.extend({
+       speed: function( speed, easing, fn ) {
+               var opt = speed && typeof speed === "object" ? jQuery.extend({}, speed) : {
+                       complete: fn || !fn && easing ||
+                               jQuery.isFunction( speed ) && speed,
+                       duration: speed,
+                       easing: fn && easing || easing && !jQuery.isFunction(easing) && easing
+               };
+
+               opt.duration = jQuery.fx.off ? 0 : typeof opt.duration === "number" ? opt.duration :
+                       opt.duration in jQuery.fx.speeds ? jQuery.fx.speeds[opt.duration] : jQuery.fx.speeds._default;
+
+               // Queueing
+               opt.old = opt.complete;
+               opt.complete = function() {
+                       if ( opt.queue !== false ) {
+                               jQuery(this).dequeue();
+                       }
+                       if ( jQuery.isFunction( opt.old ) ) {
+                               opt.old.call( this );
+                       }
+               };
+
+               return opt;
+       },
+
+       easing: {
+               linear: function( p, n, firstNum, diff ) {
+                       return firstNum + diff * p;
+               },
+               swing: function( p, n, firstNum, diff ) {
+                       return ((-Math.cos(p*Math.PI)/2) + 0.5) * diff + firstNum;
+               }
+       },
+
+       timers: [],
+
+       fx: function( elem, options, prop ) {
+               this.options = options;
+               this.elem = elem;
+               this.prop = prop;
+
+               if ( !options.orig ) {
+                       options.orig = {};
+               }
+       }
+
+});
+
+jQuery.fx.prototype = {
+       // Simple function for setting a style value
+       update: function() {
+               if ( this.options.step ) {
+                       this.options.step.call( this.elem, this.now, this );
+               }
+
+               (jQuery.fx.step[this.prop] || jQuery.fx.step._default)( this );
+       },
+
+       // Get the current size
+       cur: function() {
+               if ( this.elem[this.prop] != null && (!this.elem.style || this.elem.style[this.prop] == null) ) {
+                       return this.elem[ this.prop ];
+               }
+
+               var parsed,
+                       r = jQuery.css( this.elem, this.prop );
+               // Empty strings, null, undefined and "auto" are converted to 0,
+               // complex values such as "rotate(1rad)" are returned as is,
+               // simple values such as "10px" are parsed to Float.
+               return isNaN( parsed = parseFloat( r ) ) ? !r || r === "auto" ? 0 : r : parsed;
+       },
+
+       // Start an animation from one number to another
+       custom: function( from, to, unit ) {
+               var self = this,
+                       fx = jQuery.fx;
+
+               this.startTime = jQuery.now();
+               this.start = from;
+               this.end = to;
+               this.unit = unit || this.unit || ( jQuery.cssNumber[ this.prop ] ? "" : "px" );
+               this.now = this.start;
+               this.pos = this.state = 0;
+
+               function t( gotoEnd ) {
+                       return self.step(gotoEnd);
+               }
+
+               t.elem = this.elem;
+
+               if ( t() && jQuery.timers.push(t) && !timerId ) {
+                       timerId = setInterval(fx.tick, fx.interval);
+               }
+       },
+
+       // Simple 'show' function
+       show: function() {
+               // Remember where we started, so that we can go back to it later
+               this.options.orig[this.prop] = jQuery.style( this.elem, this.prop );
+               this.options.show = true;
+
+               // Begin the animation
+               // Make sure that we start at a small width/height to avoid any
+               // flash of content
+               this.custom(this.prop === "width" || this.prop === "height" ? 1 : 0, this.cur());
+
+               // Start by showing the element
+               jQuery( this.elem ).show();
+       },
+
+       // Simple 'hide' function
+       hide: function() {
+               // Remember where we started, so that we can go back to it later
+               this.options.orig[this.prop] = jQuery.style( this.elem, this.prop );
+               this.options.hide = true;
+
+               // Begin the animation
+               this.custom(this.cur(), 0);
+       },
+
+       // Each step of an animation
+       step: function( gotoEnd ) {
+               var t = jQuery.now(), done = true;
+
+               if ( gotoEnd || t >= this.options.duration + this.startTime ) {
+                       this.now = this.end;
+                       this.pos = this.state = 1;
+                       this.update();
+
+                       this.options.curAnim[ this.prop ] = true;
+
+                       for ( var i in this.options.curAnim ) {
+                               if ( this.options.curAnim[i] !== true ) {
+                                       done = false;
+                               }
+                       }
+
+                       if ( done ) {
+                               // Reset the overflow
+                               if ( this.options.overflow != null && !jQuery.support.shrinkWrapBlocks ) {
+                                       var elem = this.elem,
+                                               options = this.options;
+
+                                       jQuery.each( [ "", "X", "Y" ], function (index, value) {
+                                               elem.style[ "overflow" + value ] = options.overflow[index];
+                                       } );
+                               }
+
+                               // Hide the element if the "hide" operation was done
+                               if ( this.options.hide ) {
+                                       jQuery(this.elem).hide();
+                               }
+
+                               // Reset the properties, if the item has been hidden or shown
+                               if ( this.options.hide || this.options.show ) {
+                                       for ( var p in this.options.curAnim ) {
+                                               jQuery.style( this.elem, p, this.options.orig[p] );
+                                       }
+                               }
+
+                               // Execute the complete function
+                               this.options.complete.call( this.elem );
+                       }
+
+                       return false;
+
+               } else {
+                       var n = t - this.startTime;
+                       this.state = n / this.options.duration;
+
+                       // Perform the easing function, defaults to swing
+                       var specialEasing = this.options.specialEasing && this.options.specialEasing[this.prop];
+                       var defaultEasing = this.options.easing || (jQuery.easing.swing ? "swing" : "linear");
+                       this.pos = jQuery.easing[specialEasing || defaultEasing](this.state, n, 0, 1, this.options.duration);
+                       this.now = this.start + ((this.end - this.start) * this.pos);
+
+                       // Perform the next step of the animation
+                       this.update();
+               }
+
+               return true;
+       }
+};
+
+jQuery.extend( jQuery.fx, {
+       tick: function() {
+               var timers = jQuery.timers;
+
+               for ( var i = 0; i < timers.length; i++ ) {
+                       if ( !timers[i]() ) {
+                               timers.splice(i--, 1);
+                       }
+               }
+
+               if ( !timers.length ) {
+                       jQuery.fx.stop();
+               }
+       },
+
+       interval: 13,
+
+       stop: function() {
+               clearInterval( timerId );
+               timerId = null;
+       },
+
+       speeds: {
+               slow: 600,
+               fast: 200,
+               // Default speed
+               _default: 400
+       },
+
+       step: {
+               opacity: function( fx ) {
+                       jQuery.style( fx.elem, "opacity", fx.now );
+               },
+
+               _default: function( fx ) {
+                       if ( fx.elem.style && fx.elem.style[ fx.prop ] != null ) {
+                               fx.elem.style[ fx.prop ] = (fx.prop === "width" || fx.prop === "height" ? Math.max(0, fx.now) : fx.now) + fx.unit;
+                       } else {
+                               fx.elem[ fx.prop ] = fx.now;
+                       }
+               }
+       }
+});
+
+if ( jQuery.expr && jQuery.expr.filters ) {
+       jQuery.expr.filters.animated = function( elem ) {
+               return jQuery.grep(jQuery.timers, function( fn ) {
+                       return elem === fn.elem;
+               }).length;
+       };
+}
+
+function defaultDisplay( nodeName ) {
+       if ( !elemdisplay[ nodeName ] ) {
+               var elem = jQuery("<" + nodeName + ">").appendTo("body"),
+                       display = elem.css("display");
+
+               elem.remove();
+
+               if ( display === "none" || display === "" ) {
+                       display = "block";
+               }
+
+               elemdisplay[ nodeName ] = display;
+       }
+
+       return elemdisplay[ nodeName ];
+}
+
+
+
+
+var rtable = /^t(?:able|d|h)$/i,
+       rroot = /^(?:body|html)$/i;
+
+if ( "getBoundingClientRect" in document.documentElement ) {
+       jQuery.fn.offset = function( options ) {
+               var elem = this[0], box;
+
+               if ( options ) {
+                       return this.each(function( i ) {
+                               jQuery.offset.setOffset( this, options, i );
+                       });
+               }
+
+               if ( !elem || !elem.ownerDocument ) {
+                       return null;
+               }
+
+               if ( elem === elem.ownerDocument.body ) {
+                       return jQuery.offset.bodyOffset( elem );
+               }
+
+               try {
+                       box = elem.getBoundingClientRect();
+               } catch(e) {}
+
+               var doc = elem.ownerDocument,
+                       docElem = doc.documentElement;
+
+               // Make sure we're not dealing with a disconnected DOM node
+               if ( !box || !jQuery.contains( docElem, elem ) ) {
+                       return box ? { top: box.top, left: box.left } : { top: 0, left: 0 };
+               }
+
+               var body = doc.body,
+                       win = getWindow(doc),
+                       clientTop  = docElem.clientTop  || body.clientTop  || 0,
+                       clientLeft = docElem.clientLeft || body.clientLeft || 0,
+                       scrollTop  = (win.pageYOffset || jQuery.support.boxModel && docElem.scrollTop  || body.scrollTop ),
+                       scrollLeft = (win.pageXOffset || jQuery.support.boxModel && docElem.scrollLeft || body.scrollLeft),
+                       top  = box.top  + scrollTop  - clientTop,
+                       left = box.left + scrollLeft - clientLeft;
+
+               return { top: top, left: left };
+       };
+
+} else {
+       jQuery.fn.offset = function( options ) {
+               var elem = this[0];
+
+               if ( options ) {
+                       return this.each(function( i ) {
+                               jQuery.offset.setOffset( this, options, i );
+                       });
+               }
+
+               if ( !elem || !elem.ownerDocument ) {
+                       return null;
+               }
+
+               if ( elem === elem.ownerDocument.body ) {
+                       return jQuery.offset.bodyOffset( elem );
+               }
+
+               jQuery.offset.initialize();
+
+               var computedStyle,
+                       offsetParent = elem.offsetParent,
+                       prevOffsetParent = elem,
+                       doc = elem.ownerDocument,
+                       docElem = doc.documentElement,
+                       body = doc.body,
+                       defaultView = doc.defaultView,
+                       prevComputedStyle = defaultView ? defaultView.getComputedStyle( elem, null ) : elem.currentStyle,
+                       top = elem.offsetTop,
+                       left = elem.offsetLeft;
+
+               while ( (elem = elem.parentNode) && elem !== body && elem !== docElem ) {
+                       if ( jQuery.offset.supportsFixedPosition && prevComputedStyle.position === "fixed" ) {
+                               break;
+                       }
+
+                       computedStyle = defaultView ? defaultView.getComputedStyle(elem, null) : elem.currentStyle;
+                       top  -= elem.scrollTop;
+                       left -= elem.scrollLeft;
+
+                       if ( elem === offsetParent ) {
+                               top  += elem.offsetTop;
+                               left += elem.offsetLeft;
+
+                               if ( jQuery.offset.doesNotAddBorder && !(jQuery.offset.doesAddBorderForTableAndCells && rtable.test(elem.nodeName)) ) {
+                                       top  += parseFloat( computedStyle.borderTopWidth  ) || 0;
+                                       left += parseFloat( computedStyle.borderLeftWidth ) || 0;
+                               }
+
+                               prevOffsetParent = offsetParent;
+                               offsetParent = elem.offsetParent;
+                       }
+
+                       if ( jQuery.offset.subtractsBorderForOverflowNotVisible && computedStyle.overflow !== "visible" ) {
+                               top  += parseFloat( computedStyle.borderTopWidth  ) || 0;
+                               left += parseFloat( computedStyle.borderLeftWidth ) || 0;
+                       }
+
+                       prevComputedStyle = computedStyle;
+               }
+
+               if ( prevComputedStyle.position === "relative" || prevComputedStyle.position === "static" ) {
+                       top  += body.offsetTop;
+                       left += body.offsetLeft;
+               }
+
+               if ( jQuery.offset.supportsFixedPosition && prevComputedStyle.position === "fixed" ) {
+                       top  += Math.max( docElem.scrollTop, body.scrollTop );
+                       left += Math.max( docElem.scrollLeft, body.scrollLeft );
+               }
+
+               return { top: top, left: left };
+       };
+}
+
+jQuery.offset = {
+       initialize: function() {
+               var body = document.body, container = document.createElement("div"), innerDiv, checkDiv, table, td, bodyMarginTop = parseFloat( jQuery.css(body, "marginTop") ) || 0,
+                       html = "<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";
+
+               jQuery.extend( container.style, { position: "absolute", top: 0, left: 0, margin: 0, border: 0, width: "1px", height: "1px", visibility: "hidden" } );
+
+               container.innerHTML = html;
+               body.insertBefore( container, body.firstChild );
+               innerDiv = container.firstChild;
+               checkDiv = innerDiv.firstChild;
+               td = innerDiv.nextSibling.firstChild.firstChild;
+
+               this.doesNotAddBorder = (checkDiv.offsetTop !== 5);
+               this.doesAddBorderForTableAndCells = (td.offsetTop === 5);
+
+               checkDiv.style.position = "fixed";
+               checkDiv.style.top = "20px";
+
+               // safari subtracts parent border width here which is 5px
+               this.supportsFixedPosition = (checkDiv.offsetTop === 20 || checkDiv.offsetTop === 15);
+               checkDiv.style.position = checkDiv.style.top = "";
+
+               innerDiv.style.overflow = "hidden";
+               innerDiv.style.position = "relative";
+
+               this.subtractsBorderForOverflowNotVisible = (checkDiv.offsetTop === -5);
+
+               this.doesNotIncludeMarginInBodyOffset = (body.offsetTop !== bodyMarginTop);
+
+               body.removeChild( container );
+               body = container = innerDiv = checkDiv = table = td = null;
+               jQuery.offset.initialize = jQuery.noop;
+       },
+
+       bodyOffset: function( body ) {
+               var top = body.offsetTop,
+                       left = body.offsetLeft;
+
+               jQuery.offset.initialize();
+
+               if ( jQuery.offset.doesNotIncludeMarginInBodyOffset ) {
+                       top  += parseFloat( jQuery.css(body, "marginTop") ) || 0;
+                       left += parseFloat( jQuery.css(body, "marginLeft") ) || 0;
+               }
+
+               return { top: top, left: left };
+       },
+
+       setOffset: function( elem, options, i ) {
+               var position = jQuery.css( elem, "position" );
+
+               // set position first, in-case top/left are set even on static elem
+               if ( position === "static" ) {
+                       elem.style.position = "relative";
+               }
+
+               var curElem = jQuery( elem ),
+                       curOffset = curElem.offset(),
+                       curCSSTop = jQuery.css( elem, "top" ),
+                       curCSSLeft = jQuery.css( elem, "left" ),
+                       calculatePosition = (position === "absolute" && jQuery.inArray('auto', [curCSSTop, curCSSLeft]) > -1),
+                       props = {}, curPosition = {}, curTop, curLeft;
+
+               // need to be able to calculate position if either top or left is auto and position is absolute
+               if ( calculatePosition ) {
+                       curPosition = curElem.position();
+               }
+
+               curTop  = calculatePosition ? curPosition.top  : parseInt( curCSSTop,  10 ) || 0;
+               curLeft = calculatePosition ? curPosition.left : parseInt( curCSSLeft, 10 ) || 0;
+
+               if ( jQuery.isFunction( options ) ) {
+                       options = options.call( elem, i, curOffset );
+               }
+
+               if (options.top != null) {
+                       props.top = (options.top - curOffset.top) + curTop;
+               }
+               if (options.left != null) {
+                       props.left = (options.left - curOffset.left) + curLeft;
+               }
+
+               if ( "using" in options ) {
+                       options.using.call( elem, props );
+               } else {
+                       curElem.css( props );
+               }
+       }
+};
+
+
+jQuery.fn.extend({
+       position: function() {
+               if ( !this[0] ) {
+                       return null;
+               }
+
+               var elem = this[0],
+
+               // Get *real* offsetParent
+               offsetParent = this.offsetParent(),
+
+               // Get correct offsets
+               offset       = this.offset(),
+               parentOffset = rroot.test(offsetParent[0].nodeName) ? { top: 0, left: 0 } : offsetParent.offset();
+
+               // Subtract element margins
+               // note: when an element has margin: auto the offsetLeft and marginLeft
+               // are the same in Safari causing offset.left to incorrectly be 0
+               offset.top  -= parseFloat( jQuery.css(elem, "marginTop") ) || 0;
+               offset.left -= parseFloat( jQuery.css(elem, "marginLeft") ) || 0;
+
+               // Add offsetParent borders
+               parentOffset.top  += parseFloat( jQuery.css(offsetParent[0], "borderTopWidth") ) || 0;
+               parentOffset.left += parseFloat( jQuery.css(offsetParent[0], "borderLeftWidth") ) || 0;
+
+               // Subtract the two offsets
+               return {
+                       top:  offset.top  - parentOffset.top,
+                       left: offset.left - parentOffset.left
+               };
+       },
+
+       offsetParent: function() {
+               return this.map(function() {
+                       var offsetParent = this.offsetParent || document.body;
+                       while ( offsetParent && (!rroot.test(offsetParent.nodeName) && jQuery.css(offsetParent, "position") === "static") ) {
+                               offsetParent = offsetParent.offsetParent;
+                       }
+                       return offsetParent;
+               });
+       }
+});
+
+
+// Create scrollLeft and scrollTop methods
+jQuery.each( ["Left", "Top"], function( i, name ) {
+       var method = "scroll" + name;
+
+       jQuery.fn[ method ] = function(val) {
+               var elem = this[0], win;
+
+               if ( !elem ) {
+                       return null;
+               }
+
+               if ( val !== undefined ) {
+                       // Set the scroll offset
+                       return this.each(function() {
+                               win = getWindow( this );
+
+                               if ( win ) {
+                                       win.scrollTo(
+                                               !i ? val : jQuery(win).scrollLeft(),
+                                               i ? val : jQuery(win).scrollTop()
+                                       );
+
+                               } else {
+                                       this[ method ] = val;
+                               }
+                       });
+               } else {
+                       win = getWindow( elem );
+
+                       // Return the scroll offset
+                       return win ? ("pageXOffset" in win) ? win[ i ? "pageYOffset" : "pageXOffset" ] :
+                               jQuery.support.boxModel && win.document.documentElement[ method ] ||
+                                       win.document.body[ method ] :
+                               elem[ method ];
+               }
+       };
+});
+
+function getWindow( elem ) {
+       return jQuery.isWindow( elem ) ?
+               elem :
+               elem.nodeType === 9 ?
+                       elem.defaultView || elem.parentWindow :
+                       false;
+}
+
+
+
+
+// Create innerHeight, innerWidth, outerHeight and outerWidth methods
+jQuery.each([ "Height", "Width" ], function( i, name ) {
+
+       var type = name.toLowerCase();
+
+       // innerHeight and innerWidth
+       jQuery.fn["inner" + name] = function() {
+               return this[0] ?
+                       parseFloat( jQuery.css( this[0], type, "padding" ) ) :
+                       null;
+       };
+
+       // outerHeight and outerWidth
+       jQuery.fn["outer" + name] = function( margin ) {
+               return this[0] ?
+                       parseFloat( jQuery.css( this[0], type, margin ? "margin" : "border" ) ) :
+                       null;
+       };
+
+       jQuery.fn[ type ] = function( size ) {
+               // Get window width or height
+               var elem = this[0];
+               if ( !elem ) {
+                       return size == null ? null : this;
+               }
+
+               if ( jQuery.isFunction( size ) ) {
+                       return this.each(function( i ) {
+                               var self = jQuery( this );
+                               self[ type ]( size.call( this, i, self[ type ]() ) );
+                       });
+               }
+
+               if ( jQuery.isWindow( elem ) ) {
+                       // Everyone else use document.documentElement or document.body depending on Quirks vs Standards mode
+                       // 3rd condition allows Nokia support, as it supports the docElem prop but not CSS1Compat
+                       var docElemProp = elem.document.documentElement[ "client" + name ];
+                       return elem.document.compatMode === "CSS1Compat" && docElemProp ||
+                               elem.document.body[ "client" + name ] || docElemProp;
+
+               // Get document width or height
+               } else if ( elem.nodeType === 9 ) {
+                       // Either scroll[Width/Height] or offset[Width/Height], whichever is greater
+                       return Math.max(
+                               elem.documentElement["client" + name],
+                               elem.body["scroll" + name], elem.documentElement["scroll" + name],
+                               elem.body["offset" + name], elem.documentElement["offset" + name]
+                       );
+
+               // Get or set width or height on the element
+               } else if ( size === undefined ) {
+                       var orig = jQuery.css( elem, type ),
+                               ret = parseFloat( orig );
+
+                       return jQuery.isNaN( ret ) ? orig : ret;
+
+               // Set the width or height on the element (default to pixels if value is unitless)
+               } else {
+                       return this.css( type, typeof size === "string" ? size : size + "px" );
+               }
+       };
+
+});
+
+
+window.jQuery = window.$ = jQuery;
+})(window);
index 15034e2e6bbf42ebd964348085c0ec3204942322..49f447986d9c96add5093650bfad2ce77fa0078c 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="UTF-8" />
        <title>jQuery UI Tests</title>
        <link rel="stylesheet" href="../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../jquery-1.5.1.js"></script>
        <link rel="stylesheet" href="tests.css" type="text/css" />
        <script type="text/javascript" src="tests.js"></script>
 </head>
index 0527bff149bdcf00b8d1617f9114a4dd0e6a08f6..2d39cf123c5a1f508db40513223809e11590350b 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index 33e8947543683fca0dde9c2a058d63ffe3c3467c..fb7bbd80da285fd7b674dba2c1c2253c9a7d9cb4 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index 592322c6ed3d280d72ddb9b5d61d09e5c7e5658d..cc63917632b51527ce3f857d0542f1c5c2cab261 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index d6941c8363ac52fc205d5a277400e9ef2cd4f0c9..1fd93ad27616d46ef440385b4ea50773137db62f 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
        <style>
                div { margin: 0 0 1em; }
index f9fde2ec65186a95ac7321248024cd319dc04913..b8825445d408ac9b7e34c575de7872c6bbdfeb1d 100644 (file)
@@ -5,7 +5,7 @@
        <title>jQuery UI Datepicker Static Markup Test Page</title>
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
        <style type="text/css">
                .ui-datepicker { float:left; margin: 0 2em 2em 0;}
index a5de6e3316880c8dcb438579036dfa450a1978f9..5a15554f84799b2fae7f0f942e46ec77dc44761c 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index 4512def2c3132e938b02ff3950cec3b390f75779..ad0f573547d4c2ae57d9d40b2e83ed65d8e33e82 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index 12d6b4dae4f4f2922633797c2a6e05849a2f8b79..94cf71a3ca02edb29c47dd436c20b8ce7aca7d95 100644 (file)
@@ -5,7 +5,7 @@
        <title>jQuery UI Dialog Static Markup Test Page</title>
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body style="font-size: 62.5%;">
index 136d634d471dfeee5be028fcfc2835deda02840e..19204dbf58fb676fbfced0776b376d0ed0cf58b8 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index 7c5d0f042eb1dafd5fc9d553fead9e49367c8a83..22d68fbb62efda3e537d7a22ba3b568206c7cb81 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index c72ebf817d876cb03aea59ec530629f3c5d1ce1d..423e65e69efd6fba4ed8deaaa51162b5c43f4c67 100644 (file)
@@ -6,7 +6,7 @@
        <title>Themeroller CSS Framework Demo</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="static.js"></script>
        <style type="text/css">
                body {font-size: 62.5%; margin: 20px; font-family: Verdana, sans-serif; color: #444;}
index 5cd8af21d5362d733eb2a06a59340a89e67e1d42..cffd98342cd27a26b70797e630e8f238421b0176 100644 (file)
@@ -5,7 +5,7 @@
        <title>jQuery UI CSS Framework Icons Test Page</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../jquery-1.5.1.js"></script>
 
        <style type="text/css">
                body {font-size: 62.5%; margin: 20px; font-family: Verdana, sans-serif; color: #444;}
index 3145ad2196cb6495777acd26e7d68f62cdd2c0f8..a5f0a8e0c44526de47fa31d3206f4bce342d01bd 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="UTF-8" />
        <title>jQuery UI Static Tests</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../jquery-1.5.1.js"></script>
        <script type="text/javascript">
        $(function() {
 
index d7aa3ee1c31cdf5a293fab19b5051e9f72f21a97..e780a2398be18f4f955645bc1df5ebb962bfdddc 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
                
        <script src="http://jqueryui.com/themeroller/themeswitchertool/" type="text/javascript"></script>
index 7f1aee441e391f772e02c245c496dd23c28faab4..dd1e0ba7d036b9b65020155a5271b869cddb2dcb 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
        
 </head>
index 4be7ea579f838a42b54b4f089e30b5478b4da9e7..bba5530e79f91734b5956fb8f214e0c0d4da7935 100644 (file)
@@ -5,7 +5,7 @@
        <title>jQuery UI Dialog Static Markup Test Page</title>
        <link rel="stylesheet" href="../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="static.js"></script>
        <script type="text/javascript">
 
index 14035e32a1dd5c5a830c9dd83f97804458c177c7..daa82b53ef7f47db481a3e865f77e66a9e98d121 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index 30f1fe6781ae0292f33c5ed3d5bcee0f45de17db..57496020d39e2f3e0c3bf839241924e29cc79b78 100644 (file)
@@ -5,7 +5,7 @@
        <title>jQuery UI Progressbar Static Markup Test Page</title>
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-               <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+               <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
                <script type="text/javascript" src="../static.js"></script>
 </head>
 <body style="font-size: 62.5%;">
index 69ea6bf733f748592b8178d5ba09b1a7470ebf63..120b6de69dce924fee13f314e9b5a3c8aac2a078 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index 1d860a7f80467848d13b28e6c7693cb385e89940..fca18c6910c84f2f56271f8236baa76fbc66a0d3 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index e728c530acb7fba9343e40e311b13c6f8a6cbc8f..af37e3f4bf32a36c9277295b9f6f06b6a28ace4f 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index f9957b58f69ed718d04174645f60f87215d9b280..3df1d35fe1cbc44bb8a2fea68c1b6547148436bc 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index c1c82776a7700d892647cacd29b5111fbfc38e9c..7b0517b4c1a50c7456ab1e527b8c93eba9aefc33 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index 3910a14457ad7e83a6da1a816a13db655abd300e..b993d7b0c9cac8cddc459be405468f256bdf45d3 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index acd37bb5b77e5e57dba19778822cd8dd1acb283f..87ed70b50c6e216d4c5e2627153cb5a5925d0b05 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index 9796fb753204687d78ca680c91e272b2c23957b2..3dc5ac0b02880227ad4f39bb3a4200ed4b2bd8f7 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index 644ce2d629e9003f7a01882a43279784c6652aa9..0ad3d7fa836cdc288092f227ca96ad48d9b3e0c3 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index 80512e2129387ebdaaf2a0b9c6aeacdb340d93ad..b71b2e2b00961598f3844e5d1b053f84dd93878f 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index ec4538a2e35f3cb4c9b6ba565ea2c9239b2584cb..a06829a377902caf5908058eb0f02bbfd0b1c24a 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index 49df1ae97c713f44abee52c2f50a621ccd332b75..c2767082524037a76d9923203d6dc2a72cf3576d 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index ebadef89e3a422f4f61e63adcd2001e8d363df89..dffe097c8781aa5c39e183a435ba18c486625aa5 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index d43f381844ec9adcfe450480c50bce23dd802b2a..4f0a1e4ba9120ea992dac592ffbf7c328c4748b0 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index d43f381844ec9adcfe450480c50bce23dd802b2a..4f0a1e4ba9120ea992dac592ffbf7c328c4748b0 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../static.js"></script>
 </head>
 <body>
index c75b52044d56729600e76176adc22af06aace974..de9d294c1df5c0732631e8902300748edf31800a 100644 (file)
@@ -6,7 +6,7 @@
 
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.accordion.css">
 
-       <script src="../../../jquery-1.4.4.js"></script>
+       <script src="../../../jquery-1.5.1.js"></script>
        <script src="../../../ui/jquery.ui.core.js"></script>
        <script src="../../../ui/jquery.ui.widget.js"></script>
        <script src="../../../ui/jquery.ui.accordion.js"></script>
index 541fb4de01f9c5b93aff8b0440ebe7a2ea98ed11..f5e7e20d6dc829cb19e3db652286689bb7f97187 100644 (file)
@@ -6,7 +6,7 @@
 
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.accordion.css">
 
-       <script src="../../../jquery-1.4.4.js"></script>
+       <script src="../../../jquery-1.5.1.js"></script>
        <script>
        $.uiBackCompat = false;
        </script>
index c4c3d8745e277effbe8f845e98da6b5773971443..bc6388a75cc4ed1ad65e4863e6fd4537a3e3d355 100644 (file)
@@ -6,7 +6,7 @@
 
        <link type="text/css" href="../../../themes/base/jquery.ui.autocomplete.css" rel="stylesheet" />
 
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.position.js"></script>
index 6275786540561d0bc805bfaa38991ee8103f6c42..700ff475ff3665d02bca0320593b1c7792923a61 100644 (file)
@@ -6,7 +6,7 @@
 
        <link type="text/css" href="../../../themes/base/jquery.ui.button.css" rel="stylesheet" />
 
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.button.js"></script>
index fb9cf0a616dd22b2002462fc19afbe5e68174b0d..31702dd4e6c5fd9c35eb2b596713159329929d6b 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="UTF-8" />
        <title>jQuery UI Core Test Suite</title>
 
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
 
index 5a20042de6053dd54d8b98bfaef13d367d84552b..76082e7801d9f3ad3dca019e50879a74446995d1 100644 (file)
@@ -6,7 +6,7 @@
 
        <link type="text/css" href="../../../themes/base/jquery.ui.datepicker.css" rel="stylesheet" />
 
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.datepicker.js"></script>
index 7d8aafe6c9dfa20265e5d39273bd44f95b7b4338..7dc1940581f3c6a01544b69e4a8c40a762db5fad 100644 (file)
@@ -6,7 +6,7 @@
 
        <link type="text/css" href="../../../themes/base/jquery.ui.dialog.css" rel="stylesheet" />
 
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../external/jquery.bgiframe-2.1.2.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
index bb2b0f7c1c298f5aa80c6aa8a2bbfa33931458cf..7ddf53e48b1316131a353860961d261e53477a69 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="UTF-8" />
        <title>jQuery UI Draggable Test Suite</title>
 
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 0092647ce9d898dfa85f2e48e24caa4ea3c9707b..1655bda63588285637e840ba75ae55395ce09968 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="UTF-8" />
        <title>jQuery UI Droppable Test Suite</title>
 
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 6e818a82b7dcfe07b75232aadad2be5ac75a2a34..ed4b950c598ef576c855ebf0f2a8634fb3c0a391 100644 (file)
@@ -6,7 +6,7 @@
 
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" title="ui-theme" />
 
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.menu.js"></script>
index c9a2be82d3537a908de962d5c483c633166fbed5..40146d0d7d4334f2314d8c34b827f860026aaa5b 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="UTF-8" />
        <title>jQuery UI Position Test Suite</title>
 
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.position.js"></script>
 
        <link rel="stylesheet" href="../../../external/qunit.css" type="text/css"/>
index 7ec8d56d7beefcd7fdae5e19b1018d246a436f2f..02066b37e8480c9ef35252aae129d5a33b741c66 100644 (file)
@@ -6,7 +6,7 @@
 
        <link type="text/css" href="../../../themes/base/jquery.ui.progressbar.css" rel="stylesheet" />
 
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.progressbar.js"></script>
index 02d95e532f47da2899b0003e48ce84556310c602..926201ce370ad3d981e80d349bcbc017d0416f45 100644 (file)
@@ -6,7 +6,7 @@
 
        <link type="text/css" href="../../../themes/base/jquery.ui.resizable.css" rel="stylesheet" />
 
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index d3aafe6164a8eeedfbc3c7fe851717510ddc3973..7b739316dc077a7809f240142c50c2d7ce2e6cbd 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="UTF-8" />
        <title>jQuery UI Selectable Test Suite</title>
 
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index dffdcae6a54ea2dcef1a51c68561377fd07fe629..04234903e5c73f76f01fbc4b99f82044bc06a728 100644 (file)
@@ -6,7 +6,7 @@
 
        <link type="text/css" href="../../../themes/base/jquery.ui.slider.css" rel="stylesheet" />
 
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index f753bf1a49aa3a7dda368e84f1ae1222f0af0642..2a55cf36307c4d18416d99c258c3d99ccc105e2e 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="UTF-8" />
        <title>jQuery UI Sortable Test Suite</title>
 
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index c5a9631186c05f25c95fbc0659e545b64e888fd1..1c055afd7a0ca8075f1f305a22e7f903424ddc2d 100644 (file)
@@ -5,7 +5,7 @@
        \r
        <link type="text/css" href="../../../themes/base/jquery.ui.spinner.css" rel="stylesheet" />\r
        \r
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>\r
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>\r
        <script type="text/javascript" src="../../../external/jquery.mousewheel-3.0.4.js"></script>\r
        <script type="text/javascript" src="../../../external/jquery.global.js"></script>\r
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>\r
index 507b3182224f0b206dd21e93e4509987e6ddac67..74855ca9aa9b7f09731eaacb232634d5bdd6600e 100644 (file)
@@ -6,7 +6,7 @@
 
        <link type="text/css" href="../../../themes/base/jquery.ui.tabs.css" rel="stylesheet" />
 
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../external/jquery.cookie.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
index 3eed6d35f2bb4c9c12dc10504997ad56d1fd44df..ee4b51d46abfac99746392a351230a730e410889 100644 (file)
@@ -6,7 +6,7 @@
 
        <link type="text/css" href="../../../themes/base/jquery.ui.tooltip.css" rel="stylesheet" />
 
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.position.js"></script>
index c3b9bfe954446b2c6c096de7e802c49876e718e3..910345e4fab30c3980ea705f830f3bcbd3048333 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="utf-8">
        <title>jQuery UI Widget Test Suite</title>
 
-       <script src="../../../jquery-1.4.4.js"></script>
+       <script src="../../../jquery-1.5.1.js"></script>
        <script src="../../../ui/jquery.ui.core.js"></script>
        <script src="../../../ui/jquery.ui.widget.js"></script>
 
index ade2e610cf63e11ee26e86f0abbfd1f3d0c26527..220d019d056607fb994ffc063cf1195dad74bdf0 100644 (file)
@@ -5,7 +5,7 @@
        <title>Accordion Visual Test : Default</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.accordion.js"></script>
index 149d5161c16e02651dcc0331f5a90e012c5357b4..78ccc0c52b3553047fea84b488022e162d57a885 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../../static/static.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.accordion.js"></script>
index 18eea8af5312cefa834924e2fc340f4554a32394..e92ffe89c75658657c814ae1aa70705d5692c4a7 100644 (file)
@@ -5,7 +5,7 @@
        <title>Accordion Visual Test : Accordion method destroy</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.accordion.js"></script>
index 6b29a7ef9e45b4e5ff57d4844c41b03a80fafb1c..0496b71bf736cf0955bcd53430e3f89c816a9760 100644 (file)
@@ -5,7 +5,7 @@
        <title>Accordion Visual Test : Accordion method disable</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.accordion.js"></script>
index a8e91ea7cc521a6775e9046c288e2d45cc07d10f..108817d2b4fae21812f6a827ce1bf1fc8b75c5c0 100644 (file)
@@ -5,7 +5,7 @@
        <title>Accordion Visual Test : Accordion option animated 'bounceslide'</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.accordion.js"></script>
index baad73c91138a42c5302207e559d1b435cf40005..4926a9d21ea14502a55a63c7e6017c02fc548fc3 100644 (file)
@@ -5,7 +5,7 @@
        <title>Accordion Visual Test : Accordion option animated easeslide</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.accordion.js"></script>
index 4f80fd88eed3c8c133f009b977b5b018b0c36fd9..7c6742b8c4a89cc628f3afc558185606158eb62b 100644 (file)
@@ -5,7 +5,7 @@
        <title>Accordion Visual Test : Accordion option animated false</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.accordion.js"></script>
index a2a68c34035d0a0a50d18744dd18e01edbef3dd5..1ec3541d43516b1732ac38adab51576f0a831f9a 100644 (file)
@@ -5,7 +5,7 @@
        <title>Accordion Visual Test : Accordion option animated slide</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.accordion.js"></script>
index 92f0310fc22f78b328d24a7e7c001869e1b927b6..65bc019a30c9d3713ccad44c959eb4efa6a5b46f 100644 (file)
@@ -5,7 +5,7 @@
        <title>Accordion Visual Test : Accordion option animated true</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.accordion.js"></script>
index cd331d2bce71bb4487af3d799a8f265e3ed70d7b..1fbd99e08da6ebaadaab379e8dbe6efe12822d2d 100644 (file)
@@ -5,7 +5,7 @@
        <title>Accordion Visual Test : Accordion option autoHeight false</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.accordion.js"></script>
index 23bd26407c4f41f215e3f6fcf8b8cf6fa9ddad98..61ae752e1c43ecb49dc53f9d25e28d3039f04837 100644 (file)
@@ -5,7 +5,7 @@
        <title>Accordion Visual Test : Accordion option autoHeight true</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.accordion.js"></script>
index 7642d06214c190504c6b18117d87d4f4f8f3c0e2..3b9e29024be65e52c55fabbc750536b36522d57a 100644 (file)
@@ -5,7 +5,7 @@
        <title>Accordion Visual Test : Accordion option autoHeight true</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.accordion.js"></script>
index ec0a3e479e630c65c176824b0bb2004835d00eee..9a8756fc27a4be8b729bfd541f2cac758739c333 100644 (file)
@@ -5,7 +5,7 @@
        <title>Accordion Visual Test : Accordion option navigation true</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.accordion.js"></script>
index 98a0bfcd6aee06e73a2b0127cf886a934fa8d1b0..72712eb78d971d383be8a107efd6255264aef814 100644 (file)
@@ -5,7 +5,7 @@
        <title>Accordion Visual Test : Accordion ticket #4322</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.accordion.js"></script>
index f21124f8d550a16a2398897ae12c71fb17c9b729..805c4bca99ec8a965d7897c52c4b902ba67a7407 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="UTF-8" />
        <title>Accordion Visual Test : Accordion ticket #4331</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.accordion.js"></script>
index 303cc48394223b743ce9b24e12c5f1d5432048a6..3b1cfb3701f3b25159f1914b606efbd5b8cbaa1a 100644 (file)
@@ -5,7 +5,7 @@
        <title>Accordion Visual Test : Accordion ticket #4444</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.accordion.js"></script>
index 97fa88f2d2b210fccf3935e87b375b1f4dd846c0..007d5509dd316e15def6fe6281134430539003ca 100644 (file)
@@ -6,7 +6,7 @@
     <link rel="stylesheet" href="../../static/static.css" type="text/css" />
     <link rel="stylesheet" href="../../../themes/base/jquery.ui.base.css" type="text/css" />
     <link rel="stylesheet" href="../../../themes/base/jquery.ui.theme.css" type="text/css" title="ui-theme" />
-    <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+    <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
     <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
     <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
     <script type="text/javascript" src="../../../ui/jquery.ui.accordion.js"></script>
index 27c3848a7d5d162325aa5cb450f28068cfa34360..213a2fde41159c45959ef4b4b73175e751e167ec 100644 (file)
@@ -5,7 +5,7 @@
        <title>addClass Visual Test : Queue</title>
        <link rel="stylesheet" href="../visual.css">
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css">
-       <script src="../../../jquery-1.4.4.js"></script>
+       <script src="../../../jquery-1.5.1.js"></script>
        <script src="../../../ui/jquery.effects.core.js"></script>
        <style>
        .box {
index c50465a477b417c899af9fcff4cec2be9964b1da..265d4e35babe5253d65d38db0a29e59520cc493e 100644 (file)
@@ -5,7 +5,7 @@
        <title>Simple All</title>
        <link rel="stylesheet" href="all.css" type="text/css">
        <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../ui/jquery.ui.mouse.js"></script>
index 42120064e284cf11639eb6745948f8e794237af2..c7d8280ebf9c3504924e0c3018eb915e855c7d0d 100644 (file)
@@ -5,7 +5,7 @@
        <title>Animate Visual Test : Animate backgroundColor hex</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.effects.core.js"></script>
        <script type="text/javascript">
        function hexFromRGB (r, g, b) {
index 0092c192837a2c233a37e1cba990cd84d801bca2..583c1048186323bea3085b3d61b2985d75ac345e 100644 (file)
@@ -5,7 +5,7 @@
        <title>Animate Visual Test : Animate backgroundColor rgb</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.effects.core.js"></script>
        <script type="text/javascript">
        function randomColorRGB() {
index b904f6eed22ebc9ef93949afd0f21ae76c043d4f..698db2b9e8734896e0cc05521dfa7d291fff6fd2 100644 (file)
@@ -5,7 +5,7 @@
        <title>Animate Visual Test : Animate color hex</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.effects.core.js"></script>
        <script type="text/javascript">
        function hexFromRGB (r, g, b) {
index a762a322fb0762d5a076456d35f08a9cd6dc6a11..ebb868aa37b1c182097bf6c4a2df3bcfa5eafc2f 100644 (file)
@@ -5,7 +5,7 @@
        <title>Animate Visual Test : Animate color rgb</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.effects.core.js"></script>
        <script type="text/javascript">
        function randomColorRGB() {
index 199451e9c03e2d849e59e8341fcf695fce70dc8d..afdae391f3a2d0c1cd256052aa075c5c2bd9ac20 100644 (file)
@@ -5,7 +5,7 @@
        <title>Autocomplete Visual Test: Default</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.position.js"></script>
index 0e091c4d87ec4eefb3bbd5338a150692b7e2ba7e..ab4b58b047fc6afee531130298c0181759487158 100644 (file)
@@ -9,7 +9,7 @@
                #toolbar { margin-top: 2em; padding:0.2em; }
                #ops1, #ops2, #format, #mode { margin-right: 1em }
        </style>
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../external/jquery.metadata.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
index 0188655fa174fc06ebd1c570d1b78af74ab42e2f..c1832fcb2d4049e472b657bab8fe324329027ac5 100644 (file)
@@ -5,7 +5,7 @@
        <title>Button Visual Test : Button disabled true</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.button.js"></script>
index c3ceb271e36a48966702f9b75a971e206399c2c4..5596736ffcc35d5419731525e9df314078a13e81 100644 (file)
@@ -5,7 +5,7 @@
        <title>Button Visual Test : Button input type checkbox</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.button.js"></script>
index 0188655fa174fc06ebd1c570d1b78af74ab42e2f..c1832fcb2d4049e472b657bab8fe324329027ac5 100644 (file)
@@ -5,7 +5,7 @@
        <title>Button Visual Test : Button disabled true</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.button.js"></script>
index 1cd9c992bab55fe6948cf5fbc8a4ca32266a14d5..4d675bb6d0728647ed0091ddfd4be4c6c974ccd8 100644 (file)
@@ -9,7 +9,7 @@
                #toolbar { margin-top: 2em; padding:0.2em; }
                #ops1, #ops2, #format, #mode { margin-right: 1em }
        </style>
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../external/jquery.metadata.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
index 95ecbeabd990161d49cbd7cb73bae0b72aa6e96d..9031861e948be3abd26e541bdb589e240a5502d3 100644 (file)
@@ -5,7 +5,7 @@
        <title>Button Visual Test : Button ticket #5254</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.button.js"></script>
index 3d2f8172997fb6efa71e9af8d5748f932f0a70bd..494912b1f34bb7c8330bf8b6eb5b7a37b9b13f52 100644 (file)
@@ -5,7 +5,7 @@
        <title>Button Visual Test : Button ticket #5261</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.button.js"></script>
index 253b52f8c7a13fd68c3e98ca6e7cce998997f9dc..a519cc38eaaa49de1c1dcdd40e8d91a24126ae65 100644 (file)
@@ -5,7 +5,7 @@
        <title>Button Visual Test : Button ticket #5278</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.button.js"></script>
index 5f10357c83e575a208b19509b016ca30a6eefa3a..cf0f25c6d81fb1b1e64a01c53e6216be6d9a49fe 100644 (file)
@@ -5,7 +5,7 @@
        <title>Compound Visual Test : Accordion in Dialog</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 3acf783660e064b9e6b4b35fdb3daa4b3df016a7..76a960fc3ad510363ca9993e7aab437b07304bb6 100644 (file)
@@ -5,7 +5,7 @@
        <title>Compound Visual Test : Accordion in Tabs</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.accordion.js"></script>
index 78019c02831fcaa61f6861a3c3142b129194824d..26a07a2488e93807463b76be355ae6f6c253d885 100644 (file)
@@ -5,7 +5,7 @@
        <title>Compound Visual Test : Datepicker in Dialog</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index d54343be9cce9eff734c9b7588a84d0a2c27be56..8bb74d4af247a2e41eaa2440ab4e6ed8168a6f57 100644 (file)
@@ -5,7 +5,7 @@
        <title>Compound Visual Test : Draggable in Accordion</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index bbeb9f8c239589cbc99a7dfe52fb820b7fc3f0b7..2753988f13efd5bd00d97a66e9451bd1b7619420 100644 (file)
@@ -5,7 +5,7 @@
        <title>Compound Visual Test : Draggable in Accordion</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index bf20a6f39a7a6975dae5eabc4e5163bdd99c868e..73fc5ab6cfdd670d1405442c022e84123499f30d 100644 (file)
@@ -5,7 +5,7 @@
        <title>Compound Visual Test : Accordion in Tabs</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 0f96a6615fc130e40a3d2d1edc4080a4cccb5510..f8a8cb63676ad25e6a70d792b98eedbd2d8e8c0d 100644 (file)
@@ -5,7 +5,7 @@
        <title>Compound Visual Test : Tabs in Tabs</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.accordion.js"></script>
index 972aa784a8d858d3a1345baf3c161ce32a4b4747..013ba724bbd54bf98cf69232fd4d6c71603cd21b 100644 (file)
@@ -5,7 +5,7 @@
        <title>Compound Visual Test : Tabs in Tabs</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.position.js"></script>
index 5ebb7f5094a616f30af3f42866f84ac5de7d1651..13680f9bc89261af765e29cd71cb2c6b762826a1 100644 (file)
@@ -5,7 +5,7 @@
        <title>Compound Visual Test : All Widgets in Dialog</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index d4af3c61f52aa87710feb0666557eabec01c2d9d..274eba22a10eb09983576f415e93a4b959bc658d 100644 (file)
@@ -5,7 +5,7 @@
        <title>Datepicker Visual Test : Default</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.datepicker.js"></script>
index 30209bfd4b6e5166aba693af4937288507d4b2d8..64969ec6bafb759674388a369537bd3bc9dbf841 100644 (file)
@@ -5,7 +5,7 @@
        <title>Simple Datepicker</title>
        <link rel="stylesheet" href="../all.css" type="text/css">
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.datepicker.js"></script>
index 3a97017e472f2d5369f00f6aeeca9deae5872778..628234aa758743beb7306509e1ed01b570aa280a 100644 (file)
@@ -5,7 +5,7 @@
        <title>Datepicker Visual Test : Datepicker ticket #4071</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.datepicker.js"></script>
index a547a3f2a11e9b4ff61d36d3fb91f62e683f6c9d..2349c14d074422cef1c61a75f30cac14c6b3674e 100644 (file)
@@ -5,7 +5,7 @@
        <title>Datepicker Visual Test : Datepicker ticket #4240</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.datepicker.js"></script>
index 018dd5783690b4b3d2895bdd0e74c93a36edb050..82d81f1d72a6a30c3f033ae73d8e1fe062173ce5 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
        <link rel="stylesheet" href="http://jquery.com/demo/thickbox/thickbox-code/thickbox.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script src="http://jquery.com/demo/thickbox/thickbox-code/thickbox-compressed.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
index 6bda5d528f4fd36941910d8c65e390ddea5ad06c..c408e8e8bf5817378c04fe34ed05882335eafb64 100644 (file)
@@ -5,7 +5,7 @@
        <title>Datepicker Visual Test : Datepicker ticket #5676</title>
        <link  href="../visual.css" type="text/css" rel="stylesheet" />
        <link  href="../../../themes/base/jquery.ui.all.css" type="text/css" rel="stylesheet">
-       <script src="../../../jquery-1.4.4.js"></script>
+       <script src="../../../jquery-1.5.1.js"></script>
        <script src="../../../ui/jquery.ui.core.js"></script>
        <script src="../../../ui/jquery.ui.widget.js"></script>
        <script src="../../../ui/jquery.ui.datepicker.js"></script>
index 17290e6b0272108d415640f8eafc866d2d56342b..e78fddf7a9125996a612f0058bb8c830c4747429 100644 (file)
@@ -5,7 +5,7 @@
        <title>Datepicker Visual Test : Default</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.datepicker.js"></script>
index fe64bb803d71416af0090611bdcdaf44091f0255..620a8053799b3ea0ec9d6b614cce836c708b50e7 100644 (file)
@@ -15,7 +15,7 @@
        }
        </style>
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.datepicker.js"></script>
index b59360eb990dab5f3e5abea10e4eafafd65ea785..92f1bf51097a38f3c9df1c463e76b32eae041812 100644 (file)
@@ -5,7 +5,7 @@
        <title>Dialog Visual Test : Default</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../external/jquery.bgiframe-2.1.2.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
index 74d5aa537cdd4e4136a1d2ad202d1417da418d0a..7b0067a88ae419c57db303df86255852c0513264 100644 (file)
@@ -5,7 +5,7 @@
        <title>Dialog Visual Test : Modal Dialog in Large DOM</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../external/jquery.bgiframe-2.1.2.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
index 9d7f6872082a923728641cf8b05251a7e7ab97cd..ddd730a6a402b327a4205098436b479844ab5fc8 100644 (file)
@@ -5,7 +5,7 @@
        <title>Dialog Visual Test : Dialog on page with scrollbars</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../external/jquery.bgiframe-2.1.2.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
index 3a9bb56f4c016bdba6e77cc8b056758f7ae4ad01..5ff5f45d04be044e52925108fe6bdbf66c87a17e 100644 (file)
@@ -5,7 +5,7 @@
        <title>Dialog Visual Test : Dialog option buttons OK Cancel</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../external/jquery.bgiframe-2.1.2.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
index 43a1f351324825df0b3511c697b21fb97c5bbf60..14c525f2938d7979eb76dd49bb45e7f6358ac1f9 100644 (file)
@@ -5,7 +5,7 @@
        <title>Dialog Visual Test : Dialog option closeOnEscape true</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../external/jquery.bgiframe-2.1.2.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
index 4c83ef735cc472ded908a16b62d9e5322d7acda9..06b1bc561ece7a3f4f2bcd612a14f0504f98c4d4 100644 (file)
@@ -5,7 +5,7 @@
        <title>Dialog Visual Test : Dialog option closeOnEscape true</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../external/jquery.bgiframe-2.1.2.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
index 7bd6a3b6b5ffaca4a51cccb2bfe64479eb793dc6..80601d0d90c31c573810f8f94519cfdcb86f2119 100644 (file)
@@ -5,7 +5,7 @@
        <title>Dialog Visual Test : Dialog option modal false</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../external/jquery.bgiframe-2.1.2.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
index 7d58a75c9accd44ca477a1bf37b4cc7160256a15..d3b487517ce8c904d79c3e5c42a62634054b457c 100644 (file)
@@ -5,7 +5,7 @@
        <title>Dialog Visual Test : Dialog option modal true</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../external/jquery.bgiframe-2.1.2.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
index 3dad98f82ea9da8d332a6e7daecb8be7e1043216..34ca3ad48efc593410944cc4cef0488c79394622 100644 (file)
@@ -5,7 +5,7 @@
        <title>Dialog Visual Test : Dialog option position right top</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../external/jquery.bgiframe-2.1.2.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
index e4cf8d10291f99827a425c9b8fea69c565dd77f8..14925e9255191154ca8f2d6a5bdcce4814f51fee 100644 (file)
@@ -5,7 +5,7 @@
        <title>Dialog Visual Test : Dialog ticket #4350</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../external/jquery.bgiframe-2.1.2.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
index e184c443c284b7c6cd8023c160b796ed171d9d1e..fb4814e1613695daa4cebc2778e81502a0739431 100644 (file)
@@ -5,7 +5,7 @@
        <title>Dialog Visual Test : Dialog ticket #4826</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../external/jquery.bgiframe-2.1.2.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
index d5ad10783b59576540546abf1659ba1a55bdedde..09982d310c910824661d9aeaa912eccd56832e02 100644 (file)
@@ -5,7 +5,7 @@
        <title>Draggable Visual Test : Default</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 2ac5a6909062dbf49057376ce70c2fc783be3fa4..84a4ba2d1d19779acc62bc2fdf75a30b143c9352 100644 (file)
@@ -5,7 +5,7 @@
        <title>Draggable Scroll Tests</title>
        <link rel="stylesheet" href="../all.css" type="text/css">
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 0a6b7871f426191a301815f3f7f4626715517c58..3fe3802fab62ce1135a29f88aa44e1e4b9109a8b 100644 (file)
@@ -5,7 +5,7 @@
        <title>Draggable Visual Test : Draggable option containment array</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index afe532e42e11f2e999ccb9d9570c916d796172ee..00736327f8c4c28c2fbcd84962fa7f45413dc788 100644 (file)
@@ -5,7 +5,7 @@
        <title>Draggable Visual Test : Draggable option cursorAt object</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index ee4657e667326f8fe4640f2f37fab6e6cb8a0852..53decb40c012da60f89f7c10ff744a326037911e 100644 (file)
@@ -5,7 +5,7 @@
        <title>Draggable Visual Test : Draggable option handle selector</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 36daa46fd51a3e9a0701312ac89535243dd966b0..9528a5d08a00fa0abb71b03aa50aea1ddb6565e9 100644 (file)
@@ -5,7 +5,7 @@
        <title>Draggable Visual Test : Draggable option iframeFix false</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 2d0278902eff62be0ca42ee5ce51d5ebe640046f..c3655970cd00390591072386c0b6cc52199b7c59 100644 (file)
@@ -5,7 +5,7 @@
        <title>Draggable Visual Test : Draggable option iframeFix selector</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index f7ae43308df966fd385d7d0d31115b1b593c9ca8..de7b31521057be50206202b45c591c54e81bbbc5 100644 (file)
@@ -5,7 +5,7 @@
        <title>Draggable Visual Test : Draggable option iframeFix true</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 31eac495e10a3a04927b00d11884011d1ff651e4..3ec6738bc2206767bb3452ade0ec1241dbc794b7 100644 (file)
@@ -5,7 +5,7 @@
        <title>Droppable Visual Test : Default</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 54681d81e80fe14811308171201dcd9f823ad65c..3aa83353c99c3eee8715ce7cac3695ba6f2bb7dc 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="droppable.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index e3db4a4fa3986c2da421863350621d8e191a08f8..ff4a7951a6ea7ec4919e30850bcc8614e8cd85dd 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="droppable.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 9012d0e9891b55521ee2001c2c1abb5153fb3ef7..65cf18e189b5bdb156ee0ae9728ce491e7420914 100644 (file)
@@ -6,7 +6,7 @@
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="droppable.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 6dca11cd89462f15937147e187dee07b3e7612d5..84945bf55a25ad6cd7dfc96c3c982d603c70bac8 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="UTF-8" />
        <title>Droppable Visual Test - Droppable ticket 4087</title>
        <link type="text/css" href="../../../themes/base/jquery.ui.all.css" rel="stylesheet" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index cbc01ea4c6800cdbcea432944e9a0412bc82c49b..148d55eb2a2965736afe2c90901237cac07c6911 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="UTF-8" />
        <title>Droppable Visual Test - Droppable ticket 4088</title>
        <link type="text/css" href="../../../themes/base/jquery.ui.all.css" rel="stylesheet" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 6fd07fb39486c28cbf1b50bd97bb2eec1f07eb53..bea61124d88ceec39fedefd8e7c13598fc2164f1 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="UTF-8" />
        <title>jQuery UI Effects Test Suite</title>
        <link rel="stylesheet" href="effects.all.css" type="text/css" />
-       <script type="text/javascript" src="../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../ui/jquery.effects.core.js"></script>
        <script type="text/javascript" src="../../ui/jquery.effects.blind.js"></script>
        <script type="text/javascript" src="../../ui/jquery.effects.bounce.js"></script>
index c91b4ea1bc8d364ff5f9607cde50e7bd17eadab5..63d9877a0d1af8f830828eb83f0eec9ab583bb48 100644 (file)
@@ -4,7 +4,7 @@
        <title>Menu Visual Test: Default</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.position.js"></script>
index 3bf147598a1034a268700cfd94d949f24768b4e6..e752aa80dcfebcc4d641d82896dbfd9f0615a74f 100644 (file)
@@ -4,7 +4,7 @@
        <title>Menu Visual Test: Default</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.position.js"></script>
index b5fdf938ba20b4aeb01bb99475b5af6812bb59a9..814e26d091f3acbc7ab4d42bf9db549207d5981f 100644 (file)
@@ -4,7 +4,7 @@
        <title>Menu Visual Test: Default</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.position.js"></script>
index 101a8edfb6b7aac13874689aacef2c52dc3151bf..1519c73fcac4ad490f7dbbb60f9b087f587e45d2 100644 (file)
@@ -4,7 +4,7 @@
        <title>Menu Visual Test: Default</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.position.js"></script>
index 2b2ee28b222ba5b880499ba46d01524c6cce84bd..e1c069e185661327bba0d5fcbfcc6b281a25b8ac 100644 (file)
@@ -4,7 +4,7 @@
        <title>Menu Visual Test: Default</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.menu.js"></script>
index 11fb48d6ea85a5baf93039c8d75d09f6868da93b..da0ff51707e4b3d8346c608b5012a7f9f3023852 100644 (file)
@@ -5,7 +5,7 @@
        <title>Position Visual Test: Default</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.position.js"></script>
index 7a262584662d0da4b0d07f5a325fec664fa2eef6..0c7e32f3cfa1f523b41509b4c89c485ed976a08d 100644 (file)
@@ -5,7 +5,7 @@
        <title>Position Visual Test: Default</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" title="ui-theme" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.position.js"></script>
index b98a018445baddbdcc52c20fff167638233950ac..b8c2eacf0dabfdee5f78fc283641ce3ecc376397 100644 (file)
@@ -5,7 +5,7 @@
        <title>Progressbar Visual Test: Default</title>
        <link rel="stylesheet" href="../all.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.progressbar.js"></script>
index c903abbc1c6417e8458b096732bd7177ac8eaf5a..e9abf8fe59b080025b8db6a24918f351a801e745 100644 (file)
@@ -5,7 +5,7 @@
        <title>Resizable Visual Test : Default</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 9defdd6fe027bbaafe80a0f33a306b477432ec6f..57f6b06186465553f76d8375e379d17a9405cf74 100644 (file)
@@ -5,7 +5,7 @@
        <title>Resizable Visual Test : Resizable option alsoResize child</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index bfe36f99d70ee9db02c18301368056257f4a894c..1c14f0b3e59c021dde776ed26e27ed9c7469071e 100644 (file)
@@ -5,7 +5,7 @@
        <title>Resizable Visual Test : Resizable option aspectRatio 0.5</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 9d7ee1b376fc4aba7b295dbfdf83113fb69f55f0..c680bc3ae9595095ce37b7679a06d19319bc6b8f 100644 (file)
@@ -5,7 +5,7 @@
        <title>Resizable Visual Test : Resizable option aspectRatio 1.0</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 328f2a72f0e2097186b84faa440c1b7064564cea..ffdbc957b79db4b819c61d2b8776233dbb78c84d 100644 (file)
@@ -5,7 +5,7 @@
        <title>Resizable Visual Test : Resizable option aspectRatio 1.5</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index f6f67f44f5ebc5dc7076f1fefdd0ec5df9c0fea3..70228de8134babaa6ed88cb53a334ae1cb6604af 100644 (file)
@@ -5,7 +5,7 @@
        <title>Resizable Visual Test : Resizable option aspectRatio 1.0 maxHeight 150</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 6ce622ef9aed3c39e61b67a428960a40c31527ff..43773fde4970c0551b04788d62ead68f0dcec3a4 100644 (file)
@@ -5,7 +5,7 @@
        <title>Resizable Visual Test : Resizable option aspectRatio 1.0 maxWidth 150</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 969e6db96b3e0b118d417b65b334bf8f2cb6719f..514151349c5e0fb242210598fb1cbad20770a78e 100644 (file)
@@ -5,7 +5,7 @@
        <title>Resizable Visual Test : Resizable option aspectRatio 1.0 minHeight 50</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 2095ff70f282a814faf8353ce347a7331242c18a..33f1457bf8f8a0700e91e5b706bc6186183af40a 100644 (file)
@@ -5,7 +5,7 @@
        <title>Resizable Visual Test : Resizable option aspectRatio 1.0 maxWidth 50</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 89ad5a11a655919ae6e3d981528f13f978ace1cd..5feafd2571e1807141f8a217ceb654174b95e0e5 100644 (file)
@@ -5,7 +5,7 @@
        <title>Resizable Visual Test : Default</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index b536a59a79d9bef62d8e7d3ec939d6cc5e8c9738..05448f6036a12854af9a547789805512dfc8395d 100644 (file)
@@ -5,7 +5,7 @@
        <title>Resizable Visual Test : Default</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 0958983cd649679a5e1f814d33543cb2e0e771ae..49ef182eabcf5d27ef8156daa8c333e5713fc801 100644 (file)
@@ -5,7 +5,7 @@
        <title>Resizable Visual Test : Default</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 10a4495673838e75de1010964616a8ea49520fd9..d0844436a45156bf4e4f9c7ae513fc49d6d06207 100644 (file)
@@ -5,7 +5,7 @@
        <title>Resizable Visual Test : Resizable ticket #3053</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 18b995892f0a26dfa74f7f5e5f26c0f109afaf08..2343873076f76c3955a500fed876a4640b558861 100644 (file)
@@ -5,7 +5,7 @@
        <title>Resizable Visual Test : Resizable ticket #4199</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index c759fc02d0a27510fb865ed4886806e93ebfcbb1..d08342df689d0ca298493d9b502d00668e4a8a29 100644 (file)
@@ -5,7 +5,7 @@
        <title>Resizable Visual Test : Resizable ticket #4217</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 01e9976b7fcead8e673ff3cc24dd3ea7a6ce8907..6a7067c93989dde9d6843e6306963930cd59c88f 100644 (file)
@@ -5,7 +5,7 @@
        <title>Resizable Visual Test : Resizable ticket #4940</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 50f6b0497a3911ef0140bb6741171c2d47ea3591..b8c2278440a0948cb363aca860c7aed09276a68c 100644 (file)
@@ -5,7 +5,7 @@
                <title>Resizable Visual Test : Resizable ticket #5335</title>
                <link rel="stylesheet" href="../visual.css" type="text/css" />
                <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-               <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+               <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
                <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
                <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
                <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 80abda9b46bda9de738824ee7912cacc245e25e3..76d8174c8c49c332e54a98a5b49cda0fb7862466 100644 (file)
@@ -5,7 +5,7 @@
        <title>Selectable Visual Test : Default</title>
        <link rel="stylesheet" href="../all.css" type="text/css">
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 5ec1f2f3f37d7efec35d1724d08021227e00d0e7..0bd77243b0a9a8927941b2047ab72c3242d4f8fe 100644 (file)
@@ -5,7 +5,7 @@
        <title>Selectable Visual Test : Selectable ticket #4341</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 3600727b73d94e82f79106b2e5b7bb64e9a63269..9c666eb4af91fde56525d7127afd1ac7c80c9990 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Default</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 57028ea4872ef8c0dd9585fbfbf3ed407c0f5678..52e13f5b9f9ccc36927005dede80fffd5fa5dcab 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider horizontal</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 09a2c7d206b3591eb24198d4f820c3656837769b..c10451cc5fb93ccfc4cfc32312d9b626c6a073e5 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider horizontal range</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index b36cf4f59448953bf8f97b2594c3ec333053bbf7..0cb45fd06d83e6f67b0c45a526b6482de6346211 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider horizontal range max</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index c257edf6f001824b7b73cd6e98f73e2ca90edda0..101121b913b07d1033b1a10f957f4d26eb224e71 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider horizontal range min</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 22a563f31a4c5f3e9cbfd8ae5e7cc0d37938b3d7..0a050ff98f858e58fd69ee6783e93c35f877f810 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider in container with scrollbars</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 9cb1926cc484deac9c992cbaa2197c1d05d68ce2..931913aaf712185f9d8572224f44dac6e3d9c42a 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider method destroy</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 6fdd16365cb72620c343cb0c6588695671177ffc..d7ed75a1a849eb5490a6c8ce791e4de902494634 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider method disable</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 297ab83cdc216e667210dcd97b54527ba7afe60f..fce6e5668e49cab2f4f018769225485266299c0c 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider option animate false</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 4f5b484e7d679d264647dd23cb4d4b7dab094e7a..8d12abcff4f97fbe918cb84fd525ed0787368515 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider option animate true</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 4e79e0ec662e7628a4deba8bc8bd47eb84b4ba2f..82de692722077bb17d0cae4bef854ca57d0b41fe 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider option max 3</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index e2fd7a6f28bc9a2a7db29aecd40fb024a344c87a..36126ffae2bb770449cc0916a7d85fa56600bae5 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider option max 30</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 1a48f306aedadb8911e7322af48df907e005257d..d51cd86e7cffc026b00e8273fe3dc61b8a926239 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider option max 300</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index f7620d81b051912415a3b061eca7ada6619c5e74..9a18ed4d0846437ca9be37ba291536677398690b 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider option min -3</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index f17f17dfb12981d77afa5689e73a6cf4e689a5dc..88b655288d85f475f89949216ddbf54d858d7aef 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider option min -30</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index cf15d0da64e422a8dd20d4e00d68bfede5940076..1a55cabc1f1b4cbb8d1e8e1aa79a705f2c9a3fb4 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider option min -300</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 9edbe066af34c6794d58140ace5dc8230ac86243..c7efb2f6229200dc9c49ab567b2ae8441f8fb175 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider option orientation 'horizontal'</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index e5d2588ef5baa628cc17e68923b9dcc0adfe94c4..4cecf707d58b69e570222275fa6adbb67e9e3bf8 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider option orientation 'vertical'</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index b053347f6f788ca4f00bcf7690ada37790e6f564..976888bc8a22e6a4004c460662746ffe4c1d2845 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider option range false</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index f768f7ccdc074065b032b50026350ca459914eb2..4ae3cb747cf2b281d3a179a2e15d270fdb8b1843 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider option range 'max'</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 54861db124be7dea2f69d6d73a9a5d9ceeface35..af9366009094b92af6b3a1c6fea35845bae09c50 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider option range 'min'</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 457442220d7a66b1259858b087899099a5dc9843..b4b4f3ed7ef3049500b38fe865a85079697d8271 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider option range true</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 2d16a797540c39deffd15e673c1be3fe5a408ea1..c69a5470731871c3b6a9b7af7a288348aa036d1e 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider option step 25</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index e0ef74d4f88e1c127994afee0623532fba6bb7ee..560d1026a882d0ee6f93789cae9b98331c4a2c83 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider option step 5</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index d4e5bc1f271f7d15d889157adc7e7aa8ea72b1e7..92820cd2f804f758e274858db663b9e46295e903 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider option value 3</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 3be2802bfb0993683d28a42ff99c7deb883060bc..3a7223742db50d01414bae54bdf426b3dcee31ae 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider option value 30</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index b317555acf66d2ec514bbf196b6697f4a660e5a3..eab691b8320d6686645538982f75eaafc44394e4 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider option values 25 50 75</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index a6c04839209b44d465dece1dbdf86b3bb39b3d57..2d57b54ee9ed6983c72800fed7e4efaf901df617 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider option values 25 75</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 7fd7de95816cdd3be872254958e81bdd66e8940c..3f34725816e64fb42e345b4731cc07580656d810 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider option values 50</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index cf102f9ef48ab1dc4bdade30c7abe28149e16a1c..ccc6b1e0468f7d69827f59e5bcd891d8b69e2706 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider ticket #3736</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 55ae963b7f9ffc5a1ac2f23573ec2cbdec800a79..eade7e3e13ba3073d7a3dbc20d023d4fd9afae58 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider ticket #3762</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index d179aa7e9bbb57464850fb15b51a50fe1e6b8a69..8a35c162a4863568daa2b898d5205984eb71df6d 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider ticket #4385</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 5439148f0c10066b6f70694367bfcd0f67014f8b..a717f611f9c2d9b050bfe1bfb878f0ca2bb97056 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider ticket #4467</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index a3a0f477657ff06d70ce95c19ed15af64dc49063..597f67e14c17d2ffb273bab3cff9a2cefa478034 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider vertical</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 597cf50e0b50cf4a0fd7c05276fdff0e6d64e702..0ca3303b375971f75ed8927bfc66e064c45936f1 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider vertical range</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index c7ed8463d2dbc650ac56e991db118d3a921dd962..212241625beaf68ee7bad0efe58688f6d0868985 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider vertical range max</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 2c257928dbf63fe1201b66441fa5fae65691d64a..f94e6cc034befdaee0989b161b1f6cc5b891f2a5 100644 (file)
@@ -5,7 +5,7 @@
        <title>Slider Visual Test : Slider vertical range min</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 8e3de319d5afa759fea3949facb10dc010a9f7a7..db941bdc30e695f97338ad0a50504c376a3c953a 100644 (file)
@@ -5,7 +5,7 @@
        <title>Sortable Visual Test : Default</title>
        <link rel="stylesheet" href="../all.css" type="text/css">
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 2683cd166f16e3cc2b501ceb6c61f6f511fe81e6..8691c039a29168274ff1e3d93564e343551dc2a7 100644 (file)
@@ -4,7 +4,7 @@
        <meta charset="UTF-8" />
        <title>Sortable Massive Scale Test</title>
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index e86cc9a00d6dd30fb04917621bcbf1ea6768f6e8..1696fd854296f805c69c9102c9691589de0acae0 100644 (file)
@@ -5,7 +5,7 @@
        <title>Sortable Visual Test : Sortable option revert false</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index b2c79b3b66741934129353e63894455fc6c85998..6bd23db680283b5ccfe2f17fad0efd12a0bebd0e 100644 (file)
@@ -5,7 +5,7 @@
        <title>Sortable Visual Test : Sortable option revert true</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" />
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index ca4a93db31f6d4ad26dc2295b3c24c88738ba6cb..8b80808b1ed63bf05501dfc953c5f0e2ab0c263c 100644 (file)
@@ -5,7 +5,7 @@
        <title>Visual testcase for #4231</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index eccdbe66e4cc7a6c7259b1be268f7f4ddab27e76..2b83ae42e96e800d78c7be20f4669cd9eaa1d389 100644 (file)
@@ -5,7 +5,7 @@
        <title>Sortable Visual Test : Sortable ticket #4551</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index 3f43a69eff4f55d5630b108c97b1c310a2e984b6..45709e2a67c935d6fce2b0396e4419bd6856e2b6 100644 (file)
@@ -5,7 +5,7 @@
        <title>Sortable Visual Test : Sortable ticket #5355</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.mouse.js"></script>
index c285b1f54f23a1711c3de192f6672d67a81963fb..cd4938f71e36c0f2730804abc91cb897a42ff306 100644 (file)
@@ -4,7 +4,7 @@
        <title>Spinner Visual Test Page</title>\r
        <link rel="stylesheet" href="../visual.css" type="text/css" />\r
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css" title="ui-theme" />\r
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>\r
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>\r
        <script type="text/javascript" src="../../../external/jquery.mousewheel-3.0.4.js"></script>\r
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>\r
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>\r
index db4e41b3385e171563ea42d99d5cf3baf78aa8dd..ade8f82edd960ee31ac23715f432a5dff3b6b422 100644 (file)
@@ -5,7 +5,7 @@
        <title>Tabs Visual Test : Default</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.tabs.js"></script>
index 28599bff7bd1aa208509f71d147fca7861efd7d7..90c9c3edda221c4e2cf764364db38ac5e0ea9d44 100644 (file)
@@ -4,7 +4,7 @@
                <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
                <title>jQuery UI Example Page</title>
                <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css" type="text/css">
-               <script type="text/javascript" src="../../jquery-1.4.4.js"></script>
+               <script type="text/javascript" src="../../jquery-1.5.1.js"></script>
                <script type="text/javascript" src="../../ui/jquery.ui.core.js"></script>
                <script type="text/javascript" src="../../ui/jquery.ui.widget.js"></script>
                <script type="text/javascript" src="../../ui/jquery.ui.mouse.js"></script>
index 932663b6f33d4a82c7372c5a72f47b9331f5457d..f7856d0765f584d1391f549bfd01a60b87a4fd9b 100644 (file)
@@ -4,7 +4,7 @@
        <title>Tooltip Visual Test: Default</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.position.js"></script>
index fb2690a54d88d5a1368467854e1e6b476e96c823..538b43804fbf96eebc28ddaca9723148ae4d9d7d 100644 (file)
@@ -4,7 +4,7 @@
        <title>Tooltip Visual Test: Default</title>
        <link rel="stylesheet" href="../visual.css" type="text/css" />
        <link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
-       <script type="text/javascript" src="../../../jquery-1.4.4.js"></script>
+       <script type="text/javascript" src="../../../jquery-1.5.1.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
        <script type="text/javascript" src="../../../ui/jquery.ui.position.js"></script>