diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f8b9f8f --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ + +/build/1.js \ No newline at end of file diff --git a/Changelog b/Changelog index 1ed9120..7966af9 100755 --- a/Changelog +++ b/Changelog @@ -1,53 +1,53 @@ -PanoJS3 1.0.0 (2011-01-14) by Dmitry Fedorov: - * controls UI works for iPhone, iPad and Android - * support for more events: scroll wheel for zoom, touch events (zoom, scroll) - * support multiple instances - * allow view scale beyond 100% - * good full window support - * pre-cache tiles in the first row outside of visible area - * one line instantiator - * google maps like controls - zoomin on double click - * center on one click - * fixed several problems showing tiles - * small info text about the state: scale, etc... - * thumbnail navigation - * IE is again supported - partially, maybe somebody can help? - * Use ExtJS for events - * refactoring JavaScript classes - * provide tile providers: imgcnv, bisque, zoomify and embedded python script - -PanoJS 1.0.2 (2009-01-01) by Dan Allen: - * renamed project to PanoJS - * change license to Apache License 2.0 - * move project to Google Code - * respect max zoom level when scaling to window - * don't alert if max zoom size is exceeded when message is null - -GSIV 1.0.1 (2006-03-16) by Dan Allen: - * added localization for two warning messages - * fixed the TileUrlProvider checking in the constructor - * added GSIV.isInstance to check for an instance of a class - * fixed python script to allow for missing background color parameter - -GSIV 1.0.0 (2006-02-26) by Dan Allen: - * completely new object-oriented design - * use json options format - * optimized performance (both in drag, rendering and zoom) - * fixed rounding error in tile placement that lead to artifact lines - * added upper zoom limit - * added initial pan option - * added observers that can send viewer events to listeners - * double-click to recenter - * smooth motion when repositioning - * method to position absolutely (recenter on absolute point) - * method to fit to window (resize) - * additional options for file names and extensions - * preloading image tiles (loading animation) - * prevent from scrolling outside of original image boundary (uses blank tile) - * throttle mouse move events to increase performance - * cross-browser mouse cursor implementation that represent dragging - * account for scroll offset of page when calculating coordinates - * keyboard events for movement (initial attempt) - * new tilemaker.py python script, using a cleaner design and additional options - +PanoJS3 1.0.0 (2011-01-14) by Dmitry Fedorov: + * controls UI works for iPhone, iPad and Android + * support for more events: scroll wheel for zoom, touch events (zoom, scroll) + * support multiple instances + * allow view scale beyond 100% + * good full window support + * pre-cache tiles in the first row outside of visible area + * one line instantiator + * google maps like controls - zoomin on double click + * center on one click + * fixed several problems showing tiles + * small info text about the state: scale, etc... + * thumbnail navigation + * IE is again supported - partially, maybe somebody can help? + * Use ExtJS for events + * refactoring JavaScript classes + * provide tile providers: imgcnv, bisque, zoomify and embedded python script + +PanoJS 1.0.2 (2009-01-01) by Dan Allen: + * renamed project to PanoJS + * change license to Apache License 2.0 + * move project to Google Code + * respect max zoom level when scaling to window + * don't alert if max zoom size is exceeded when message is null + +GSIV 1.0.1 (2006-03-16) by Dan Allen: + * added localization for two warning messages + * fixed the TileUrlProvider checking in the constructor + * added GSIV.isInstance to check for an instance of a class + * fixed python script to allow for missing background color parameter + +GSIV 1.0.0 (2006-02-26) by Dan Allen: + * completely new object-oriented design + * use json options format + * optimized performance (both in drag, rendering and zoom) + * fixed rounding error in tile placement that lead to artifact lines + * added upper zoom limit + * added initial pan option + * added observers that can send viewer events to listeners + * double-click to recenter + * smooth motion when repositioning + * method to position absolutely (recenter on absolute point) + * method to fit to window (resize) + * additional options for file names and extensions + * preloading image tiles (loading animation) + * prevent from scrolling outside of original image boundary (uses blank tile) + * throttle mouse move events to increase performance + * cross-browser mouse cursor implementation that represent dragging + * account for scroll offset of page when calculating coordinates + * keyboard events for movement (initial attempt) + * new tilemaker.py python script, using a cleaner design and additional options + GSV 1.0 (2005) by Michal Migurski \ No newline at end of file diff --git a/README b/README index 9a976b4..356b2ed 100755 --- a/README +++ b/README @@ -1 +1 @@ -See docs/reference.html +See docs/reference.html diff --git a/big_demo/css/darkbox.css b/big_demo/css/darkbox.css new file mode 100644 index 0000000..47b4ac4 --- /dev/null +++ b/big_demo/css/darkbox.css @@ -0,0 +1,27 @@ +.opacity50{ +filter:progid:DXImageTransform.Microsoft.Alpha(opacity=50); +-moz-opacity:.5; +-khtml-opacity:.5; +opacity:.5; +} + +.darkbox{ +position:absolute; +top:0; +left:0; +width:100%; + +background-color:#000; +z-index:253; +} +.darkbox_i +{ +position:absolute; +top:0; +left:0; +width:100%; +z-index:254; +background-image: url('../i/ajax-loader.gif'); +background-position: center center; +background-repeat: no-repeat; +} diff --git a/big_demo/css/jquery.mobile.min.css b/big_demo/css/jquery.mobile.min.css new file mode 100644 index 0000000..0d2ca0d --- /dev/null +++ b/big_demo/css/jquery.mobile.min.css @@ -0,0 +1,2 @@ +/*! jQuery Mobile v1.1.0 db342b1f315c282692791aa870455901fdb46a55 jquerymobile.com | jquery.org/license */ +.ui-bar-a{border:1px solid #333;background:#111;color:#fff;font-weight:bold;text-shadow:0 -1px 1px #000;background-image:-webkit-gradient(linear,left top,left bottom,from(#3c3c3c),to(#111));background-image:-webkit-linear-gradient(#3c3c3c,#111);background-image:-moz-linear-gradient(#3c3c3c,#111);background-image:-ms-linear-gradient(#3c3c3c,#111);background-image:-o-linear-gradient(#3c3c3c,#111);background-image:linear-gradient(#3c3c3c,#111)}.ui-bar-a,.ui-bar-a input,.ui-bar-a select,.ui-bar-a textarea,.ui-bar-a button{font-family:Helvetica,Arial,sans-serif}.ui-bar-a .ui-link-inherit{color:#fff}.ui-bar-a .ui-link{color:#7cc4e7;font-weight:bold}.ui-bar-a .ui-link:hover{color:#2489ce}.ui-bar-a .ui-link:active{color:#2489ce}.ui-bar-a .ui-link:visited{color:#2489ce}.ui-body-a,.ui-overlay-a{border:1px solid #444;background:#222;color:#fff;text-shadow:0 1px 1px #111;font-weight:normal;background-image:-webkit-gradient(linear,left top,left bottom,from(#444),to(#222));background-image:-webkit-linear-gradient(#444,#222);background-image:-moz-linear-gradient(#444,#222);background-image:-ms-linear-gradient(#444,#222);background-image:-o-linear-gradient(#444,#222);background-image:linear-gradient(#444,#222)}.ui-overlay-a{background-image:none;border-width:0}.ui-body-a,.ui-body-a input,.ui-body-a select,.ui-body-a textarea,.ui-body-a button{font-family:Helvetica,Arial,sans-serif}.ui-body-a .ui-link-inherit{color:#fff}.ui-body-a .ui-link{color:#2489ce;font-weight:bold}.ui-body-a .ui-link:hover{color:#2489ce}.ui-body-a .ui-link:active{color:#2489ce}.ui-body-a .ui-link:visited{color:#2489ce}.ui-btn-up-a{border:1px solid #111;background:#333;font-weight:bold;color:#fff;text-shadow:0 1px 1px #111;background-image:-webkit-gradient(linear,left top,left bottom,from(#444),to(#2d2d2d));background-image:-webkit-linear-gradient(#444,#2d2d2d);background-image:-moz-linear-gradient(#444,#2d2d2d);background-image:-ms-linear-gradient(#444,#2d2d2d);background-image:-o-linear-gradient(#444,#2d2d2d);background-image:linear-gradient(#444,#2d2d2d)}.ui-btn-up-a a.ui-link-inherit{color:#fff}.ui-btn-hover-a{border:1px solid #000;background:#444;font-weight:bold;color:#fff;text-shadow:0 1px 1px #111;background-image:-webkit-gradient(linear,left top,left bottom,from(#555),to(#383838));background-image:-webkit-linear-gradient(#555,#383838);background-image:-moz-linear-gradient(#555,#383838);background-image:-ms-linear-gradient(#555,#383838);background-image:-o-linear-gradient(#555,#383838);background-image:linear-gradient(#555,#383838)}.ui-btn-hover-a a.ui-link-inherit{color:#fff}.ui-btn-down-a{border:1px solid #000;background:#222;font-weight:bold;color:#fff;text-shadow:0 1px 1px #111;background-image:-webkit-gradient(linear,left top,left bottom,from(#202020),to(#2c2c2c));background-image:-webkit-linear-gradient(#202020,#2c2c2c);background-image:-moz-linear-gradient(#202020,#2c2c2c);background-image:-ms-linear-gradient(#202020,#2c2c2c);background-image:-o-linear-gradient(#202020,#2c2c2c);background-image:linear-gradient(#202020,#2c2c2c)}.ui-btn-down-a a.ui-link-inherit{color:#fff}.ui-btn-up-a,.ui-btn-hover-a,.ui-btn-down-a{font-family:Helvetica,Arial,sans-serif;text-decoration:none}.ui-bar-b{border:1px solid #456f9a;background:#5e87b0;color:#fff;font-weight:bold;text-shadow:0 1px 1px #3e6790;background-image:-webkit-gradient(linear,left top,left bottom,from(#6facd5),to(#497bae));background-image:-webkit-linear-gradient(#6facd5,#497bae);background-image:-moz-linear-gradient(#6facd5,#497bae);background-image:-ms-linear-gradient(#6facd5,#497bae);background-image:-o-linear-gradient(#6facd5,#497bae);background-image:linear-gradient(#6facd5,#497bae)}.ui-bar-b,.ui-bar-b input,.ui-bar-b select,.ui-bar-b textarea,.ui-bar-b button{font-family:Helvetica,Arial,sans-serif}.ui-bar-b .ui-link-inherit{color:#fff}.ui-bar-b .ui-link{color:#ddf0f8;font-weight:bold}.ui-bar-b .ui-link:hover{color:#ddf0f8}.ui-bar-b .ui-link:active{color:#ddf0f8}.ui-bar-b .ui-link:visited{color:#ddf0f8}.ui-body-b,.ui-overlay-b{border:1px solid #999;background:#f3f3f3;color:#222;text-shadow:0 1px 0 #fff;font-weight:normal;background-image:-webkit-gradient(linear,left top,left bottom,from(#ddd),to(#ccc));background-image:-webkit-linear-gradient(#ddd,#ccc);background-image:-moz-linear-gradient(#ddd,#ccc);background-image:-ms-linear-gradient(#ddd,#ccc);background-image:-o-linear-gradient(#ddd,#ccc);background-image:linear-gradient(#ddd,#ccc)}.ui-overlay-b{background-image:none;border-width:0}.ui-body-b,.ui-body-b input,.ui-body-b select,.ui-body-b textarea,.ui-body-b button{font-family:Helvetica,Arial,sans-serif}.ui-body-b .ui-link-inherit{color:#333}.ui-body-b .ui-link{color:#2489ce;font-weight:bold}.ui-body-b .ui-link:hover{color:#2489ce}.ui-body-b .ui-link:active{color:#2489ce}.ui-body-b .ui-link:visited{color:#2489ce}.ui-btn-up-b{border:1px solid #044062;background:#396b9e;font-weight:bold;color:#fff;text-shadow:0 1px 1px #194b7e;background-image:-webkit-gradient(linear,left top,left bottom,from(#5f9cc5),to(#396b9e));background-image:-webkit-linear-gradient(#5f9cc5,#396b9e);background-image:-moz-linear-gradient(#5f9cc5,#396b9e);background-image:-ms-linear-gradient(#5f9cc5,#396b9e);background-image:-o-linear-gradient(#5f9cc5,#396b9e);background-image:linear-gradient(#5f9cc5,#396b9e)}.ui-btn-up-b a.ui-link-inherit{color:#fff}.ui-btn-hover-b{border:1px solid #00415e;background:#4b88b6;font-weight:bold;color:#fff;text-shadow:0 1px 1px #194b7e;background-image:-webkit-gradient(linear,left top,left bottom,from(#6facd5),to(#4272a4));background-image:-webkit-linear-gradient(#6facd5,#4272a4);background-image:-moz-linear-gradient(#6facd5,#4272a4);background-image:-ms-linear-gradient(#6facd5,#4272a4);background-image:-o-linear-gradient(#6facd5,#4272a4);background-image:linear-gradient(#6facd5,#4272a4)}.ui-btn-hover-b a.ui-link-inherit{color:#fff}.ui-btn-down-b{border:1px solid #225377;background:#4e89c5;font-weight:bold;color:#fff;text-shadow:0 1px 1px #194b7e;background-image:-webkit-gradient(linear,left top,left bottom,from(#295b8e),to(#3e79b5));background-image:-webkit-linear-gradient(#295b8e,#3e79b5);background-image:-moz-linear-gradient(#295b8e,#3e79b5);background-image:-ms-linear-gradient(#295b8e,#3e79b5);background-image:-o-linear-gradient(#295b8e,#3e79b5);background-image:linear-gradient(#295b8e,#3e79b5)}.ui-btn-down-b a.ui-link-inherit{color:#fff}.ui-btn-up-b,.ui-btn-hover-b,.ui-btn-down-b{font-family:Helvetica,Arial,sans-serif;text-decoration:none}.ui-bar-c{border:1px solid #b3b3b3;background:#eee;color:#3e3e3e;font-weight:bold;text-shadow:0 1px 1px #fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#f0f0f0),to(#ddd));background-image:-webkit-linear-gradient(#f0f0f0,#ddd);background-image:-moz-linear-gradient(#f0f0f0,#ddd);background-image:-ms-linear-gradient(#f0f0f0,#ddd);background-image:-o-linear-gradient(#f0f0f0,#ddd);background-image:linear-gradient(#f0f0f0,#ddd)}.ui-bar-c .ui-link-inherit{color:#3e3e3e}.ui-bar-c .ui-link{color:#7cc4e7;font-weight:bold}.ui-bar-c .ui-link:hover{color:#2489ce}.ui-bar-c .ui-link:active{color:#2489ce}.ui-bar-c .ui-link:visited{color:#2489ce}.ui-bar-c,.ui-bar-c input,.ui-bar-c select,.ui-bar-c textarea,.ui-bar-c button{font-family:Helvetica,Arial,sans-serif}.ui-body-c,.ui-overlay-c{border:1px solid #aaa;color:#fff; /* text-shadow:0 1px 0 #333; */background:#f9f9f9;background-image:-webkit-gradient(linear,left top,left bottom,from(#f9f9f9),to(#eee));background-image:-webkit-linear-gradient(#f9f9f9,#eee);background-image:-moz-linear-gradient(#f9f9f9,#eee);background-image:-ms-linear-gradient(#f9f9f9,#eee);background-image:-o-linear-gradient(#f9f9f9,#eee);background-image:linear-gradient(#f9f9f9,#eee)}ui-body-c input,.ui-overlay-c input {color:#000;} .ui-body-c, .ui-overlay-c.ui-overlay-c{background-image:none;border-width:0}.ui-body-c,.ui-body-c input,.ui-body-c select,.ui-body-c textarea,.ui-body-c button{font-family:Helvetica,Arial,sans-serif}.ui-body-c .ui-link-inherit{color:#333}.ui-body-c .ui-link{color:#2489ce;font-weight:bold}.ui-body-c .ui-link:hover{color:#2489ce}.ui-body-c .ui-link:active{color:#2489ce}.ui-body-c .ui-link:visited{color:#2489ce}.ui-btn-up-c{border:1px solid #ccc;background:#eee;font-weight:bold;color:#222;text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#f1f1f1));background-image:-webkit-linear-gradient(#fff,#f1f1f1);background-image:-moz-linear-gradient(#fff,#f1f1f1);background-image:-ms-linear-gradient(#fff,#f1f1f1);background-image:-o-linear-gradient(#fff,#f1f1f1);background-image:linear-gradient(#fff,#f1f1f1)}.ui-btn-up-c a.ui-link-inherit{color:#2f3e46}.ui-btn-hover-c{border:1px solid #bbb;background:#dfdfdf;font-weight:bold;color:#222;text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#f6f6f6),to(#e0e0e0));background-image:-webkit-linear-gradient(#f9f9f9,#e0e0e0);background-image:-moz-linear-gradient(#f6f6f6,#e0e0e0);background-image:-ms-linear-gradient(#f6f6f6,#e0e0e0);background-image:-o-linear-gradient(#f6f6f6,#e0e0e0);background-image:linear-gradient(#f6f6f6,#e0e0e0)}.ui-btn-hover-c a.ui-link-inherit{color:#2f3e46}.ui-btn-down-c{border:1px solid #bbb;background:#d6d6d6;font-weight:bold;color:#222;text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#d0d0d0),to(#dfdfdf));background-image:-webkit-linear-gradient(#d0d0d0,#dfdfdf);background-image:-moz-linear-gradient(#d0d0d0,#dfdfdf);background-image:-ms-linear-gradient(#d0d0d0,#dfdfdf);background-image:-o-linear-gradient(#d0d0d0,#dfdfdf);background-image:linear-gradient(#d0d0d0,#dfdfdf)}.ui-btn-down-c a.ui-link-inherit{color:#2f3e46}.ui-btn-up-c,.ui-btn-hover-c,.ui-btn-down-c{font-family:Helvetica,Arial,sans-serif;text-decoration:none}.ui-bar-d{border:1px solid #bbb;background:#bbb;color:#333;text-shadow:0 1px 0 #eee;background-image:-webkit-gradient(linear,left top,left bottom,from(#ddd),to(#bbb));background-image:-webkit-linear-gradient(#ddd,#bbb);background-image:-moz-linear-gradient(#ddd,#bbb);background-image:-ms-linear-gradient(#ddd,#bbb);background-image:-o-linear-gradient(#ddd,#bbb);background-image:linear-gradient(#ddd,#bbb)}.ui-bar-d,.ui-bar-d input,.ui-bar-d select,.ui-bar-d textarea,.ui-bar-d button{font-family:Helvetica,Arial,sans-serif}.ui-bar-d .ui-link-inherit{color:#333}.ui-bar-d .ui-link{color:#2489ce;font-weight:bold}.ui-bar-d .ui-link:hover{color:#2489ce}.ui-bar-d .ui-link:active{color:#2489ce}.ui-bar-d .ui-link:visited{color:#2489ce}.ui-body-d,.ui-overlay-d{border:1px solid #bbb;color:#333;text-shadow:0 1px 0 #fff;background:#fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#fff));background-image:-webkit-linear-gradient(#fff,#fff);background-image:-moz-linear-gradient(#fff,#fff);background-image:-ms-linear-gradient(#fff,#fff);background-image:-o-linear-gradient(#fff,#fff);background-image:linear-gradient(#fff,#fff)}.ui-overlay-d{background-image:none;border-width:0}.ui-body-d,.ui-body-d input,.ui-body-d select,.ui-body-d textarea,.ui-body-d button{font-family:Helvetica,Arial,sans-serif}.ui-body-d .ui-link-inherit{color:#333}.ui-body-d .ui-link{color:#2489ce;font-weight:bold}.ui-body-d .ui-link:hover{color:#2489ce}.ui-body-d .ui-link:active{color:#2489ce}.ui-body-d .ui-link:visited{color:#2489ce}.ui-btn-up-d{border:1px solid #bbb;background:#fff;font-weight:bold;color:#333;text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#f6f6f6));background-image:-webkit-linear-gradient(#fafafa,#f6f6f6);background-image:-moz-linear-gradient(#fafafa,#f6f6f6);background-image:-ms-linear-gradient(#fafafa,#f6f6f6);background-image:-o-linear-gradient(#fafafa,#f6f6f6);background-image:linear-gradient(#fafafa,#f6f6f6)}.ui-btn-up-d a.ui-link-inherit{color:#333}.ui-btn-hover-d{border:1px solid #aaa;background:#eee;font-weight:bold;color:#333;cursor:pointer;text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#eee),to(#fff));background-image:-webkit-linear-gradient(#eee,#fff);background-image:-moz-linear-gradient(#eee,#fff);background-image:-ms-linear-gradient(#eee,#fff);background-image:-o-linear-gradient(#eee,#fff);background-image:linear-gradient(#eee,#fff)}.ui-btn-hover-d a.ui-link-inherit{color:#333}.ui-btn-down-d{border:1px solid #aaa;background:#eee;font-weight:bold;color:#333;text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#e5e5e5),to(#f2f2f2));background-image:-webkit-linear-gradient(#e5e5e5,#f2f2f2);background-image:-moz-linear-gradient(#e5e5e5,#f2f2f2);background-image:-ms-linear-gradient(#e5e5e5,#f2f2f2);background-image:-o-linear-gradient(#e5e5e5,#f2f2f2);background-image:linear-gradient(#e5e5e5,#f2f2f2)}.ui-btn-down-d a.ui-link-inherit{color:#333}.ui-btn-up-d,.ui-btn-hover-d,.ui-btn-down-d{font-family:Helvetica,Arial,sans-serif;text-decoration:none}.ui-bar-e{border:1px solid #f7c942;background:#fadb4e;color:#333;text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#fceda7),to(#fbef7e));background-image:-webkit-linear-gradient(#fceda7,#fbef7e);background-image:-moz-linear-gradient(#fceda7,#fbef7e);background-image:-ms-linear-gradient(#fceda7,#fbef7e);background-image:-o-linear-gradient(#fceda7,#fbef7e);background-image:linear-gradient(#fceda7,#fbef7e)}.ui-bar-e,.ui-bar-e input,.ui-bar-e select,.ui-bar-e textarea,.ui-bar-e button{font-family:Helvetica,Arial,sans-serif}.ui-bar-e .ui-link-inherit{color:#333}.ui-bar-e .ui-link{color:#2489ce;font-weight:bold}.ui-bar-e .ui-link:hover{color:#2489ce}.ui-bar-e .ui-link:active{color:#2489ce}.ui-bar-e .ui-link:visited{color:#2489ce}.ui-body-e,.ui-overlay-e{border:1px solid #f7c942;color:#222;text-shadow:0 1px 0 #fff;background:#fff9df;background-image:-webkit-gradient(linear,left top,left bottom,from(#fffadf),to(#fff3a5));background-image:-webkit-linear-gradient(#fffadf,#fff3a5);background-image:-moz-linear-gradient(#fffadf,#fff3a5);background-image:-ms-linear-gradient(#fffadf,#fff3a5);background-image:-o-linear-gradient(#fffadf,#fff3a5);background-image:linear-gradient(#fffadf,#fff3a5)}.ui-overlay-e{background-image:none;border-width:0}.ui-body-e,.ui-body-e input,.ui-body-e select,.ui-body-e textarea,.ui-body-e button{font-family:Helvetica,Arial,sans-serif}.ui-body-e .ui-link-inherit{color:#333}.ui-body-e .ui-link{color:#2489ce;font-weight:bold}.ui-body-e .ui-link:hover{color:#2489ce}.ui-body-e .ui-link:active{color:#2489ce}.ui-body-e .ui-link:visited{color:#2489ce}.ui-btn-up-e{border:1px solid #f4c63f;background:#fadb4e;font-weight:bold;color:#222;text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#ffefaa),to(#ffe155));background-image:-webkit-linear-gradient(#ffefaa,#ffe155);background-image:-moz-linear-gradient(#ffefaa,#ffe155);background-image:-ms-linear-gradient(#ffefaa,#ffe155);background-image:-o-linear-gradient(#ffefaa,#ffe155);background-image:linear-gradient(#ffefaa,#ffe155)}.ui-btn-up-e a.ui-link-inherit{color:#222}.ui-btn-hover-e{border:1px solid #f2c43d;background:#fbe26f;font-weight:bold;color:#111;text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff5ba),to(#fbdd52));background-image:-webkit-linear-gradient(#fff5ba,#fbdd52);background-image:-moz-linear-gradient(#fff5ba,#fbdd52);background-image:-ms-linear-gradient(#fff5ba,#fbdd52);background-image:-o-linear-gradient(#fff5ba,#fbdd52);background-image:linear-gradient(#fff5ba,#fbdd52)}.ui-btn-hover-e a.ui-link-inherit{color:#333}.ui-btn-down-e{border:1px solid #f2c43d;background:#fceda7;font-weight:bold;color:#111;text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#f8d94c),to(#fadb4e));background-image:-webkit-linear-gradient(#f8d94c,#fadb4e);background-image:-moz-linear-gradient(#f8d94c,#fadb4e);background-image:-ms-linear-gradient(#f8d94c,#fadb4e);background-image:-o-linear-gradient(#f8d94c,#fadb4e);background-image:linear-gradient(#f8d94c,#fadb4e)}.ui-btn-down-e a.ui-link-inherit{color:#333}.ui-btn-up-e,.ui-btn-hover-e,.ui-btn-down-e{font-family:Helvetica,Arial,sans-serif;text-decoration:none}a.ui-link-inherit{text-decoration:none!important}.ui-btn-active{border:1px solid #2373a5;background:#5393c5;font-weight:bold;color:#fff;cursor:pointer;text-shadow:0 1px 1px #3373a5;text-decoration:none;background-image:-webkit-gradient(linear,left top,left bottom,from(#5393c5),to(#6facd5));background-image:-webkit-linear-gradient(#5393c5,#6facd5);background-image:-moz-linear-gradient(#5393c5,#6facd5);background-image:-ms-linear-gradient(#5393c5,#6facd5);background-image:-o-linear-gradient(#5393c5,#6facd5);background-image:linear-gradient(#5393c5,#6facd5);font-family:Helvetica,Arial,sans-serif}.ui-btn-active a.ui-link-inherit{color:#fff}.ui-btn-inner{border-top:1px solid #fff;border-color:rgba(255,255,255,.3)}.ui-corner-tl{-moz-border-radius-topleft:.6em;-webkit-border-top-left-radius:.6em;border-top-left-radius:.6em}.ui-corner-tr{-moz-border-radius-topright:.6em;-webkit-border-top-right-radius:.6em;border-top-right-radius:.6em}.ui-corner-bl{-moz-border-radius-bottomleft:.6em;-webkit-border-bottom-left-radius:.6em;border-bottom-left-radius:.6em}.ui-corner-br{-moz-border-radius-bottomright:.6em;-webkit-border-bottom-right-radius:.6em;border-bottom-right-radius:.6em}.ui-corner-top{-moz-border-radius-topleft:.6em;-webkit-border-top-left-radius:.6em;border-top-left-radius:.6em;-moz-border-radius-topright:.6em;-webkit-border-top-right-radius:.6em;border-top-right-radius:.6em}.ui-corner-bottom{-moz-border-radius-bottomleft:.6em;-webkit-border-bottom-left-radius:.6em;border-bottom-left-radius:.6em;-moz-border-radius-bottomright:.6em;-webkit-border-bottom-right-radius:.6em;border-bottom-right-radius:.6em}.ui-corner-right{-moz-border-radius-topright:.6em;-webkit-border-top-right-radius:.6em;border-top-right-radius:.6em;-moz-border-radius-bottomright:.6em;-webkit-border-bottom-right-radius:.6em;border-bottom-right-radius:.6em}.ui-corner-left{-moz-border-radius-topleft:.6em;-webkit-border-top-left-radius:.6em;border-top-left-radius:.6em;-moz-border-radius-bottomleft:.6em;-webkit-border-bottom-left-radius:.6em;border-bottom-left-radius:.6em}.ui-corner-all{-moz-border-radius:.6em;-webkit-border-radius:.6em;border-radius:.6em}.ui-corner-none{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.ui-br{border-bottom:#828282;border-bottom:rgba(130,130,130,.3);border-bottom-width:1px;border-bottom-style:solid}.ui-disabled{opacity:.3}.ui-disabled,.ui-disabled a{cursor:default!important;pointer-events:none}.ui-disabled .ui-btn-text{-ms-filter:"alpha(opacity=30)";filter:alpha(opacity=30);zoom:1}.ui-icon,.ui-icon-searchfield:after{background:#666;background:rgba(0,0,0,.4);background-image:url(../i/icons-18-white.png);background-repeat:no-repeat;-moz-border-radius:9px;-webkit-border-radius:9px;border-radius:9px}.ui-icon-alt{background:#fff;background:rgba(255,255,255,.3);background-image:url(../i/icons-18-black.png);background-repeat:no-repeat}@media only screen and (-webkit-min-device-pixel-ratio:1.5),only screen and (min--moz-device-pixel-ratio:1.5),only screen and (min-resolution:240dpi){.ui-icon-plus,.ui-icon-minus,.ui-icon-delete,.ui-icon-arrow-r,.ui-icon-arrow-l,.ui-icon-arrow-u,.ui-icon-arrow-d,.ui-icon-check,.ui-icon-gear,.ui-icon-refresh,.ui-icon-forward,.ui-icon-back,.ui-icon-grid,.ui-icon-star,.ui-icon-alert,.ui-icon-info,.ui-icon-home,.ui-icon-search,.ui-icon-searchfield:after,.ui-icon-checkbox-off,.ui-icon-checkbox-on,.ui-icon-radio-off,.ui-icon-radio-on{background-image:url(../i/icons-36-white.png);-moz-background-size:776px 18px;-o-background-size:776px 18px;-webkit-background-size:776px 18px;background-size:776px 18px}.ui-icon-alt{background-image:url(../i/icons-36-black.png)}}.ui-icon-plus{background-position:-0 50%}.ui-icon-minus{background-position:-36px 50%}.ui-icon-delete{background-position:-72px 50%}.ui-icon-arrow-r{background-position:-108px 50%}.ui-icon-arrow-l{background-position:-144px 50%}.ui-icon-arrow-u{background-position:-180px 50%}.ui-icon-arrow-d{background-position:-216px 50%}.ui-icon-check{background-position:-252px 50%}.ui-icon-gear{background-position:-288px 50%}.ui-icon-refresh{background-position:-324px 50%}.ui-icon-forward{background-position:-360px 50%}.ui-icon-back{background-position:-396px 50%}.ui-icon-grid{background-position:-432px 50%}.ui-icon-star{background-position:-468px 50%}.ui-icon-alert{background-position:-504px 50%}.ui-icon-info{background-position:-540px 50%}.ui-icon-home{background-position:-576px 50%}.ui-icon-search,.ui-icon-searchfield:after{background-position:-612px 50%}.ui-icon-checkbox-off{background-position:-684px 50%}.ui-icon-checkbox-on{background-position:-648px 50%}.ui-icon-radio-off{background-position:-756px 50%}.ui-icon-radio-on{background-position:-720px 50%}.ui-checkbox .ui-icon{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.ui-icon-checkbox-off,.ui-icon-radio-off{background-color:transparent}.ui-checkbox-on .ui-icon,.ui-radio-on .ui-icon{background-color:#4596ce}.ui-icon-loading{background:url(../i/ajax-loader.gif);background-size:46px 46px}.ui-btn-corner-tl{-moz-border-radius-topleft:1em;-webkit-border-top-left-radius:1em;border-top-left-radius:1em}.ui-btn-corner-tr{-moz-border-radius-topright:1em;-webkit-border-top-right-radius:1em;border-top-right-radius:1em}.ui-btn-corner-bl{-moz-border-radius-bottomleft:1em;-webkit-border-bottom-left-radius:1em;border-bottom-left-radius:1em}.ui-btn-corner-br{-moz-border-radius-bottomright:1em;-webkit-border-bottom-right-radius:1em;border-bottom-right-radius:1em}.ui-btn-corner-top{-moz-border-radius-topleft:1em;-webkit-border-top-left-radius:1em;border-top-left-radius:1em;-moz-border-radius-topright:1em;-webkit-border-top-right-radius:1em;border-top-right-radius:1em}.ui-btn-corner-bottom{-moz-border-radius-bottomleft:1em;-webkit-border-bottom-left-radius:1em;border-bottom-left-radius:1em;-moz-border-radius-bottomright:1em;-webkit-border-bottom-right-radius:1em;border-bottom-right-radius:1em}.ui-btn-corner-right{-moz-border-radius-topright:1em;-webkit-border-top-right-radius:1em;border-top-right-radius:1em;-moz-border-radius-bottomright:1em;-webkit-border-bottom-right-radius:1em;border-bottom-right-radius:1em}.ui-btn-corner-left{-moz-border-radius-topleft:1em;-webkit-border-top-left-radius:1em;border-top-left-radius:1em;-moz-border-radius-bottomleft:1em;-webkit-border-bottom-left-radius:1em;border-bottom-left-radius:1em}.ui-btn-corner-all{-moz-border-radius:1em;-webkit-border-radius:1em;border-radius:1em}.ui-corner-tl,.ui-corner-tr,.ui-corner-bl,.ui-corner-br,.ui-corner-top,.ui-corner-bottom,.ui-corner-right,.ui-corner-left,.ui-corner-all,.ui-btn-corner-tl,.ui-btn-corner-tr,.ui-btn-corner-bl,.ui-btn-corner-br,.ui-btn-corner-top,.ui-btn-corner-bottom,.ui-btn-corner-right,.ui-btn-corner-left,.ui-btn-corner-all{-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.ui-overlay{background:#666;opacity:.5;filter:Alpha(Opacity=50);position:absolute;width:100%;height:100%}.ui-overlay-shadow{-moz-box-shadow:0 0 12px rgba(0,0,0,.6);-webkit-box-shadow:0 0 12px rgba(0,0,0,.6);box-shadow:0 0 12px rgba(0,0,0,.6)}.ui-shadow{-moz-box-shadow:0 1px 4px rgba(0,0,0,.3);-webkit-box-shadow:0 1px 4px rgba(0,0,0,.3);box-shadow:0 1px 4px rgba(0,0,0,.3)}.ui-bar-a .ui-shadow,.ui-bar-b .ui-shadow,.ui-bar-c .ui-shadow{-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.ui-shadow-inset{-moz-box-shadow:inset 0 1px 4px rgba(0,0,0,.2);-webkit-box-shadow:inset 0 1px 4px rgba(0,0,0,.2);box-shadow:inset 0 1px 4px rgba(0,0,0,.2)}.ui-icon-shadow{-moz-box-shadow:0 1px 0 rgba(255,255,255,.4);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.4);box-shadow:0 1px 0 rgba(255,255,255,.4)}.ui-btn:focus{outline:0}.ui-focus,.ui-btn:focus{-moz-box-shadow:0 0 12px #387bbe;-webkit-box-shadow:0 0 12px #387bbe;box-shadow:0 0 12px #387bbe}.ui-mobile-nosupport-boxshadow *{-moz-box-shadow:none!important;-webkit-box-shadow:none!important;box-shadow:none!important}.ui-mobile-nosupport-boxshadow .ui-focus,.ui-mobile-nosupport-boxshadow .ui-btn:focus{outline-width:1px;outline-style:dotted}.ui-mobile,.ui-mobile body{height:99.9%}.ui-mobile fieldset,.ui-page{padding:0;margin:0}.ui-mobile a img,.ui-mobile fieldset{border-width:0}.ui-mobile-viewport{margin:0;overflow-x:visible;-webkit-text-size-adjust:none;-ms-text-size-adjust:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}body.ui-mobile-viewport,div.ui-mobile-viewport{overflow-x:hidden}.ui-mobile [data-role=page],.ui-mobile [data-role=dialog],.ui-page{top:0;left:0;width:100%;min-height:100%;position:absolute;display:none;border:0}.ui-mobile .ui-page-active{display:block;overflow:visible}.ui-page{outline:0}@media screen and (orientation:portrait){.ui-mobile,.ui-mobile .ui-page{min-height:420px}}@media screen and (orientation:landscape){.ui-mobile,.ui-mobile .ui-page{min-height:300px}}.ui-loading .ui-loader{display:block}.ui-loader{display:none;z-index:9999999;position:fixed;top:50%;box-shadow:0 1px 1px -1px #fff;left:50%;border:0}.ui-loader-default{background:0;opacity:.18;width:46px;height:46px;margin-left:-23px;margin-top:-23px}.ui-loader-verbose{width:200px;opacity:.88;height:auto;margin-left:-110px;margin-top:-43px;padding:10px}.ui-loader-default h1{font-size:0;width:0;height:0;overflow:hidden}.ui-loader-verbose h1{font-size:16px;margin:0;text-align:center}.ui-loader .ui-icon{background-color:#000;display:block;margin:0;width:44px;height:44px;padding:1px;-webkit-border-radius:36px;-moz-border-radius:36px;border-radius:36px}.ui-loader-verbose .ui-icon{margin:0 auto 10px;opacity:.75}.ui-loader-textonly{padding:15px;margin-left:-115px}.ui-loader-textonly .ui-icon{display:none}.ui-loader-fakefix{position:absolute}.ui-mobile-rendering>*{visibility:hidden}.ui-bar,.ui-body{position:relative;padding:.4em 15px;overflow:hidden;display:block;clear:both}.ui-bar{font-size:16px;margin:0}.ui-bar h1,.ui-bar h2,.ui-bar h3,.ui-bar h4,.ui-bar h5,.ui-bar h6{margin:0;padding:0;font-size:16px;display:inline-block}.ui-header,.ui-footer{position:relative;border-left-width:0;border-right-width:0}.ui-header .ui-btn-left,.ui-header .ui-btn-right,.ui-footer .ui-btn-left,.ui-footer .ui-btn-right{position:absolute;top:3px}.ui-header .ui-btn-left,.ui-footer .ui-btn-left{left:5px}.ui-header .ui-btn-right,.ui-footer .ui-btn-right{right:5px}.ui-footer .ui-btn-icon-notext,.ui-header .ui-btn-icon-notext{top:6px}.ui-header .ui-title,.ui-footer .ui-title{min-height:1.1em;text-align:center;font-size:16px;display:block;margin:.6em 30% .8em;padding:0;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;outline:0!important}.ui-footer .ui-title{margin:.6em 15px .8em}.ui-content{border-width:0;overflow:visible;overflow-x:hidden;padding:15px}.ui-icon{width:18px;height:18px}.ui-nojs{position:absolute;left:-9999px}.ui-hide-label label,.ui-hidden-accessible{position:absolute!important;left:-9999px;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px)}.ui-mobile-viewport-transitioning,.ui-mobile-viewport-transitioning .ui-page{width:100%;height:100%;overflow:hidden}.in{-webkit-animation-timing-function:ease-out;-webkit-animation-duration:350ms;-moz-animation-timing-function:ease-out;-moz-animation-duration:350ms}.out{-webkit-animation-timing-function:ease-in;-webkit-animation-duration:225ms;-moz-animation-timing-function:ease-in;-moz-animation-duration:225}@-webkit-keyframes fadein{from{opacity:0}to{opacity:1}}@-moz-keyframes fadein{from{opacity:0}to{opacity:1}}@-webkit-keyframes fadeout{from{opacity:1}to{opacity:0}}@-moz-keyframes fadeout{from{opacity:1}to{opacity:0}}.fade.out{opacity:0;-webkit-animation-duration:125ms;-webkit-animation-name:fadeout;-moz-animation-duration:125ms;-moz-animation-name:fadeout}.fade.in{opacity:1;-webkit-animation-duration:225ms;-webkit-animation-name:fadein;-moz-animation-duration:225ms;-moz-animation-name:fadein}.pop{-webkit-transform-origin:50% 50%;-moz-transform-origin:50% 50%}.pop.in{-webkit-transform:scale(1);-moz-transform:scale(1);opacity:1;-webkit-animation-name:popin;-moz-animation-name:popin;-webkit-animation-duration:350ms;-moz-animation-duration:350ms}.pop.out{-webkit-animation-name:fadeout;-moz-animation-name:fadeout;opacity:0;-webkit-animation-duration:100ms;-moz-animation-duration:100ms}.pop.in.reverse{-webkit-animation-name:fadein;-moz-animation-name:fadein}.pop.out.reverse{-webkit-transform:scale(.8);-moz-transform:scale(.8);-webkit-animation-name:popout;-moz-animation-name:popout}@-webkit-keyframes popin{from{-webkit-transform:scale(.8);opacity:0}to{-webkit-transform:scale(1);opacity:1}}@-moz-keyframes popin{from{-moz-transform:scale(.8);opacity:0}to{-moz-transform:scale(1);opacity:1}}@-webkit-keyframes popout{from{-webkit-transform:scale(1);opacity:1}to{-webkit-transform:scale(.8);opacity:0}}@-moz-keyframes popout{from{-moz-transform:scale(1);opacity:1}to{-moz-transform:scale(.8);opacity:0}}@-webkit-keyframes slideinfromright{from{-webkit-transform:translateX(100%)}to{-webkit-transform:translateX(0)}}@-moz-keyframes slideinfromright{from{-moz-transform:translateX(100%)}to{-moz-transform:translateX(0)}}@-webkit-keyframes slideinfromleft{from{-webkit-transform:translateX(-100%)}to{-webkit-transform:translateX(0)}}@-moz-keyframes slideinfromleft{from{-moz-transform:translateX(-100%)}to{-moz-transform:translateX(0)}}@-webkit-keyframes slideouttoleft{from{-webkit-transform:translateX(0)}to{-webkit-transform:translateX(-100%)}}@-moz-keyframes slideouttoleft{from{-moz-transform:translateX(0)}to{-moz-transform:translateX(-100%)}}@-webkit-keyframes slideouttoright{from{-webkit-transform:translateX(0)}to{-webkit-transform:translateX(100%)}}@-moz-keyframes slideouttoright{from{-moz-transform:translateX(0)}to{-moz-transform:translateX(100%)}}.slide.out,.slide.in{-webkit-animation-timing-function:ease-out;-webkit-animation-duration:350ms;-moz-animation-timing-function:ease-out;-moz-animation-duration:350ms}.slide.out{-webkit-transform:translateX(-100%);-webkit-animation-name:slideouttoleft;-moz-transform:translateX(-100%);-moz-animation-name:slideouttoleft}.slide.in{-webkit-transform:translateX(0);-webkit-animation-name:slideinfromright;-moz-transform:translateX(0);-moz-animation-name:slideinfromright}.slide.out.reverse{-webkit-transform:translateX(100%);-webkit-animation-name:slideouttoright;-moz-transform:translateX(100%);-moz-animation-name:slideouttoright}.slide.in.reverse{-webkit-transform:translateX(0);-webkit-animation-name:slideinfromleft;-moz-transform:translateX(0);-moz-animation-name:slideinfromleft}.slidefade.out{-webkit-transform:translateX(-100%);-webkit-animation-name:slideouttoleft;-moz-transform:translateX(-100%);-moz-animation-name:slideouttoleft;-webkit-animation-duration:225ms;-moz-animation-duration:225ms}.slidefade.in{-webkit-transform:translateX(0);-webkit-animation-name:fadein;-moz-transform:translateX(0);-moz-animation-name:fadein;-webkit-animation-duration:200ms;-moz-animation-duration:200ms}.slidefade.out.reverse{-webkit-transform:translateX(100%);-webkit-animation-name:slideouttoright;-moz-transform:translateX(100%);-moz-animation-name:slideouttoright;-webkit-animation-duration:200ms;-moz-animation-duration:200ms}.slidefade.in.reverse{-webkit-transform:translateX(0);-webkit-animation-name:fadein;-moz-transform:translateX(0);-moz-animation-name:fadein;-webkit-animation-duration:200ms;-moz-animation-duration:200ms}.slidedown.out{-webkit-animation-name:fadeout;-moz-animation-name:fadeout;-webkit-animation-duration:100ms;-moz-animation-duration:100ms}.slidedown.in{-webkit-transform:translateY(0);-webkit-animation-name:slideinfromtop;-moz-transform:translateY(0);-moz-animation-name:slideinfromtop;-webkit-animation-duration:250ms;-moz-animation-duration:250ms}.slidedown.in.reverse{-webkit-animation-name:fadein;-moz-animation-name:fadein;-webkit-animation-duration:150ms;-moz-animation-duration:150ms}.slidedown.out.reverse{-webkit-transform:translateY(-100%);-moz-transform:translateY(-100%);-webkit-animation-name:slideouttotop;-moz-animation-name:slideouttotop;-webkit-animation-duration:200ms;-moz-animation-duration:200ms}@-webkit-keyframes slideinfromtop{from{-webkit-transform:translateY(-100%)}to{-webkit-transform:translateY(0)}}@-moz-keyframes slideinfromtop{from{-moz-transform:translateY(-100%)}to{-moz-transform:translateY(0)}}@-webkit-keyframes slideouttotop{from{-webkit-transform:translateY(0)}to{-webkit-transform:translateY(-100%)}}@-moz-keyframes slideouttotop{from{-moz-transform:translateY(0)}to{-moz-transform:translateY(-100%)}}.slideup.out{-webkit-animation-name:fadeout;-moz-animation-name:fadeout;-webkit-animation-duration:100ms;-moz-animation-duration:100ms}.slideup.in{-webkit-transform:translateY(0);-webkit-animation-name:slideinfrombottom;-moz-transform:translateY(0);-moz-animation-name:slideinfrombottom;-webkit-animation-duration:250ms;-moz-animation-duration:250ms}.slideup.in.reverse{-webkit-animation-name:fadein;-moz-animation-name:fadein;-webkit-animation-duration:150ms;-moz-animation-duration:150ms}.slideup.out.reverse{-webkit-transform:translateY(100%);-moz-transform:translateY(100%);-webkit-animation-name:slideouttobottom;-moz-animation-name:slideouttobottom;-webkit-animation-duration:200ms;-moz-animation-duration:200ms}@-webkit-keyframes slideinfrombottom{from{-webkit-transform:translateY(100%)}to{-webkit-transform:translateY(0)}}@-moz-keyframes slideinfrombottom{from{-moz-transform:translateY(100%)}to{-moz-transform:translateY(0)}}@-webkit-keyframes slideouttobottom{from{-webkit-transform:translateY(0)}to{-webkit-transform:translateY(100%)}}@-moz-keyframes slideouttobottom{from{-moz-transform:translateY(0)}to{-moz-transform:translateY(100%)}}.viewport-flip{-webkit-perspective:1000;-moz-perspective:1000;position:absolute}.flip{-webkit-backface-visibility:hidden;-webkit-transform:translateX(0);-moz-backface-visibility:hidden;-moz-transform:translateX(0)}.flip.out{-webkit-transform:rotateY(-90deg) scale(.9);-webkit-animation-name:flipouttoleft;-webkit-animation-duration:175ms;-moz-transform:rotateY(-90deg) scale(.9);-moz-animation-name:flipouttoleft;-moz-animation-duration:175ms}.flip.in{-webkit-animation-name:flipintoright;-webkit-animation-duration:225ms;-moz-animation-name:flipintoright;-moz-animation-duration:225ms}.flip.out.reverse{-webkit-transform:rotateY(90deg) scale(.9);-webkit-animation-name:flipouttoright;-moz-transform:rotateY(90deg) scale(.9);-moz-animation-name:flipouttoright}.flip.in.reverse{-webkit-animation-name:flipintoleft;-moz-animation-name:flipintoleft}@-webkit-keyframes flipouttoleft{from{-webkit-transform:rotateY(0)}to{-webkit-transform:rotateY(-90deg) scale(.9)}}@-moz-keyframes flipouttoleft{from{-moz-transform:rotateY(0)}to{-moz-transform:rotateY(-90deg) scale(.9)}}@-webkit-keyframes flipouttoright{from{-webkit-transform:rotateY(0)}to{-webkit-transform:rotateY(90deg) scale(.9)}}@-moz-keyframes flipouttoright{from{-moz-transform:rotateY(0)}to{-moz-transform:rotateY(90deg) scale(.9)}}@-webkit-keyframes flipintoleft{from{-webkit-transform:rotateY(-90deg) scale(.9)}to{-webkit-transform:rotateY(0)}}@-moz-keyframes flipintoleft{from{-moz-transform:rotateY(-90deg) scale(.9)}to{-moz-transform:rotateY(0)}}@-webkit-keyframes flipintoright{from{-webkit-transform:rotateY(90deg) scale(.9)}to{-webkit-transform:rotateY(0)}}@-moz-keyframes flipintoright{from{-moz-transform:rotateY(90deg) scale(.9)}to{-moz-transform:rotateY(0)}}.viewport-turn{-webkit-perspective:1000;-moz-perspective:1000;position:absolute}.turn{-webkit-backface-visibility:hidden;-webkit-transform:translateX(0);-webkit-transform-origin:0 0;-moz-backface-visibility:hidden;-moz-transform:translateX(0);-moz-transform-origin:0 0}.turn.out{-webkit-transform:rotateY(-90deg) scale(.9);-webkit-animation-name:flipouttoleft;-moz-transform:rotateY(-90deg) scale(.9);-moz-animation-name:flipouttoleft;-webkit-animation-duration:125ms;-moz-animation-duration:125ms}.turn.in{-webkit-animation-name:flipintoright;-moz-animation-name:flipintoright;-webkit-animation-duration:250ms;-moz-animation-duration:250ms}.turn.out.reverse{-webkit-transform:rotateY(90deg) scale(.9);-webkit-animation-name:flipouttoright;-moz-transform:rotateY(90deg) scale(.9);-moz-animation-name:flipouttoright}.turn.in.reverse{-webkit-animation-name:flipintoleft;-moz-animation-name:flipintoleft}@-webkit-keyframes flipouttoleft{from{-webkit-transform:rotateY(0)}to{-webkit-transform:rotateY(-90deg) scale(.9)}}@-moz-keyframes flipouttoleft{from{-moz-transform:rotateY(0)}to{-moz-transform:rotateY(-90deg) scale(.9)}}@-webkit-keyframes flipouttoright{from{-webkit-transform:rotateY(0)}to{-webkit-transform:rotateY(90deg) scale(.9)}}@-moz-keyframes flipouttoright{from{-moz-transform:rotateY(0)}to{-moz-transform:rotateY(90deg) scale(.9)}}@-webkit-keyframes flipintoleft{from{-webkit-transform:rotateY(-90deg) scale(.9)}to{-webkit-transform:rotateY(0)}}@-moz-keyframes flipintoleft{from{-moz-transform:rotateY(-90deg) scale(.9)}to{-moz-transform:rotateY(0)}}@-webkit-keyframes flipintoright{from{-webkit-transform:rotateY(90deg) scale(.9)}to{-webkit-transform:rotateY(0)}}@-moz-keyframes flipintoright{from{-moz-transform:rotateY(90deg) scale(.9)}to{-moz-transform:rotateY(0)}}.flow{-webkit-transform-origin:50% 30%;-moz-transform-origin:50% 30%;-webkit-box-shadow:0 0 20px rgba(0,0,0,.4);-moz-box-shadow:0 0 20px rgba(0,0,0,.4)}.ui-dialog.flow{-webkit-transform-origin:none;-moz-transform-origin:none;-webkit-box-shadow:none;-moz-box-shadow:none}.flow.out{-webkit-transform:translateX(-100%) scale(.7);-webkit-animation-name:flowouttoleft;-webkit-animation-timing-function:ease;-webkit-animation-duration:350ms;-moz-transform:translateX(-100%) scale(.7);-moz-animation-name:flowouttoleft;-moz-animation-timing-function:ease;-moz-animation-duration:350ms}.flow.in{-webkit-transform:translateX(0) scale(1);-webkit-animation-name:flowinfromright;-webkit-animation-timing-function:ease;-webkit-animation-duration:350ms;-moz-transform:translateX(0) scale(1);-moz-animation-name:flowinfromright;-moz-animation-timing-function:ease;-moz-animation-duration:350ms}.flow.out.reverse{-webkit-transform:translateX(100%);-webkit-animation-name:flowouttoright;-moz-transform:translateX(100%);-moz-animation-name:flowouttoright}.flow.in.reverse{-webkit-animation-name:flowinfromleft;-moz-animation-name:flowinfromleft}@-webkit-keyframes flowouttoleft{0%{-webkit-transform:translateX(0) scale(1)}60%,70%{-webkit-transform:translateX(0) scale(.7)}100%{-webkit-transform:translateX(-100%) scale(.7)}}@-moz-keyframes flowouttoleft{0%{-moz-transform:translateX(0) scale(1)}60%,70%{-moz-transform:translateX(0) scale(.7)}100%{-moz-transform:translateX(-100%) scale(.7)}}@-webkit-keyframes flowouttoright{0%{-webkit-transform:translateX(0) scale(1)}60%,70%{-webkit-transform:translateX(0) scale(.7)}100%{-webkit-transform:translateX(100%) scale(.7)}}@-moz-keyframes flowouttoright{0%{-moz-transform:translateX(0) scale(1)}60%,70%{-moz-transform:translateX(0) scale(.7)}100%{-moz-transform:translateX(100%) scale(.7)}}@-webkit-keyframes flowinfromleft{0%{-webkit-transform:translateX(-100%) scale(.7)}30%,40%{-webkit-transform:translateX(0) scale(.7)}100%{-webkit-transform:translateX(0) scale(1)}}@-moz-keyframes flowinfromleft{0%{-moz-transform:translateX(-100%) scale(.7)}30%,40%{-moz-transform:translateX(0) scale(.7)}100%{-moz-transform:translateX(0) scale(1)}}@-webkit-keyframes flowinfromright{0%{-webkit-transform:translateX(100%) scale(.7)}30%,40%{-webkit-transform:translateX(0) scale(.7)}100%{-webkit-transform:translateX(0) scale(1)}}@-moz-keyframes flowinfromright{0%{-moz-transform:translateX(100%) scale(.7)}30%,40%{-moz-transform:translateX(0) scale(.7)}100%{-moz-transform:translateX(0) scale(1)}}.ui-grid-a,.ui-grid-b,.ui-grid-c,.ui-grid-d{overflow:hidden}.ui-block-a,.ui-block-b,.ui-block-c,.ui-block-d,.ui-block-e{margin:0;padding:0;border:0;float:left;min-height:1px}.ui-grid-solo .ui-block-a{width:100%;float:none}.ui-grid-a .ui-block-a,.ui-grid-a .ui-block-b{width:50%}.ui-grid-a .ui-block-a{clear:left}.ui-grid-b .ui-block-a,.ui-grid-b .ui-block-b,.ui-grid-b .ui-block-c{width:33.333%}.ui-grid-b .ui-block-a{clear:left}.ui-grid-c .ui-block-a,.ui-grid-c .ui-block-b,.ui-grid-c .ui-block-c,.ui-grid-c .ui-block-d{width:25%}.ui-grid-c .ui-block-a{clear:left}.ui-grid-d .ui-block-a,.ui-grid-d .ui-block-b,.ui-grid-d .ui-block-c,.ui-grid-d .ui-block-d,.ui-grid-d .ui-block-e{width:20%}.ui-grid-d .ui-block-a{clear:left}.ui-header-fixed,.ui-footer-fixed{left:0;right:0;width:100%;position:fixed;z-index:1000}.ui-header-fixed{top:0}.ui-footer-fixed{bottom:0}.ui-header-fullscreen,.ui-footer-fullscreen{opacity:.9}.ui-page-header-fixed{padding-top:2.5em}.ui-page-footer-fixed{padding-bottom:3em}.ui-page-header-fullscreen .ui-content,.ui-page-footer-fullscreen .ui-content{padding:0}.ui-fixed-hidden{position:absolute}.ui-page-header-fullscreen .ui-fixed-hidden,.ui-page-footer-fullscreen .ui-fixed-hidden{left:-99999em}.ui-header-fixed .ui-btn,.ui-footer-fixed .ui-btn{z-index:10}.ui-navbar{overflow:hidden}.ui-navbar ul,.ui-navbar-expanded ul{list-style:none;padding:0;margin:0;position:relative;display:block;border:0}.ui-navbar-collapsed ul{float:left;width:75%;margin-right:-2px}.ui-navbar-collapsed .ui-navbar-toggle{float:left;width:25%}.ui-navbar li.ui-navbar-truncate{position:absolute;left:-9999px;top:-9999px}.ui-navbar li .ui-btn,.ui-navbar .ui-navbar-toggle .ui-btn{display:block;font-size:12px;text-align:center;margin:0;border-right-width:0;max-width:100%}.ui-navbar li .ui-btn{margin-right:-1px}.ui-navbar li .ui-btn:last-child{margin-right:0}.ui-header .ui-navbar li .ui-btn,.ui-header .ui-navbar .ui-navbar-toggle .ui-btn,.ui-footer .ui-navbar li .ui-btn,.ui-footer .ui-navbar .ui-navbar-toggle .ui-btn{border-top-width:0;border-bottom-width:0}.ui-navbar .ui-btn-inner{padding-left:2px;padding-right:2px}.ui-navbar-noicons li .ui-btn .ui-btn-inner,.ui-navbar-noicons .ui-navbar-toggle .ui-btn-inner{padding-top:.8em;padding-bottom:.9em}.ui-navbar-expanded .ui-btn{margin:0;font-size:14px}.ui-navbar-expanded .ui-btn-inner{padding-left:5px;padding-right:5px}.ui-navbar-expanded .ui-btn-icon-top .ui-btn-inner{padding:45px 5px 15px;text-align:center}.ui-navbar-expanded .ui-btn-icon-top .ui-icon{top:15px}.ui-navbar-expanded .ui-btn-icon-bottom .ui-btn-inner{padding:15px 5px 45px;text-align:center}.ui-navbar-expanded .ui-btn-icon-bottom .ui-icon{bottom:15px}.ui-navbar-expanded li .ui-btn .ui-btn-inner{min-height:2.5em}.ui-navbar-expanded .ui-navbar-noicons .ui-btn .ui-btn-inner{padding-top:1.8em;padding-bottom:1.9em}.ui-btn{display:block;text-align:center;cursor:pointer;position:relative;margin:.5em 5px;padding:0}.ui-mini{margin:.25em 5px}.ui-btn-inner{padding:.6em 20px;min-width:.75em;display:block;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;position:relative;zoom:1}.ui-btn input,.ui-btn button{z-index:2}.ui-btn-left,.ui-btn-right,.ui-btn-inline{display:inline-block}.ui-btn-block{display:block}.ui-header .ui-btn,.ui-footer .ui-btn{display:inline-block;margin:0}.ui-header .ui-btn-inner,.ui-footer .ui-btn-inner,.ui-mini .ui-btn-inner{font-size:12.5px;padding:.55em 11px .5em}.ui-header .ui-fullsize .ui-btn-inner,.ui-footer .ui-fullsize .ui-btn-inner{font-size:16px;padding:.6em 25px}.ui-btn-icon-notext{width:24px;height:24px}.ui-btn-icon-notext .ui-btn-inner{padding:0;height:100%}.ui-btn-icon-notext .ui-btn-inner .ui-icon{margin:2px 1px 2px 3px}.ui-btn-text{position:relative;z-index:1;width:100%}.ui-btn-icon-notext .ui-btn-text{position:absolute;left:-9999px}.ui-btn-icon-left .ui-btn-inner{padding-left:40px}.ui-btn-icon-right .ui-btn-inner{padding-right:40px}.ui-btn-icon-top .ui-btn-inner{padding-top:40px}.ui-btn-icon-bottom .ui-btn-inner{padding-bottom:40px}.ui-header .ui-btn-icon-left .ui-btn-inner,.ui-footer .ui-btn-icon-left .ui-btn-inner,.ui-mini .ui-btn-icon-left .ui-btn-inner{padding-left:30px}.ui-header .ui-btn-icon-right .ui-btn-inner,.ui-footer .ui-btn-icon-right .ui-btn-inner,.ui-mini .ui-btn-icon-right .ui-btn-inner{padding-right:30px}.ui-header .ui-btn-icon-top .ui-btn-inner,.ui-footer .ui-btn-icon-top .ui-btn-inner,.ui-mini .ui-btn-icon-top .ui-btn-inner{padding:30px 3px .5em 3px}.ui-header .ui-btn-icon-bottom .ui-btn-inner,.ui-footer .ui-btn-icon-bottom .ui-btn-inner,.ui-mini .ui-btn-icon-bottom .ui-btn-inner{padding:.55em 3px 30px 3px}.ui-btn-icon-notext .ui-icon{display:block;z-index:0}.ui-btn-icon-left .ui-btn-inner .ui-icon,.ui-btn-icon-right .ui-btn-inner .ui-icon{position:absolute;top:50%;margin-top:-9px}.ui-btn-icon-top .ui-btn-inner .ui-icon,.ui-btn-icon-bottom .ui-btn-inner .ui-icon{position:absolute;left:50%;margin-left:-9px}.ui-btn-icon-left .ui-icon{left:10px}.ui-btn-icon-right .ui-icon{right:10px}.ui-btn-icon-top .ui-icon{top:10px}.ui-btn-icon-bottom .ui-icon{top:auto;bottom:10px}.ui-header .ui-btn-icon-left .ui-icon,.ui-footer .ui-btn-icon-left .ui-icon,.ui-mini.ui-btn-icon-left .ui-icon,.ui-mini .ui-btn-icon-left .ui-icon{left:5px}.ui-header .ui-btn-icon-right .ui-icon,.ui-footer .ui-btn-icon-right .ui-icon,.ui-mini.ui-btn-icon-right .ui-icon,.ui-mini .ui-btn-icon-right .ui-icon{right:5px}.ui-header .ui-btn-icon-top .ui-icon,.ui-footer .ui-btn-icon-top .ui-icon,.ui-mini.ui-btn-icon-top .ui-icon,.ui-mini .ui-btn-icon-top .ui-icon{top:5px}.ui-header .ui-btn-icon-bottom .ui-icon,.ui-footer .ui-btn-icon-bottom .ui-icon,.ui-mini.ui-btn-icon-bottom .ui-icon,.ui-mini .ui-btn-icon-bottom .ui-icon{bottom:5px}.ui-btn-hidden{position:absolute;top:0;left:0;width:100%;height:100%;-webkit-appearance:button;opacity:.1;cursor:pointer;background:#fff;background:rgba(255,255,255,0);filter:Alpha(Opacity=.0001);font-size:1px;border:0;text-indent:-9999px}.ui-collapsible{margin:.5em 0}.ui-collapsible-heading{font-size:16px;display:block;margin:0 -8px;padding:0;border-width:0 0 1px 0;position:relative}.ui-collapsible-heading a{text-align:left;margin:0}.ui-collapsible-heading .ui-btn-inner,.ui-collapsible-heading .ui-btn-icon-left .ui-btn-inner{padding-left:40px}.ui-collapsible-heading .ui-btn-icon-right .ui-btn-inner{padding-left:12px;padding-right:40px}.ui-collapsible-heading .ui-btn-icon-top .ui-btn-inner,.ui-collapsible-heading .ui-btn-icon-bottom .ui-btn-inner{padding-right:40px;text-align:center}.ui-collapsible-heading a span.ui-btn{position:absolute;left:6px;top:50%;margin:-12px 0 0 0;width:20px;height:20px;padding:1px 0 1px 2px;text-indent:-9999px}.ui-collapsible-heading a span.ui-btn .ui-btn-inner{padding:10px 0}.ui-collapsible-heading a span.ui-btn .ui-icon{left:0;margin-top:-10px}.ui-collapsible-heading-status{position:absolute;top:-9999px;left:0}.ui-collapsible-content{display:block;margin:0 -8px;padding:10px 16px;border-top:0;background-image:none;font-weight:normal}.ui-collapsible-content-collapsed{display:none}.ui-collapsible-set{margin:.5em 0}.ui-collapsible-set .ui-collapsible{margin:-1px 0 0}.ui-controlgroup,fieldset.ui-controlgroup{padding:0;margin:0 0 .5em;zoom:1}.ui-bar .ui-controlgroup{margin:0 .3em}.ui-controlgroup-label{font-size:16px;line-height:1.4;font-weight:normal;margin:0 0 .4em}.ui-controlgroup-controls{display:block;width:100%}.ui-controlgroup li{list-style:none}.ui-controlgroup-vertical .ui-btn,.ui-controlgroup-vertical .ui-checkbox,.ui-controlgroup-vertical .ui-radio{margin:0;border-bottom-width:0}.ui-controlgroup-controls label.ui-select{position:absolute;left:-9999px}.ui-controlgroup-vertical .ui-controlgroup-last{border-bottom-width:1px}.ui-controlgroup-horizontal{padding:0}.ui-controlgroup-horizontal .ui-btn-inner{text-align:center}.ui-controlgroup-horizontal .ui-btn,.ui-controlgroup-horizontal .ui-select{display:inline-block;margin:0 -6px 0 0}.ui-controlgroup-horizontal .ui-checkbox,.ui-controlgroup-horizontal .ui-radio{float:left;clear:none;margin:0 -1px 0 0}.ui-controlgroup-horizontal .ui-checkbox .ui-btn,.ui-controlgroup-horizontal .ui-radio .ui-btn,.ui-controlgroup-horizontal .ui-checkbox:last-child,.ui-controlgroup-horizontal .ui-radio:last-child{margin-right:0}.ui-controlgroup-horizontal .ui-controlgroup-last{margin-right:0}.ui-controlgroup .ui-checkbox label,.ui-controlgroup .ui-radio label{font-size:16px}@media all and (min-width:450px){.ui-field-contain .ui-controlgroup-label{vertical-align:top;display:inline-block;width:20%;margin:0 2% 0 0}.ui-field-contain .ui-controlgroup-controls{width:60%;display:inline-block}.ui-field-contain .ui-controlgroup .ui-select{width:100%}.ui-field-contain .ui-controlgroup-horizontal .ui-select{width:auto}}.ui-dialog{background:none!important}.ui-dialog-contain{width:92.5%;max-width:500px;margin:10% auto 15px auto;padding:0}.ui-dialog .ui-header{margin-top:15%;border:0;overflow:hidden}.ui-dialog .ui-header,.ui-dialog .ui-content,.ui-dialog .ui-footer{display:block;position:relative;width:auto}.ui-dialog .ui-header,.ui-dialog .ui-footer{z-index:10;padding:0}.ui-dialog .ui-footer{padding:0 15px}.ui-dialog .ui-content{padding:15px}.ui-dialog{margin-top:-15px}.ui-checkbox,.ui-radio{position:relative;clear:both;margin:.2em 0 .5em;z-index:1}.ui-checkbox .ui-btn,.ui-radio .ui-btn{margin:0;text-align:left;z-index:2}.ui-checkbox .ui-btn-inner,.ui-radio .ui-btn-inner{white-space:normal}.ui-checkbox .ui-btn-icon-left .ui-btn-inner,.ui-radio .ui-btn-icon-left .ui-btn-inner{padding-left:45px}.ui-checkbox .ui-mini.ui-btn-icon-left .ui-btn-inner,.ui-radio .ui-mini.ui-btn-icon-left .ui-btn-inner{padding-left:36px}.ui-checkbox .ui-btn-icon-right .ui-btn-inner,.ui-radio .ui-btn-icon-right .ui-btn-inner{padding-right:45px}.ui-checkbox .ui-mini.ui-btn-icon-right .ui-btn-inner,.ui-radio .ui-mini.ui-btn-icon-right .ui-btn-inner{padding-right:36px}.ui-checkbox .ui-btn-icon-top .ui-btn-inner,.ui-radio .ui-btn-icon-top .ui-btn-inner{padding-right:0;padding-left:0;text-align:center}.ui-checkbox .ui-btn-icon-bottom .ui-btn-inner,.ui-radio .ui-btn-icon-bottom .ui-btn-inner{padding-right:0;padding-left:0;text-align:center}.ui-checkbox .ui-icon,.ui-radio .ui-icon{top:1.1em}.ui-checkbox .ui-btn-icon-left .ui-icon,.ui-radio .ui-btn-icon-left .ui-icon{left:15px}.ui-checkbox .ui-mini.ui-btn-icon-left .ui-icon,.ui-radio .ui-mini.ui-btn-icon-left .ui-icon{left:9px}.ui-checkbox .ui-btn-icon-right .ui-icon,.ui-radio .ui-btn-icon-right .ui-icon{right:15px}.ui-checkbox .ui-mini.ui-btn-icon-right .ui-icon,.ui-radio .ui-mini.ui-btn-icon-right .ui-icon{right:9px}.ui-checkbox .ui-btn-icon-top .ui-icon,.ui-radio .ui-btn-icon-top .ui-icon{top:10px}.ui-checkbox .ui-btn-icon-bottom .ui-icon,.ui-radio .ui-btn-icon-bottom .ui-icon{top:auto;bottom:10px}.ui-checkbox .ui-btn-icon-right .ui-icon,.ui-radio .ui-btn-icon-right .ui-icon{right:15px}.ui-checkbox .ui-mini.ui-btn-icon-right .ui-icon,.ui-radio .ui-mini.ui-btn-icon-right .ui-icon{right:9px}.ui-checkbox input,.ui-radio input{position:absolute;left:20px;top:50%;width:10px;height:10px;margin:-5px 0 0 0;outline:0!important;z-index:1}.ui-field-contain,fieldset.ui-field-contain{padding:.8em 0;margin:0;border-width:0 0 1px 0;overflow:visible}.ui-field-contain:first-child{border-top-width:0}.ui-header .ui-field-contain-left,.ui-header .ui-field-contain-right{position:absolute;top:0;width:25%}.ui-header .ui-field-contain-left{left:1em}.ui-header .ui-field-contain-right{right:1em}@media all and (min-width:450px){.ui-field-contain,.ui-mobile fieldset.ui-field-contain{border-width:0;padding:0;margin:1em 0}}.ui-select{display:block;position:relative}.ui-select select{position:absolute;left:-9999px;top:-9999px}.ui-select .ui-btn{overflow:hidden;opacity:1;margin:0}.ui-select .ui-btn select{cursor:pointer;-webkit-appearance:button;left:0;top:0;width:100%;min-height:1.5em;min-height:100%;height:3em;max-height:100%;opacity:0;-ms-filter:"alpha(opacity=0)";filter:alpha(opacity=0);z-index:2}.ui-select .ui-disabled{opacity:.3}@-moz-document url-prefix(){.ui-select .ui-btn select{opacity:.0001}}.ui-select .ui-btn select.ui-select-nativeonly{opacity:1;text-indent:0}.ui-select .ui-btn-icon-right .ui-btn-inner{padding-right:45px}.ui-select .ui-btn-icon-right .ui-icon{right:15px}.ui-select .ui-mini.ui-btn-icon-right .ui-icon{right:7px}label.ui-select{font-size:16px;line-height:1.4;font-weight:normal;margin:0 0 .3em;display:block}.ui-select .ui-btn-text,.ui-selectmenu .ui-btn-text{display:block;min-height:1em;overflow:hidden!important}.ui-select .ui-btn-text{text-overflow:ellipsis}.ui-selectmenu{position:absolute;padding:0;z-index:1100!important;width:80%;max-width:350px;padding:6px}.ui-selectmenu .ui-listview{margin:0}.ui-selectmenu .ui-btn.ui-li-divider{cursor:default}.ui-selectmenu-hidden{top:-9999px;left:-9999px}.ui-selectmenu-screen{position:absolute;top:0;left:0;width:100%;height:100%;z-index:99}.ui-screen-hidden,.ui-selectmenu-list .ui-li .ui-icon{display:none}.ui-selectmenu-list .ui-li .ui-icon{display:block}.ui-li.ui-selectmenu-placeholder{display:none}.ui-selectmenu .ui-header .ui-title{margin:.6em 46px .8em}@media all and (min-width:450px){.ui-field-contain label.ui-select{vertical-align:top;display:inline-block;width:20%;margin:0 2% 0 0}.ui-field-contain .ui-select{width:60%;display:inline-block}}.ui-selectmenu .ui-header h1:after{content:'.';visibility:hidden}label.ui-input-text{font-size:16px;line-height:1.4;display:block;font-weight:normal;margin:0 0 .3em}input.ui-input-text,textarea.ui-input-text{background-image:none;padding:.4em;line-height:1.4;font-size:16px;display:block;width:97%;outline:0}.ui-header input.ui-input-text,.ui-footer input.ui-input-text{margin-left:1.25%;padding:.4em 1%;width:95.5%}input.ui-input-text{-webkit-appearance:none}textarea.ui-input-text{height:50px;-webkit-transition:height 200ms linear;-moz-transition:height 200ms linear;-o-transition:height 200ms linear;transition:height 200ms linear}.ui-input-search{padding:0 30px;background-image:none;position:relative}.ui-icon-searchfield:after{position:absolute;left:7px;top:50%;margin-top:-9px;content:"";width:18px;height:18px;opacity:.5}.ui-input-search input.ui-input-text{border:0;width:98%;padding:.4em 0;margin:0;display:block;background:transparent none;outline:0!important}.ui-input-search .ui-input-clear{position:absolute;right:0;top:50%;margin-top:-13px}.ui-mini .ui-input-clear{right:-3px}.ui-input-search .ui-input-clear-hidden{display:none}input.ui-mini,.ui-mini input,textarea.ui-mini{font-size:14px}textarea.ui-mini{height:45px}@media all and (min-width:450px){.ui-field-contain label.ui-input-text{vertical-align:top;display:inline-block;width:20%;margin:0 2% 0 0}.ui-field-contain input.ui-input-text,.ui-field-contain textarea.ui-input-text,.ui-field-contain .ui-input-search{width:60%;display:inline-block}.ui-field-contain .ui-input-search{width:50%}.ui-hide-label input.ui-input-text,.ui-hide-label textarea.ui-input-text,.ui-hide-label .ui-input-search{padding:.4em;width:97%}.ui-input-search input.ui-input-text{width:98%}}.ui-listview{margin:0;counter-reset:listnumbering}.ui-content .ui-listview{margin:-15px}.ui-content .ui-listview-inset{margin:1em 0}.ui-listview,.ui-li{list-style:none;padding:0}.ui-li,.ui-li.ui-field-contain{display:block;margin:0;position:relative;overflow:visible;text-align:left;border-width:0;border-top-width:1px}.ui-li .ui-btn-text a.ui-link-inherit{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.ui-li-divider,.ui-li-static{padding:.5em 15px;font-size:14px;font-weight:bold}.ui-li-divider{counter-reset:listnumbering}ol.ui-listview .ui-link-inherit:before,ol.ui-listview .ui-li-static:before,.ui-li-dec{font-size:.8em;display:inline-block;padding-right:.3em;font-weight:normal;counter-increment:listnumbering;content:counter(listnumbering) ". "}ol.ui-listview .ui-li-jsnumbering:before{content:""!important}.ui-listview-inset .ui-li{border-right-width:1px;border-left-width:1px}.ui-li:last-child,.ui-li.ui-field-contain:last-child{border-bottom-width:1px}.ui-li>.ui-btn-inner{display:block;position:relative;padding:0}.ui-li .ui-btn-inner a.ui-link-inherit,.ui-li-static.ui-li{padding:.7em 15px .7em 15px;display:block}.ui-li-has-thumb .ui-btn-inner a.ui-link-inherit,.ui-li-static.ui-li-has-thumb{min-height:60px;padding-left:100px}.ui-li-has-icon .ui-btn-inner a.ui-link-inherit,.ui-li-static.ui-li-has-icon{min-height:20px;padding-left:40px}.ui-li-has-count .ui-btn-inner a.ui-link-inherit,.ui-li-static.ui-li-has-count{padding-right:45px}.ui-li-has-arrow .ui-btn-inner a.ui-link-inherit,.ui-li-static.ui-li-has-arrow{padding-right:30px}.ui-li-has-arrow.ui-li-has-count .ui-btn-inner a.ui-link-inherit,.ui-li-static.ui-li-has-arrow.ui-li-has-count{padding-right:75px}.ui-li-has-count .ui-btn-text{padding-right:15px}.ui-li-heading{font-size:16px;font-weight:bold;display:block;margin:.6em 0;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.ui-li-desc{font-size:12px;font-weight:normal;display:block;margin:-.5em 0 .6em;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.ui-li-thumb,.ui-listview .ui-li-icon{position:absolute;left:1px;top:0;max-height:80px;max-width:80px}.ui-listview .ui-li-icon{max-height:40px;max-width:40px;left:10px;top:.9em}.ui-li-thumb,.ui-listview .ui-li-icon,.ui-li-content{float:left;margin-right:10px}.ui-li-aside{float:right;width:50%;text-align:right;margin:.3em 0}@media all and (min-width:480px){.ui-li-aside{width:45%}}.ui-li-divider{cursor:default}.ui-li-has-alt .ui-btn-inner a.ui-link-inherit,.ui-li-static.ui-li-has-alt{padding-right:95px}.ui-li-has-count .ui-li-count{position:absolute;font-size:11px;font-weight:bold;padding:.2em .5em;top:50%;margin-top:-.9em;right:48px}.ui-li-divider .ui-li-count,.ui-li-static .ui-li-count{right:10px}.ui-li-has-alt .ui-li-count{right:55px}.ui-li-link-alt{position:absolute;width:40px;height:100%;border-width:0;border-left-width:1px;top:0;right:0;margin:0;padding:0;z-index:2}.ui-li-link-alt .ui-btn{overflow:hidden;position:absolute;right:8px;top:50%;margin:-11px 0 0 0;border-bottom-width:1px;z-index:-1}.ui-li-link-alt .ui-btn-inner{padding:0;height:100%;position:absolute;width:100%;top:0;left:0}.ui-li-link-alt .ui-btn .ui-icon{right:50%;margin-right:-9px}.ui-listview * .ui-btn-inner>.ui-btn>.ui-btn-inner{border-top:0}.ui-listview-filter{border-width:0;overflow:hidden;margin:-15px -15px 15px -15px}.ui-listview-filter .ui-input-search{margin:5px;width:auto;display:block}.ui-listview-filter-inset{margin:-15px -5px -15px -5px;background:transparent}.ui-li.ui-screen-hidden{display:none}@media only screen and (min-device-width:768px) and (max-device-width:1024px){.ui-li .ui-btn-text{overflow:visible}}label.ui-slider{font-size:16px;line-height:1.4;font-weight:normal;margin:0 0 .3em;display:block}input.ui-slider-input,.ui-field-contain input.ui-slider-input{display:inline-block;width:50px}select.ui-slider-switch{display:none}div.ui-slider{position:relative;display:inline-block;overflow:visible;height:15px;padding:0;margin:0 2% 0 20px;top:4px;width:65%}div.ui-slider-mini{height:12px;margin-left:10px}div.ui-slider-bg{border:0;height:100%;padding-right:8px}.ui-controlgroup a.ui-slider-handle,a.ui-slider-handle{position:absolute;z-index:1;top:50%;width:28px;height:28px;margin-top:-15px;margin-left:-15px;outline:0}a.ui-slider-handle .ui-btn-inner{padding:0;height:100%}div.ui-slider-mini a.ui-slider-handle{height:14px;width:14px;margin:-8px 0 0 -7px}div.ui-slider-mini a.ui-slider-handle .ui-btn-inner{height:30px;width:30px;padding:0;margin:-9px 0 0 -9px}@media all and (min-width:450px){.ui-field-contain label.ui-slider{vertical-align:top;display:inline-block;width:20%;margin:0 2% 0 0}.ui-field-contain div.ui-slider{width:43%}.ui-field-contain div.ui-slider-switch{width:5.5em}}div.ui-slider-switch{height:32px;margin-left:0;width:5.8em}a.ui-slider-handle-snapping{-webkit-transition:left 70ms linear;-moz-transition:left 70ms linear}div.ui-slider-switch .ui-slider-handle{margin-top:1px}.ui-slider-inneroffset{margin:0 16px;position:relative;z-index:1}div.ui-slider-switch.ui-slider-mini{width:5em;height:29px}div.ui-slider-switch.ui-slider-mini .ui-slider-inneroffset{margin:0 15px 0 14px}div.ui-slider-switch.ui-slider-mini .ui-slider-handle{width:25px;height:25px;margin:1px 0 0 -13px}div.ui-slider-switch.ui-slider-mini a.ui-slider-handle .ui-btn-inner{height:30px;width:30px;padding:0;margin:0}span.ui-slider-label{position:absolute;text-align:center;width:100%;overflow:hidden;font-size:16px;top:0;line-height:2;min-height:100%;border-width:0;white-space:nowrap}.ui-slider-mini span.ui-slider-label{font-size:14px}span.ui-slider-label-a{z-index:1;left:0;text-indent:-1.5em}span.ui-slider-label-b{z-index:0;right:0;text-indent:1.5em}.ui-slider-inline{width:120px;display:inline-block} \ No newline at end of file diff --git a/big_demo/css/panojs.css b/big_demo/css/panojs.css new file mode 100644 index 0000000..3ce2be5 --- /dev/null +++ b/big_demo/css/panojs.css @@ -0,0 +1,167 @@ +/******************************************************************************* + viewer +*******************************************************************************/ + +.viewer { + position: relative; + top: 0; + left: 0; + /* background-color: #434343; */ + overflow: hidden; + + /* NOTE: the size and width should be set dynamically when initialized */ + width: 0; + height: 0; +} + +.viewer img { + margin: 0px; + float: none; +} + +.viewer .well, .viewer .surface { + margin: 0; + padding: 0; + width: 100%; + height: 100%; + position: absolute; + top: 0px; + left: 0px; + /* FIXME: let's apply this in GSV.js */ + cursor: grab; + cursor: -moz-grab; + _cursor: url(../i/panojs/grab.cur); +} + +.viewer .surface { + z-index: 20; + /*background: url(../gfx/center.gif) no-repeat center center;*/ + _background: url(../i/panojs/blank.gif) no-repeat center center; /* NOTE: required for IE to"see" the surface */ +} + +.viewer .well { + overflow: hidden; + z-index: 10; +} + +.viewer .well .tile { + border: 0; + margin: 0; + padding: 0; + position: absolute; + top: 0px; + left: 0px; + display: block; +} + +/******************************************************************************* + thumbnail +*******************************************************************************/ + +.viewer .thumbnail { + position: absolute; + right: 4px; + bottom: 4px; + width: 130px; + height: 130px; + margin: 0; + font-size: 12px; + line-height: 20px; + vertical-align: middle; + font-weight: bold; + + overflow: hidden; + z-index: 30; + + border: 4px solid #000000; + border-radius: 5px; + -moz-border-radius: 5px; + + opacity:0.8; + filter:alpha(opacity=80); +} + +.viewer .thumbnail img { + position: absolute; + top: 0px; + left: 0px; + z-index: 30; + overflow: hidden; +} + +.viewer .thumbnail_scale { + position: absolute; + bottom: -2px; + left: 5px; + margin: 0; + padding: 0px; + z-index: 45; + color: #FFFFFF; +} + +.viewer .thumbnail_roi { + position: absolute; + top: 0px; + left: 0px; + width: 50px; + height: 50px; + margin: 0; + padding: 0px; + border: 2px solid #FF0000; + z-index: 40; +} + +.viewer .thumbnail_roi_preview { + position: absolute; + top: 0px; + left: 0px; + width: 50px; + height: 50px; + margin: 0; + padding: 0px; + border: 2px solid #FFFF00; + z-index: 39; +} + +.viewer .thumbnail_surface { + position: absolute; + top: 0px; + left: 0px; + z-index: 50; + width: 100%; + height: 100%; +} + +/******************************************************************************* + info +*******************************************************************************/ + +.viewer .info { + position: absolute; + z-index: 25; + width: 100%; + text-align: center; + left: 0px; + padding: 5px; + bottom: 0px; + color: #FFFFFF; + text-shadow: 1px 1px 1px #000000; + font-size: 12px; + text-overflow: ellipsis; +} + +.viewer .osd { + position: absolute; + z-index: 15; + width: 100%; + height: 100%; + text-align: center; + top: 0px; + left: 0px; + padding-top: 25px; + color: #FFFFFF; + text-shadow: 1px 1px 1px #000000; + font-size: 12px; + text-overflow: ellipsis; +} + diff --git a/big_demo/css/style.css b/big_demo/css/style.css new file mode 100644 index 0000000..e81e5db --- /dev/null +++ b/big_demo/css/style.css @@ -0,0 +1,732 @@ +html,body { + height:768px; + width: 1024px; + font-family: helvetica; +} +/* +body { +-webkit-text-size-adjust: none; +-webkit-tap-highlight-color: rgba(0,0,0,0); +-webkit-touch-callout: none; +-webkit-user-select: none; +} +a, a:hover, input, textarea { +-webkit-tap-highlight-color: rgba(0,0,0,0); +-webkit-touch-callout: none; +-webkit-user-select: none; +} +*/ +input +{ + height: 25px; + font-size: 24px; +} +.nobrd +{ +border: none; +} +.h100 +{ +height:768px; +} +.w1024 +{ + width: 1024px; +} +.fr +{ +float: right; +} +.fl +{ +float: left; +} +.w40 +{ +width: 40%; +} +.w50 +{ +width: 50%; +} +.hide +{ +display: none; +} +body,ul,li,header,nav,aside,section,article,p { + padding:0; + margin:0; + border:0; +} + +body { + font-size:12px; + -webkit-user-select:none; + -webkit-text-size-adjust:none; + background:#424242; + color: #FFF; +} + +p { + margin-bottom:1.5em; + line-height:150%; +} +nav, article { +position: absolute; +top: 44px; +bottom: 0; +left: 0; +right: 0; +font-size: 15px; +background: white; +} + +header,nav,aside,section,article { + +} + +#page { + height:768px; + width: 1024px; + /* + width:1024px; + height:768px; + */ + + position:relative; + display:-webkit-box; + display:-moz-box; + display:-o-box; + display:box; + + -webkit-box-orient:horizontal; + -moz-box-orient:horizontal; + -o-box-orient:horizontal; + box-orient:horizontal; + + background:#424242; +} +.leftround5 +{ +-webkit-border-top-left-radius: 5px; +-webkit-border-bottom-left-radius: 5px; +-moz-border-radius-topleft: 5px; +-moz-border-radius-bottomleft: 5px; +border-top-left-radius: 5px; +border-bottom-left-radius: 5px; +} +.rightround5 +{ +-webkit-border-top-right-radius: 5px; +-webkit-border-bottom-right-radius: 5px; +-moz-border-radius-topright: 5px; +-moz-border-radius-bottomright: 5px; +border-top-right-radius: 5px; +border-bottom-right-radius: 5px; +} +.topround5 +{ +-webkit-border-top-left-radius: 5px; +-webkit-border-top-right-radius: 5px; +-moz-border-radius-topleft: 5px; +-moz-border-radius-topright: 5px; +border-top-left-radius: 5px; +border-top-right-radius: 5px; +} +.bottomround5 +{ +-webkit-border-bottom-right-radius: 5px; +-webkit-border-bottom-left-radius: 5px; +-moz-border-radius-bottomright: 5px; +-moz-border-radius-bottomleft: 5px; +border-bottom-right-radius: 5px; +border-bottom-left-radius: 5px; +} +.grey_gr +{ +background: #ebebeb; /* Old browsers */ +/* IE9 SVG, needs conditional override of 'filter' to 'none' */ +background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ViZWJlYiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjIlIiBzdG9wLWNvbG9yPSIjZmJmYmZiIiBzdG9wLW9wYWNpdHk9IjEiLz4KICAgIDxzdG9wIG9mZnNldD0iOCUiIHN0b3AtY29sb3I9IiNmYmZiZmIiIHN0b3Atb3BhY2l0eT0iMSIvPgogICAgPHN0b3Agb2Zmc2V0PSIzMSUiIHN0b3AtY29sb3I9IiNlZmVmZWYiIHN0b3Atb3BhY2l0eT0iMSIvPgogICAgPHN0b3Agb2Zmc2V0PSI2OSUiIHN0b3AtY29sb3I9IiNkMmQyZDIiIHN0b3Atb3BhY2l0eT0iMSIvPgogICAgPHN0b3Agb2Zmc2V0PSI4MSUiIHN0b3AtY29sb3I9IiNjZGNkY2QiIHN0b3Atb3BhY2l0eT0iMSIvPgogICAgPHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjY2FjYWNhIiBzdG9wLW9wYWNpdHk9IjEiLz4KICA8L2xpbmVhckdyYWRpZW50PgogIDxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIGZpbGw9InVybCgjZ3JhZC11Y2dnLWdlbmVyYXRlZCkiIC8+Cjwvc3ZnPg==); +background: -moz-linear-gradient(top, #ebebeb 0%, #fbfbfb 2%, #fbfbfb 8%, #efefef 31%, #d2d2d2 69%, #cdcdcd 81%, #cacaca 100%); /* FF3.6+ */ +background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ebebeb), color-stop(2%,#fbfbfb), color-stop(8%,#fbfbfb), color-stop(31%,#efefef), color-stop(69%,#d2d2d2), color-stop(81%,#cdcdcd), color-stop(100%,#cacaca)); /* Chrome,Safari4+ */ +background: -webkit-linear-gradient(top, #ebebeb 0%,#fbfbfb 2%,#fbfbfb 8%,#efefef 31%,#d2d2d2 69%,#cdcdcd 81%,#cacaca 100%); /* Chrome10+,Safari5.1+ */ +background: -o-linear-gradient(top, #ebebeb 0%,#fbfbfb 2%,#fbfbfb 8%,#efefef 31%,#d2d2d2 69%,#cdcdcd 81%,#cacaca 100%); /* Opera 11.10+ */ +background: -ms-linear-gradient(top, #ebebeb 0%,#fbfbfb 2%,#fbfbfb 8%,#efefef 31%,#d2d2d2 69%,#cdcdcd 81%,#cacaca 100%); /* IE10+ */ +background: linear-gradient(top, #ebebeb 0%,#fbfbfb 2%,#fbfbfb 8%,#efefef 31%,#d2d2d2 69%,#cdcdcd 81%,#cacaca 100%); /* W3C */ +filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ebebeb', endColorstr='#cacaca',GradientType=0 ); /* IE6-8 */ +} +.m10 +{ +margin: 10px; +} +.p10 +{ +padding: 10px; +} +.p20 +{ +padding: 20px; +} + +.white2red +{ +background: #ffffff; /* Old browsers */ +/* IE9 SVG, needs conditional override of 'filter' to 'none' */ +background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjM0JSIgc3RvcC1jb2xvcj0iI2NmMDQwNCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgPC9saW5lYXJHcmFkaWVudD4KICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2dyYWQtdWNnZy1nZW5lcmF0ZWQpIiAvPgo8L3N2Zz4=); +background: -moz-linear-gradient(top, #ffffff 0%, #cf0404 34%); /* FF3.6+ */ +background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(34%,#cf0404)); /* Chrome,Safari4+ */ +background: -webkit-linear-gradient(top, #ffffff 0%,#cf0404 34%); /* Chrome10+,Safari5.1+ */ +background: -o-linear-gradient(top, #ffffff 0%,#cf0404 34%); /* Opera 11.10+ */ +background: -ms-linear-gradient(top, #ffffff 0%,#cf0404 34%); /* IE10+ */ +background: linear-gradient(top, #ffffff 0%,#cf0404 34%); /* W3C */ +filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#cf0404',GradientType=0 ); /* IE6-8 */ +} +#content { + -webkit-box-flex:1; + -moz-box-flex:1; + -o-box-flex:1; + box-flex:1; +} + +#sidebar,#content { + position:relative; + height:100%; +} + +header { + height:43px; + line-height:43px; + border-bottom:1px solid #838a9a; + background-color:#424242; + background-image:-webkit-gradient(linear, 0 0, 0 100, from(#f4f5f7), to(#999da9)); + background-image:-moz-linear-gradient(top, #f4f5f7, #999da9); + background-image:-o-linear-gradient(top, #f4f5f7, #999da9); + + color:#FFF; + font-size:16px; font-weight:bold; + text-align:center; + text-shadow:0 1px 0 #303030; + -webkit-border-top-left-radius:4px; + -moz-border-top-left-radius:4px; + -o-border-top-left-radius:4px; + border-top-left-radius:4px; + + -webkit-border-top-right-radius:4px; + -moz-border-top-right-radius:4px; + -o-border-top-right-radius:4px; + border-top-right-radius:4px; +} + + +#contentScroller +{ +position: absolute; +z-index: 1; +} +.contentBg +{ + min-height: 604px; + height: 604px; +} +.darkgreybg +{ + background-color: #3c3c3c; +} +.darkredbg +{ + background-color: #701202; +} +.whitedashedbg +{ +background-image: url('../i/menubg.png'); +color: #000; +} +.whitebg +{ +background-color: #FFF; +color: #000; +} +.header_gradient +{ +background: #4c4c4c; /* Old browsers */ +background: -moz-linear-gradient(top, #4c4c4c 0%, #595959 12%, #666666 25%, #474747 39%, #2c2c2c 50%, #000000 51%, #111111 60%, #2b2b2b 76%, #1c1c1c 91%, #131313 100%); /* FF3.6+ */ +background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#4c4c4c), color-stop(12%,#595959), color-stop(25%,#666666), color-stop(39%,#474747), color-stop(50%,#2c2c2c), color-stop(51%,#000000), color-stop(60%,#111111), color-stop(76%,#2b2b2b), color-stop(91%,#1c1c1c), color-stop(100%,#131313)); /* Chrome,Safari4+ */ +background: -webkit-linear-gradient(top, #4c4c4c 0%,#595959 12%,#666666 25%,#474747 39%,#2c2c2c 50%,#000000 51%,#111111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%); /* Chrome10+,Safari5.1+ */ +background: -o-linear-gradient(top, #4c4c4c 0%,#595959 12%,#666666 25%,#474747 39%,#2c2c2c 50%,#000000 51%,#111111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%); /* Opera 11.10+ */ +background: -ms-linear-gradient(top, #4c4c4c 0%,#595959 12%,#666666 25%,#474747 39%,#2c2c2c 50%,#000000 51%,#111111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%); /* IE10+ */ +background: linear-gradient(top, #4c4c4c 0%,#595959 12%,#666666 25%,#474747 39%,#2c2c2c 50%,#000000 51%,#111111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%); /* W3C */ +filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4c4c4c', endColorstr='#131313',GradientType=0 ); /* IE6-9 */ +} +.first_header +{ +width: 1024px; +} + +.centerlight +{ + height:724px; + width: 1024px; +} +.loginpage_input +{ + width: 305px; + height: 43px; + background-image: url('../i/loginpage_input.png'); +background-position: center center; +background-repeat: no-repeat; +clear: both; +margin: 0; +display: block; +} +.inputstat +{ +float: right; +margin-top: -40px; +width: 29px; +height: 29px; +display: block; +clear: both; +} +.field_ok +{ + background-image: url('../i/field_ok.png'); + background-position: center center; + background-repeat: no-repeat; +} +.field_err +{ + background-image: url('../i/field_err.png'); + background-position: center center; + background-repeat: no-repeat; +} +.page_input input +{ +width: 270px; +height: 22px; +margin-top: 2px; +margin-left: 5px; +border: none; +font-size: 30px; +} +/* BackBUTTON */ +.backbutton +{ +cursor: pointer; +position: absolute; +margin: 6px 0 0 12px; +height: 26px; +width: 50px; +border: 1px solid rgba(0, 0, 0, 0.4); +border-left: none; +-webkit-border-radius: 5px; +/* background: -webkit-gradient(linear, left top, left bottom, from(#9FB3CC), to(#5B80AB), color-stop(0.5, #6B8BB2), color-stop(0.51, #597EAA)); +background: -webkit-linear-gradient(top, #4c4c4c 0%,#595959 12%,#666666 25%,#474747 39%,#2c2c2c 50%,#000000 51%,#111111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);*/ +-webkit-box-shadow: 0 1px 0 rgba(255,255,255, 0.25), inset 0 1px 1px rgba(0,0,0, 0.2); + +} +.backbutton div { +position: absolute; +z-index: 1; +top: 4px; +left: -7px; +-webkit-transform: rotate(51deg); +} +.backbutton span { +-webkit-transform: skew(15deg); +display: block; +width: 15px; +height: 16px; +/* background: -webkit-gradient(linear, left top, right bottom, from(#9FB3CC), to(#5B80AB), color-stop(0.5, #6B8BB2), color-stop(0.51, #597EAA)); +background: -webkit-gradient(linear, left top, right bottom, from(#4c4c4c), to(#5B80AB), color-stop(0.5, #6B8BB2), color-stop(0.51, #131313)); +background: -webkit-linear-gradient(top, #4c4c4c 0%,#595959 12%,#666666 25%,#474747 39%,#2c2c2c 50%,#000000 51%,#111111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%); +*/ +-webkit-border-radius: 1px; +border: 1px solid rgba(0, 0, 0, 0.4); +border-right: 0; +border-top: 0; +-webkit-box-shadow: 0 1px 0 rgba(255,255,255, 0.25); +} +.backbutton p { +position: absolute; +z-index: 2; +top: 5px; +left: 5px; +margin: 0; +padding: 0; +font-size: 12px; +font-weight: bold; +color: white; +text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.4); +} +/* /BackBUTTON */ +/* DoneBUTTON */ +.donebutton +{ +cursor: pointer; +position: absolute; +margin: 6px 0 0 547px; +height: 26px; +width: 50px; +border: 1px solid rgba(0, 0, 0, 0.4); +-webkit-border-radius: 5px; +/* background: -webkit-gradient(linear, left top, left bottom, from(#9FB3CC), to(#5B80AB), color-stop(0.5, #6B8BB2), color-stop(0.51, #597EAA)); +background: -webkit-linear-gradient(top, #4c4c4c 0%,#595959 12%,#666666 25%,#474747 39%,#2c2c2c 50%,#000000 51%,#111111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);*/ +-webkit-box-shadow: 0 1px 0 rgba(255,255,255, 0.25), inset 0 1px 1px rgba(0,0,0, 0.2); + +} +.donebutton div { +position: absolute; +z-index: 1; +top: 4px; +left: -7px; +-webkit-transform: rotate(51deg); +} +.donebutton span { +-webkit-transform: skew(15deg); +display: block; +width: 15px; +height: 16px; +-webkit-border-radius: 1px; +border: 1px solid rgba(0, 0, 0, 0.4); +border-right: 0; +border-top: 0; +-webkit-box-shadow: 0 1px 0 rgba(255,255,255, 0.25); +} +.donebutton p { +position: absolute; +z-index: 2; +top: 5px; +left: 5px; +margin: 0; +padding: 0; +font-size: 12px; +font-weight: bold; +color: white; +text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.4); +} +/* /DoneBUTTON */ +#sidebar { + width:419px; + margin-right:1px; +} + + +#navScroller > li { + padding:0 10px; + border-bottom:1px solid #ccc; + height:40px; line-height:40px; + +} +.grey_text +{ +color: #404040; +} +.navBg +{ + height: 684px; + background-image: url('../i/menubg.png'); +} +.buttns +{ +height: 75px; +} +.sprosbutt +{ +position:relative; +cursor: pointer; +width: 137px; +height: 35px; +border: 1px solid #b72402; +float: left; +margin-top: 10px; +margin-right: 0px; +text-align: center; +font-size: 15px; +color: white; +padding: 20px 0 0 0px; +text-shadow: 1px 1px 1px rgba(0, 0, 0, 1); + +background: #550600; /* Old browsers */ +/* IE9 SVG, needs conditional override of 'filter' to 'none' */ +background: -moz-linear-gradient(top, #550600 0%, #620500 2%, #7e1800 6%, #9e2200 17%, #ac2600 25%, #b22800 33%, #b32b00 50%, #b73400 52%, #bd3f00 63%, #d06000 90%, #d16204 92%, #d46904 100%); /* FF3.6+ */ +background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#550600), color-stop(2%,#620500), color-stop(6%,#7e1800), color-stop(17%,#9e2200), color-stop(25%,#ac2600), color-stop(33%,#b22800), color-stop(50%,#b32b00), color-stop(52%,#b73400), color-stop(63%,#bd3f00), color-stop(90%,#d06000), color-stop(92%,#d16204), color-stop(100%,#d46904)); /* Chrome,Safari4+ */ +background: -webkit-linear-gradient(top, #550600 0%,#620500 2%,#7e1800 6%,#9e2200 17%,#ac2600 25%,#b22800 33%,#b32b00 50%,#b73400 52%,#bd3f00 63%,#d06000 90%,#d16204 92%,#d46904 100%); /* Chrome10+,Safari5.1+ */ +background: -o-linear-gradient(top, #550600 0%,#620500 2%,#7e1800 6%,#9e2200 17%,#ac2600 25%,#b22800 33%,#b32b00 50%,#b73400 52%,#bd3f00 63%,#d06000 90%,#d16204 92%,#d46904 100%); /* Opera 11.10+ */ +background: -ms-linear-gradient(top, #550600 0%,#620500 2%,#7e1800 6%,#9e2200 17%,#ac2600 25%,#b22800 33%,#b32b00 50%,#b73400 52%,#bd3f00 63%,#d06000 90%,#d16204 92%,#d46904 100%); /* IE10+ */ +background: linear-gradient(top, #550600 0%,#620500 2%,#7e1800 6%,#9e2200 17%,#ac2600 25%,#b22800 33%,#b32b00 50%,#b73400 52%,#bd3f00 63%,#d06000 90%,#d16204 92%,#d46904 100%); /* W3C */ +filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#550600', endColorstr='#d46904',GradientType=0 ); /* IE6-8 */ + +} +.sprosbutt .counter +{ +position: absolute; +right: 10px; +top: -10px; +border: 2px solid #FFF; +padding: 1px; +text-align: center; +font-size: 12px; +text-shadow: none; +font-weight: bold; +} +.spros_item +{ + width: 70%; + height: 30px; + + float: left; + padding-left: 40px; + padding-top: 5px; + background-position: top left; + background-repeat: no-repeat; + +} +.spos_item_down +{ + background-image: url('../i/spros_item_down.png'); +} +.predbutt +{ +position:relative; +cursor: pointer; +width: 137px; +height: 35px; +border: 1px solid #C0C0C0; +float: left; +margin: 10px; +margin-right: 0px; +margin-left: 0px; +text-align: center; +font-size: 15px; +color: #FFF; +padding: 20px 0 0 0px; +text-shadow: 1px 1px 1px rgba(0, 0, 0, 1); +} +.predbutt .counter +{ +position: absolute; +right: -10px; +top: -10px; +border: 2px solid #FFF; +padding: 1px; +text-align: center; +font-size: 12px; +text-shadow: none; +font-weight: bold; +} + +.zavodbutt +{ +cursor: pointer; +width: 45px; +height: 45px; +border: 1px solid #C0C0C0; +margin: 10px; +margin-left: 0px; +float: left; +margin-left: 23px; +padding-top: 10px; +padding-left: 10px; +padding-bottom: 0px; +padding-right: 0px; +} +.list +{ +} +.list ul +{ +list-style-type: none; +} +.list ul li +{ +height: 20px; +padding: 20px; +color: #ce4400; +font-weight: bold; +} +.list .itemcnt +{ + height: 20px; + background: #c00105; + margin-right: 5px; + float: right; + color: #FFF; + margin-top: -5px; + padding: 5px; + font-size: 16px; + font-weight: bold; + color: #FFF; + /* text-shadow: 1px 1px 1px rgba(0, 0, 0, 1); */ +} +.list .subitem +{ +height: 30px; +padding: 20px; +color: #ce4400; +font-weight: bold; +background-color: #ffffff; +border-bottom: 1px solid #C0C0C0; +} +.list .add +{ + width: 37px; + height: 37px; + margin-top: -7px; + margin-right: 10px; + float: left; + background-image: url('../i/add.png'); +} +.w100 +{ +width: 100%; +} +.clear +{ +clear: none; +} +.big_comp_img +{ +width:100%; +} +#viewer +{ +width: 1024px; +height: 604px; +z-index: 10; +} +.viewer_overlay +{ + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 20; + /* border: 1px dashed red; */ +} +.viewer_overlay_cnv +{ +position: absolute; +top: 0; +left: 0; +z-index: 30; +} +.viewer_overlay_ch +{ +position: absolute; +top: 0; +left: 0; +z-index: 40; +} +.well +{ +z-index:20; +} +.opacity50{ +filter:progid:DXImageTransform.Microsoft.Alpha(opacity=50); +-moz-opacity:.5; +-khtml-opacity:.5; +-webkit-opacity:0.5; +opacity:.5; +} +/* ========================= footer_toolbar ================================= */ +.footer_toolbar +{ +position: absolute; +top: 648px; +left: 0; +width: 1004px; +height: 100px; +padding: 10px; +margin: 0px; +} +.footer_toolbar .button +{ +width: 80px; +height:80px; +padding-top: 70px; +padding: 10px; + +/* border: 1px solid black; */ +float: left; +margin-right: 2px; +-webkit-border-radius: 5px; +background-repeat: no-repeat; +background-position: center center; +display: block; +text-align: center; +} +.footer_toolbar .active_button +{ +background-color: rgba(255,255,255,0.3); +} + +/* ========================= /footer_toolbar ================================= */ +.firms_list +{ + +} +.firms_list li +{ +height: 55px; +clear: none; +} +.black_gr +{ +background: #111; +color: white; +font-weight: bold; +text-shadow: 0 -1px 1px black; +background-image: -webkit-gradient(linear,left top,left bottom,from(#3C3C3C),to(#111)); +background-image: -webkit-linear-gradient(#3C3C3C,#111); +background-image: -moz-linear-gradient(#3C3C3C,#111); +background-image: -ms-linear-gradient(#3C3C3C,#111); +background-image: -o-linear-gradient(#3C3C3C,#111); +background-image: linear-gradient(#3C3C3C,#111); + +} +.overlay_item +{ +position: absolute; +border: 1px dashed #F00; +} +.filter_item +{ +background-color: rgba(255,0,0,0.8); +} +.smbutt +{ +float: left; +margin-right: 2px; +border: 1px solid black; +width: 20%; +text-align: center; +padding: 5px; +border: 1px solid #000; +-webkit-border-radius: 4px; +-moz-border-radius: 4px; + +} +.grey_gr +{ +background-color: #424242; +background-image: -webkit-gradient(linear, 0 0, 0 100, from(#F4F5F7), to(#999DA9)); +background-image: -moz-linear-gradient(top, #F4F5F7, #999DA9); +background-image: -o-linear-gradient(top, #F4F5F7, #999DA9); +} +.infav +{ +background-repeat: no-repeat; +background-position: center center; +width: 100%; +height: 15px; +background-image:url(../i/staroff2.png); +} +.infava +{ +background-repeat: no-repeat; +background-position: center center; +width: 100%; +height: 15px; +background-image:url(../i/staron2.png); +} diff --git a/big_demo/css/w.css b/big_demo/css/w.css new file mode 100644 index 0000000..9000b26 --- /dev/null +++ b/big_demo/css/w.css @@ -0,0 +1,93 @@ +.w +{ +position: absolute; +top: 35%; +width: 30%; +left: 25%; +height: 50%; +background-color: #FFF; +border: 1px solid #000; +-webkit-border-radius: 4px; +-moz-border-radius: 4px; +border-radius: 4px; +z-index:253; +} +.close +{ +position: absolute; +right: 4px; +top: 6px; +width: 70px; +height: 30px; +font-weight: bold; +text-align: center; +line-height: 30px; +border: 1px solid #000; +-webkit-border-radius: 4px; +-moz-border-radius: 4px; +border-radius: 4px; +color: #FFF; +cursor: pointer; +background: rgb(125,126,125); /* Old browsers */ +background: -moz-linear-gradient(top, rgba(125,126,125,1) 0%, rgba(14,14,14,1) 100%); /* FF3.6+ */ +background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(125,126,125,1)), color-stop(100%,rgba(59,59,59,1))); /* Chrome,Safari4+ */ +background: -webkit-linear-gradient(top, rgba(125,126,125,1) 0%,rgba(59,59,59,1) 100%); /* Chrome10+,Safari5.1+ */ +background: -o-linear-gradient(top, rgba(125,126,125,1) 0%,rgba(14,14,14,1) 100%); /* Opera 11.10+ */ +background: -ms-linear-gradient(top, rgba(125,126,125,1) 0%,rgba(14,14,14,1) 100%); /* IE10+ */ +background: linear-gradient(top, rgba(125,126,125,1) 0%,rgba(14,14,14,1) 100%); /* W3C */ +filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#7d7e7d', endColorstr='#0e0e0e',GradientType=0 ); /* IE6-9 */ + +} +.black14_gr +{ +background: #4c4c4c; /* Old browsers */ +background: -moz-linear-gradient(top, #4c4c4c 0%, #595959 12%, #666666 25%, #474747 39%, #2c2c2c 50%, #000000 51%, #111111 60%, #2b2b2b 76%, #1c1c1c 91%, #361313 100%); /* FF3.6+ */ +background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#4c4c4c), color-stop(12%,#595959), color-stop(25%,#666666), color-stop(39%,#474747), color-stop(50%,#2c2c2c), color-stop(51%,#000000), color-stop(60%,#111111), color-stop(76%,#2b2b2b), color-stop(91%,#1c1c1c), color-stop(100%,#131313)); /* Chrome,Safari4+ */ +background: -webkit-linear-gradient(top, #4c4c4c 0%,#595959 12%,#666666 25%,#474747 39%,#2c2c2c 50%,#000000 51%,#111111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%); /* Chrome10+,Safari5.1+ */ +background: -o-linear-gradient(top, #4c4c4c 0%,#595959 12%,#666666 25%,#474747 39%,#2c2c2c 50%,#000000 51%,#111111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%); /* Opera 11.10+ */ +background: -ms-linear-gradient(top, #4c4c4c 0%,#595959 12%,#666666 25%,#474747 39%,#2c2c2c 50%,#000000 51%,#111111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%); /* IE10+ */ +background: linear-gradient(top, #4c4c4c 0%,#595959 12%,#666666 25%,#474747 39%,#2c2c2c 50%,#000000 51%,#111111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%); /* W3C */ +filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4c4c4c', endColorstr='#131313',GradientType=0 ); /* IE6-9 */ + +} +.title +{ + +width:100%; +height: 43px; +line-height: 43px; + +border-bottom: 1px solid #838A9A; +background-color: #424242; +background-image: -webkit-gradient(linear, 0 0, 0 100, from(#F4F5F7), to(#999DA9)); +background-image: -moz-linear-gradient(top, #F4F5F7, #999DA9); +background-image: -o-linear-gradient(top, #F4F5F7, #999DA9); +color: #000; +font-size: 16px; +font-weight: bold; +/* text-align: center; */ +text-shadow: 0 1px 0 #A0A0A0; +-webkit-border-top-left-radius: 4px; +-webkit-border-top-right-radius: 4px; +} +.w .content +{ +position: absolute; +top: 45px; + +position: absolute; +bottom: 10px; +left: 10px; +right: 10px; +} +.w #wcontentScroller +{ +-webkit-box-sizing: border-box; +-moz-box-sizing: border-box; +-o-box-sizing: border-box; +box-sizing: border-box; +position: absolute; +z-index: 1; +color: black; +margin: 3px; +} diff --git a/big_demo/data/data.js b/big_demo/data/data.js new file mode 100644 index 0000000..7f94014 --- /dev/null +++ b/big_demo/data/data.js @@ -0,0 +1,2 @@ +var main_data =[{"id":1,"name":"93d65641ff3f1586614cf2c1ad240b6c1","type":5459},{"id":2,"name":"6be5336db2c119736cf48f475e051bfe2","type":9003},{"id":3,"name":"072b030ba126b2f4b2374f342be9ed443","type":8599},{"id":4,"name":"8d5e957f297893487bd98fa830fa64134","type":932},{"id":5,"name":"077e29b11be80ab57e1a2ecabb7da3305","type":7349},{"id":6,"name":"96a0cc2f93365fadfcc06ba14e95fae16","type":1429},{"id":7,"name":"b17c0907e67d868b4e0feb43dbbe6f117","type":6392},{"id":8,"name":"1728efbda81692282ba642aafd57be3a8","type":2686},{"id":9,"name":"2bc8ae25856bc2a6a1333d1331a3b7a69","type":5415},{"id":10,"name":"6ffad86b9a8dd4a3e98df1b0830d1c8c10","type":1895},{"id":11,"name":"77ab78641fb740c101b96c74ca7c15f611","type":9102},{"id":12,"name":"fdda6e957f1e5ee2f3b311fe4f145ae112","type":1240},{"id":13,"name":"619953730129049907919279f29bd9d713","type":7149},{"id":14,"name":"735b90b4568125ed6c3f678819b6e05814","type":7902},{"id":15,"name":"335d3d1cd7ef05ec77714a215134914c15","type":4241},{"id":16,"name":"37c9216b00a111ac0e1f81de25ddff7716","type":4086},{"id":17,"name":"135593dd9bc3d98e8d8e71d788c9dda617","type":63},{"id":18,"name":"c8ecfaea0b7e3aa83b017a786d53b9e818","type":6963},{"id":19,"name":"ef0917ea498b1665ad6c701057155abe19","type":9292},{"id":20,"name":"c8ed21db4f678f3b13b9d5ee1648908820","type":8728},{"id":21,"name":"c7be03f5d811ed29c328526ca8ab0d6121","type":1642},{"id":22,"name":"6a81681a7af700c6385d36577ebec35922","type":6571},{"id":23,"name":"934815ad542a4a7c5e8a2dfa04fea9f523","type":1777},{"id":24,"name":"6492d38d732122c58b44e3fdc3e9e9f324","type":2676},{"id":25,"name":"cb463625fc9dde2d82207e15bde1b67425","type":9386},{"id":26,"name":"6354461b879d3b121b0c33d5e7e5da4f26","type":4227},{"id":27,"name":"865bf46435bd84fa5d89f64cf3ba734727","type":9170},{"id":28,"name":"515b9d40500ef7d05007b5668991fc7c28","type":3416},{"id":29,"name":"6ff05e7bfb82a4d50e29b052214a0c5329","type":817},{"id":30,"name":"fd45ebc1e1d76bc1fe0ba933e60e995730","type":7424},{"id":31,"name":"1c336b8080f82bcc2cd2499b4c57261d31","type":8992},{"id":32,"name":"54f5f4071faca32ad5285fef87b7864632","type":8448},{"id":33,"name":"c165ed49edbd0e69b120bee701bdb79433","type":3410},{"id":34,"name":"ee715daa76f1b51d80343f45547be57034","type":3675},{"id":35,"name":"22bb543b251c39ccdad8063d486987bb35","type":8736},{"id":36,"name":"56bd37d3a2fda0f2f41925019c81011d36","type":5284},{"id":37,"name":"1f8fe28e9283d7b5300af087a298f20037","type":4676},{"id":38,"name":"be26abe76fb5c8a4921cf9d3e865b45438","type":473},{"id":39,"name":"6081594975a764c8e3a691fa2b3a321d39","type":5904},{"id":40,"name":"81b44841fd564c347f7f21ae19b9765940","type":1418},{"id":41,"name":"6d4f95bf53bba28f148641c8561dbf9841","type":2117},{"id":42,"name":"73740ea85c4ec25f00f9acbd859f861d42","type":5310},{"id":43,"name":"fcdbc4f504a15df8f78da88ee72fad3243","type":7990},{"id":44,"name":"0af854284f4ab0cfea8fcfd889cbb41a44","type":4342},{"id":45,"name":"6a571fe98a2ba453e84923b447d79cff45","type":3227},{"id":46,"name":"a381c2c35c9157f6b67fd07d5a200ae146","type":5697},{"id":47,"name":"df83971673de5c8e71ca1e2645718dad47","type":2504},{"id":48,"name":"42cbf4730aeac1d645324d481810482648","type":1569},{"id":49,"name":"de7f47e09c8e05e6021ababdf6bc58e749","type":5508},{"id":50,"name":"598920e11d1eb2a49501d59fce5ecbb750","type":9129},{"id":51,"name":"7bee424db269e7f9c5d0a68c7a63501851","type":6931},{"id":52,"name":"2e0aca891f2a8aedf265edf533a6d9a852","type":591},{"id":53,"name":"4158f6d19559955bae372bb00f6204e453","type":6462},{"id":54,"name":"a45a1d12ee0fb7f1f872ab91da18f89954","type":3117},{"id":55,"name":"f69041d874533096748e2d77480c1fea55","type":8782},{"id":56,"name":"3c69ccff8acc065aa5618b36b74703de56","type":8901},{"id":57,"name":"5300ef422e613b74fbf759d293aaab6a57","type":3591},{"id":58,"name":"54e8912427a8d007ece906c577fdca6058","type":5144},{"id":59,"name":"22f7e834551fbb0f6ea55b04889e8eb159","type":5560},{"id":60,"name":"fb5c2bc1aa847f387022607d16adc51060","type":4020},{"id":61,"name":"30d411fdc0e6daf092a74354094359bb61","type":4388},{"id":62,"name":"67974233917cea0e42a49a2fb7eb4cf462","type":2722},{"id":63,"name":"e6e713296627dff6475085cc6a22446463","type":4758},{"id":64,"name":"043a1c71577f6249b071679bce73d00864","type":3433},{"id":65,"name":"df9028fcb6b065e000ffe8a4f03eeb3865","type":6357},{"id":66,"name":"d9eb09a4dbf0b2098faf20331f294afe66","type":3344},{"id":67,"name":"a8345c3bb9e3896ea538ce77ffaf2c2067","type":3877},{"id":68,"name":"429e4a44bec547a527df987730b19aab68","type":4640},{"id":69,"name":"b22ed7eafe03b63112ef3ff52f0b99db69","type":6998},{"id":70,"name":"53adaf494dc89ef7196d73636eb2451b70","type":4512},{"id":71,"name":"f016e59c7ad8b1d72903bb1aa5720d5371","type":421},{"id":72,"name":"81d7118d88d5570189ace943bd14f14272","type":5145},{"id":73,"name":"46072631582fc240dd2674a7d063b04073","type":3815},{"id":74,"name":"c731077c04035ac9e92a3706288db18f74","type":3729},{"id":75,"name":"994d1cad9132e48c993d58b492f71fc175","type":1882},{"id":76,"name":"5fcc629edc0cfa360016263112fe805876","type":2450},{"id":77,"name":"b7da6669894867f04b8727876a69ffc077","type":4300},{"id":78,"name":"5aa3405a3f865c10f420a4a7b55cbff378","type":8488},{"id":79,"name":"68aea522760347926520bfa959f1524079","type":5763},{"id":80,"name":"702cafa3bb4c9c86e4a3b6834b45aedd80","type":4047},{"id":81,"name":"0e57098d0318a954d1443e2974a38fac81","type":5957},{"id":82,"name":"4f284803bd0966cc24fa8683a34afc6e82","type":6300},{"id":83,"name":"7eabe3a1649ffa2b3ff8c02ebfd5659f83","type":9565},{"id":84,"name":"13f320e7b5ead1024ac95c3b208610db84","type":7440},{"id":85,"name":"5d78d182fd5f5510588695863d22ac2785","type":6286},{"id":86,"name":"b45f8e4366b41a30994d6b5b3bb2d51b86","type":4658},{"id":87,"name":"4ebd440d99504722d80de606ea8507da87","type":801},{"id":88,"name":"2548a4ac7ad6eddd035bced24ec6d96488","type":140},{"id":89,"name":"c20ad4d76fe97759aa27a0c99bff671089","type":2791},{"id":90,"name":"0a93091da5efb0d9d5649e7f6b2ad9d790","type":1065},{"id":91,"name":"a981f2b708044d6fb4a71a146324252091","type":6946},{"id":92,"name":"994d1cad9132e48c993d58b492f71fc192","type":9621},{"id":93,"name":"f4f0edb08c97567ce6b0475a63bf700093","type":2964},{"id":94,"name":"836a0dcbf5d22652569dc3a708274c1694","type":3014},{"id":95,"name":"bdcc41211aa62a8f10f26d1a2d1727bf95","type":5519},{"id":96,"name":"4191ef5f6c1576762869ac49281130c996","type":3413},{"id":97,"name":"2e976ab88a42d723d9f2ee6027b707f597","type":4308},{"id":98,"name":"5d8c6ee0d8964e66a3225458f981522d98","type":8007},{"id":99,"name":"729c68884bd359ade15d5f163166738a99","type":4014},{"id":100,"name":"ce064f3048963690520b63dd9625dac0100","type":8992},{"id":101,"name":"d35a29602005cb55aa57a5f683c8e0c2101","type":4325},{"id":102,"name":"6738fc33dd0b3906cd3626397cd247a7102","type":3556},{"id":103,"name":"29e11ea8ec6c7804a7f939e8e78e9c18103","type":9924},{"id":104,"name":"3d9dabe52805a1ea21864b09f3397593104","type":3877},{"id":105,"name":"dbbf603ff0e99629dda5d75b6f75f966105","type":517},{"id":106,"name":"6fe43269967adbb64ec6149852b5cc3e106","type":7144},{"id":107,"name":"c86c6aae8fa9b90ac77534c5ea7a2fe7107","type":770},{"id":108,"name":"b93e78c67fd4ae3ee626d8ec0c412dec108","type":5552},{"id":109,"name":"8ab70731b1553f17c11a3bbc87e0b605109","type":378},{"id":110,"name":"3d779cae2d46cf6a8a99a35ba4167977110","type":6283},{"id":111,"name":"5c2631d54272554b181cf21ad2171fa3111","type":4026},{"id":112,"name":"aba22f748b1a6dff75bda4fd1ee9fe07112","type":1530},{"id":113,"name":"b704ea2c39778f07c617f6b7ce480e9e113","type":1410},{"id":114,"name":"482db0ecc10b8a9984ae850c9ada9899114","type":8466},{"id":115,"name":"99a2103fcf4f2c44d1f9f75553274025115","type":7204},{"id":116,"name":"2b64c2f19d868305aa8bbc2d72902cc5116","type":9294},{"id":117,"name":"239f914f30ea3c948fce2ea07a9efb33117","type":1115},{"id":118,"name":"e0c7ccc47b2613c82d1073a4214deecc118","type":1204},{"id":119,"name":"86edc93505434db5aa0e091e50e678b7119","type":7807},{"id":120,"name":"fa60438ac1719d11eb95899af86e27c6120","type":6365},{"id":121,"name":"f7f84297f903c4ae67e9b17ebb49c5a3121","type":6986},{"id":122,"name":"0cb82dbdcda47e2ad7b7aaf69573906e122","type":1983},{"id":123,"name":"1ef91c212e30e14bf125e9374262401f123","type":3336},{"id":124,"name":"285da2198b2b496c9d447cc4ac6b0734124","type":235},{"id":125,"name":"3c1e4bd67169b8153e0047536c9f541e125","type":6535},{"id":126,"name":"67ff32d40fb51f1a2fd2c4f1b1019785126","type":8303},{"id":127,"name":"0fe473396242072e84af286632d3f0ff127","type":1284},{"id":128,"name":"afda332245e2af431fb7b672a68b659d128","type":8389},{"id":129,"name":"8c1b6fa97c4288a4514365198566c6fa129","type":7254},{"id":130,"name":"70c767c26cb3143bad5e660504fd6a76130","type":7676},{"id":131,"name":"f2925f97bc13ad2852a7a551802feea0131","type":9146},{"id":132,"name":"48259990138bc03361556fb3f94c5d45132","type":8348},{"id":133,"name":"b8a6550662b363eb34145965d64d0cfb133","type":6647},{"id":134,"name":"d37124c4c79f357cb02c655671a432fa134","type":7595},{"id":135,"name":"10493aa88605cad5ab4752b04a63d172135","type":4441},{"id":136,"name":"09853c7fb1d3f8ee67a61b6bf4a7f8e6136","type":7604},{"id":137,"name":"c0fda89ebd645bd7cea60fcbb5960309137","type":2215},{"id":138,"name":"26337353b7962f533d78c762373b3318138","type":5563},{"id":139,"name":"3d600348cf3aca45a777c9bc043054d4139","type":4653},{"id":140,"name":"1f4fe6a4411edc2ff625888b4093e917140","type":3659},{"id":141,"name":"8c19f571e251e61cb8dd3612f26d5ecf141","type":1451},{"id":142,"name":"3016a447172f3045b65f5fc83e04b554142","type":9073},{"id":143,"name":"8c00dee24c9878fea090ed070b44f1ab143","type":7285},{"id":144,"name":"0353ab4cbed5beae847a7ff6e220b5cf144","type":4008},{"id":145,"name":"7c9966afcc510cf5a40621d1d92bdaf1145","type":1859},{"id":146,"name":"ab24cd2b811ee48a416fc7a833d736a9146","type":5636},{"id":147,"name":"a2a722df674185b45ae4752a1e7d5444147","type":9839},{"id":148,"name":"c042f4db68f23406c6cecf84a7ebb0fe148","type":6152},{"id":149,"name":"6fb52e71b837628ac16539c1ff911667149","type":939},{"id":150,"name":"6651526b6fb8f29a00507de6a49ce30f150","type":2746},{"id":151,"name":"9fe77ac7060e716f2d42631d156825c0151","type":9817},{"id":152,"name":"f4666b1c34893ee557dccbfe3382e965152","type":7594},{"id":153,"name":"504c296f8eb5fd521e744da4e8371f28153","type":6186},{"id":154,"name":"5f0453f78909173a7ce2eb874d2a7f52154","type":7895},{"id":155,"name":"ddd993b2fef3fdff101872bb03cfded8155","type":4721},{"id":156,"name":"8620005ac78d8257435d490058c643dd156","type":5835},{"id":157,"name":"b75bd27b5a48a1b48987a18d831f6336157","type":5110},{"id":158,"name":"ce758408f6ef98d7c7a7b786eca7b3a8158","type":8595},{"id":159,"name":"d3e0f226df6865b28fb677548370f467159","type":2045},{"id":160,"name":"a3048e47310d6efaa4b1eaf55227bc92160","type":8370},{"id":161,"name":"8bf1211fd4b7b94528899de0a43b9fb3161","type":5205},{"id":162,"name":"74d90aafda34e6060f9e8433962d14fd162","type":2348},{"id":163,"name":"68897f19b106926ed889fe3f7e3d01c9163","type":9282},{"id":164,"name":"6abba5d8ab1f4f32243e174beb754661164","type":2708},{"id":165,"name":"2ba3c4b9390cc43edb94e42144729d33165","type":3974},{"id":166,"name":"a26398dca6f47b49876cbaffbc9954f9166","type":6639},{"id":167,"name":"12092a75caa75e4644fd2869f0b6c45a167","type":3953},{"id":168,"name":"6fd6b030c6afec018415662d0db43f9d168","type":6335},{"id":169,"name":"3df1d4b96d8976ff5986393e8767f5b2169","type":8908},{"id":170,"name":"3328bdf9a4b9504b9398284244fe97c2170","type":8978},{"id":171,"name":"dd111a74f4ff9cf2cbf198cef2579800171","type":3541},{"id":172,"name":"fb89705ae6d743bf1e848c206e16a1d7172","type":6762},{"id":173,"name":"1915523773b16865a73a38acc952ccda173","type":7520},{"id":174,"name":"f3f27a324736617f20abbf2ffd806f6d174","type":6868},{"id":175,"name":"437d7d1d97917cd627a34a6a0fb41136175","type":5548},{"id":176,"name":"9908279ebbf1f9b250ba689db6a0222b176","type":1491},{"id":177,"name":"4dc3ed26a29c9c3df3ec373524377a5b177","type":7303},{"id":178,"name":"ede529dfcbb2907e9760eea0875cdd12178","type":7802},{"id":179,"name":"770c0e7e2af0db73409aa2431aa8f33e179","type":7477},{"id":180,"name":"361440528766bbaaaa1901845cf4152b180","type":8006},{"id":181,"name":"1c280e54c157ef973dad67751c0a525d181","type":5759},{"id":182,"name":"6c3cf77d52820cd0fe646d38bc2145ca182","type":9283},{"id":183,"name":"2172fde49301047270b2897085e4319d183","type":6831},{"id":184,"name":"9edda0fd4d983bf975935cfd492fd50b184","type":3828},{"id":185,"name":"5f14615696649541a025d3d0f8e0447f185","type":390},{"id":186,"name":"cdf66a6a7a04d87d865335701790c3e3186","type":8812},{"id":187,"name":"ad185a320a9c8af2e25d53ef7cbacd4f187","type":1111},{"id":188,"name":"9fe8593a8a330607d76796b35c64c600188","type":6440},{"id":189,"name":"105405695aa6c6e0e203fbf4df13a1d5189","type":8681},{"id":190,"name":"f12ee9734e1edf70ed02d9829018b3d9190","type":3892},{"id":191,"name":"2df45244f09369e16ea3f9117ca45157191","type":7802},{"id":192,"name":"ba9a56ce0a9bfa26e8ed9e10b2cc8f46192","type":3355},{"id":193,"name":"d309cd6396e744600c943fada20f686a193","type":8152},{"id":194,"name":"a1b07b8980c5acf5ef69cff16ebb1f42194","type":2017},{"id":195,"name":"b5d62aa6024ab6a65a12c78c4c2d4efc195","type":4424},{"id":196,"name":"3596c80a46918e6dde2f3c37290cba47196","type":2064},{"id":197,"name":"56e6a93212e4482d99c84a639d254b67197","type":6296},{"id":198,"name":"83451e7ef8755c2a8f464093c808f529198","type":687},{"id":199,"name":"84f74ce4511e0c9531af1182fb636f0f199","type":8460},{"id":200,"name":"0e1418311a013ebb344e7fcf8d199cc3200","type":71},{"id":201,"name":"0e16366727185813f59d4a9467878901201","type":615},{"id":202,"name":"33853141e0873909be88f5c3e6144cc6202","type":7398},{"id":203,"name":"234e691320c0ad5b45ee3c96d0d7b8f8203","type":7424},{"id":204,"name":"789a283923884fb1c9598f796581a39d204","type":4869},{"id":205,"name":"38651c4450f87348fcbe1f992746a954205","type":8593},{"id":206,"name":"d397c2b2be2178fe6247bd50fc97cff2206","type":9659},{"id":207,"name":"49265d2447bc3bbfe9e76306ce40a31f207","type":8807},{"id":208,"name":"fc2e6a440b94f64831840137698021e1208","type":3969},{"id":209,"name":"fd4d801731725513a4d77aa9bb35534b209","type":7752},{"id":210,"name":"7c93ebe873ef213123c8af4b188e7558210","type":4973},{"id":211,"name":"cf8c9be2a4508a24ae92c9d3d379131d211","type":121},{"id":212,"name":"3988c7f88ebcb58c6ce932b957b6f332212","type":4864},{"id":213,"name":"35d02fef7d9a24e237057162abab82b7213","type":5583},{"id":214,"name":"28dc6b0e1b33769b4b94685e4f4d1e5c214","type":834},{"id":215,"name":"73d915c91b99b170993ea97d875a6330215","type":8841},{"id":216,"name":"96f2b50b5d3613adf9c27049b2a888c7216","type":5057},{"id":217,"name":"3d387d2612f9027154ed3b99a7427da1217","type":9581},{"id":218,"name":"83a368f54768f506b833130584455df4218","type":4734},{"id":219,"name":"96c5c28becf18e71190460a9955aa4d8219","type":2497},{"id":220,"name":"069654d5ce089c13f642d19f09a3d1c0220","type":2050},{"id":221,"name":"735a8b95123648555736192cd3978bc1221","type":7257},{"id":222,"name":"06bf16f1f0372a63d520eac6cf7c5af7222","type":4185},{"id":223,"name":"b6d67a24906e8a8541291882f81d31ca223","type":8563},{"id":224,"name":"a08e32d2f9a8b78894d964ec7fd4172e224","type":3335},{"id":225,"name":"8597a6cfa74defcbde3047c891d78f90225","type":6103},{"id":226,"name":"cb8da6767461f2812ae4290eac7cbc42226","type":6680},{"id":227,"name":"e42ad93f7491f2a38ba2ec1416ef6f55227","type":4560},{"id":228,"name":"f30824bacaaabc2fc3aa0b6d658a56e9228","type":6416},{"id":229,"name":"9079ea527e08a24dfad44e3302d5f091229","type":3622},{"id":230,"name":"370bfb31abd222b582245b977ea5f25a230","type":9722},{"id":231,"name":"33a5435d4f945aa6154b31a73bab3b73231","type":7973},{"id":232,"name":"a4380923dd651c195b1631af7c829187232","type":8794},{"id":233,"name":"3acb2a202ae4bea8840224e6fce16fd0233","type":7308},{"id":234,"name":"27b09e189a405b6cca6ddd7ec869c143234","type":821},{"id":235,"name":"c74d97b01eae257e44aa9d5bade97baf235","type":6312},{"id":236,"name":"2d95666e2649fcfc6e3af75e09f5adb9236","type":7972},{"id":237,"name":"912d2b1c7b2826caf99687388d2e8f7c237","type":4671},{"id":238,"name":"80b0c85e6c57765e36477a986b101ede238","type":7454},{"id":239,"name":"0f089a3bcf38d052f7882d12b3923a82239","type":7070},{"id":240,"name":"7c39a5f991bef4a1e34187677a65871d240","type":1452},{"id":241,"name":"fccb3cdc9acc14a6e70a12f74560c026241","type":3205},{"id":242,"name":"7f975a56c761db6506eca0b37ce6ec87242","type":7139},{"id":243,"name":"3e15cc11f979ed25912dff5b0669f2cd243","type":7751},{"id":244,"name":"40c48dab939a482f04dcecde07e27de6244","type":6718},{"id":245,"name":"894a9b94bcc5969b60bd18e8ea9c0ddc245","type":412},{"id":246,"name":"116ce3668c6d5c744252b9a1cb67b8d4246","type":7371},{"id":247,"name":"f4beeba0dd6c190c6ac02f85e7b3691c247","type":5855},{"id":248,"name":"e894d787e2fd6c133af47140aa156f00248","type":1291},{"id":249,"name":"6e8404c3b93a9527c8db241a1846599a249","type":3786},{"id":250,"name":"9559fc73b13fa721a816958488a5b449250","type":5651},{"id":251,"name":"e74c0d42b4433905293aab661fcf8ddb251","type":8878},{"id":252,"name":"82dbce7b4ff9f093aa7ff9c43ae70d8a252","type":2655},{"id":253,"name":"dafc8e8cde5d69dafe65cb6907899656253","type":837},{"id":254,"name":"38eb982ee635354d3febf457beeee736254","type":9473},{"id":255,"name":"3636638817772e42b59d74cff571fbb3255","type":4328},{"id":256,"name":"6624b6d8217cf71640993409df58204f256","type":8311},{"id":257,"name":"bbbe7ef28a0018c4484eaa8b2d0a0328257","type":9050},{"id":258,"name":"78d69f40906679a976dc4d45cebffbe6258","type":6349},{"id":259,"name":"f4be00279ee2e0a53eafdaa94a151e2c259","type":9692},{"id":260,"name":"c535e3a7f97daf1c4b1eb03cc8e31623260","type":5772},{"id":261,"name":"2c463dfdde588f3bfc60d53118c10d6b261","type":5944},{"id":262,"name":"7bec7e63a493e2d61891b1e4051ef75a262","type":3770},{"id":263,"name":"b534ba68236ba543ae44b22bd110a1d6263","type":2489},{"id":264,"name":"eafc8fe9c61d6760ae284c29840bbf0b264","type":2530},{"id":265,"name":"ba4002d88b8860b6a684ade8357aba56265","type":9006},{"id":266,"name":"01e9565cecc4e989123f9620c1d09c09266","type":9232},{"id":267,"name":"90ef635b07e4335585e9aa6c7d742e94267","type":204},{"id":268,"name":"87475f2c1909e4e6d0d7f0e020a2ded3268","type":6079},{"id":269,"name":"7369f3c86bf3c0a354615432832d9e8f269","type":5744},{"id":270,"name":"a6ce91443f690d0979d788694448382d270","type":253},{"id":271,"name":"4e8eaf897c638d519710b1691121f8cb271","type":338},{"id":272,"name":"02f657d55eaf1c4840ce8d66fcdaf90c272","type":3930},{"id":273,"name":"456ac9b0d15a8b7f1e71073221059886273","type":3654},{"id":274,"name":"8808eda0dd3dec4e4df50499f2fc75e8274","type":4310},{"id":275,"name":"2836be05e71a8f34902a6e6b37350134275","type":394},{"id":276,"name":"310b60949d2b6096903d7e8a539b20f5276","type":3577},{"id":277,"name":"87ae6fb631f7c8a627e8e28785d9992d277","type":237},{"id":278,"name":"67b878df6cd42d142f2924f3ace85c78278","type":8912},{"id":279,"name":"9d63484abb477c97640154d40595a3bb279","type":7865},{"id":280,"name":"c9f029a6a1b20a8408f372351b321dd8280","type":2520},{"id":281,"name":"c7a9f13a6c0940277d46706c7ca32601281","type":2986},{"id":282,"name":"0ec29ebfebc8170bf981e16247ca1298282","type":1573},{"id":283,"name":"566f0ea4f6c2e947f36795c8f58ba901283","type":272},{"id":284,"name":"35ec253885cf090f80881b44180afb00284","type":8255},{"id":285,"name":"c6102b3727b2a7d8b1bb6981147081ef285","type":9403},{"id":286,"name":"ef4e3b775c934dada217712d76f3d51f286","type":9766},{"id":287,"name":"c5866e93cab1776890fe343c9e7063fb287","type":5089},{"id":288,"name":"2f0928c25ff3f884e8d2fa38835bd328288","type":8292},{"id":289,"name":"f9d1152547c0bde01830b7e8bd60024c289","type":7001},{"id":290,"name":"3ef815416f775098fe977004015c6193290","type":1021},{"id":291,"name":"fdb55ce855129e05da8374059cc82728291","type":9829},{"id":292,"name":"dc49dfebb0b00fd44aeff5c60cc1f825292","type":132},{"id":293,"name":"3e60e09c222f206c725385f53d7e567c293","type":3271},{"id":294,"name":"3c3c139bd8467c1587a41081ad78045e294","type":2814},{"id":295,"name":"c80d9ba4852b67046bee487bcd9802c0295","type":2001},{"id":296,"name":"020c8bfac8de160d4c5543b96d1fdede296","type":1262},{"id":297,"name":"ce89f6b11bdc5b365085a84036e9365b297","type":5708},{"id":298,"name":"819c9fbfb075d62a16393b9fe4fcbaa5298","type":2656},{"id":299,"name":"9fc3d7152ba9336a670e36d0ed79bc43299","type":9082},{"id":300,"name":"7070f9088e456682f0f84f815ebda761300","type":9182},{"id":301,"name":"cdcb2f5c7b071143529ef7f2705dfbc4301","type":1822},{"id":302,"name":"b0a7a7f42f23cdf318b7a1088083f5aa302","type":8039},{"id":303,"name":"76330c26dea62332de2ca7b4a9ef51ec303","type":8592},{"id":304,"name":"60792d855cd8a912a97711f91a1f155c304","type":1413},{"id":305,"name":"8830c97ab60254cd05628c6e61e8c54c305","type":9098},{"id":306,"name":"74c407e263578d03d02c1123aa730b52306","type":6476},{"id":307,"name":"cf34645d98a7630e2bcca98b3e29c8f2307","type":8024},{"id":308,"name":"2321994d85d661d792223f647000c65f308","type":5430},{"id":309,"name":"0a4bbceda17a6253386bc9eb45240e25309","type":5057},{"id":310,"name":"d40e0a2a2f466a90ee2630fc925e7af9310","type":5458},{"id":311,"name":"0d5a4a5a748611231b945d28436b8ece311","type":4880},{"id":312,"name":"f0e52b27a7a5d6a1a87373dffa53dbe5312","type":8745},{"id":313,"name":"6ba5bc4fe4c3f704112d0ba94020f4c2313","type":7181},{"id":314,"name":"7f489f642a0ddb10272b5c31057f0663314","type":2490},{"id":315,"name":"b91f5a1e50d6a0fff36dda5a1bb08d76315","type":6653},{"id":316,"name":"0b9e57c46de934cee33b0e8d1839bfc2316","type":8860},{"id":317,"name":"c4f796afbc6267501964b46427b3f6ba317","type":2983},{"id":318,"name":"ed265bc903a5a097f61d3ec064d96d2e318","type":5063},{"id":319,"name":"b21d2f86beb192143a04671ac93bfd00319","type":855},{"id":320,"name":"7059b7dea43da04fd342088d7c1698f0320","type":3277},{"id":321,"name":"a425170bf40e8d6ee473b271d96dae18321","type":9947},{"id":322,"name":"35464c848f410e55a13bb9d78e7fddd0322","type":690},{"id":323,"name":"0afa92fc0f8a9cf051bf2961b06ac56b323","type":4970},{"id":324,"name":"e038453073d221a4f32d0bab94ca7cee324","type":9479},{"id":325,"name":"65f2a94c8c2d56d5b43a1a3d9d811102325","type":5593},{"id":326,"name":"604616e4d592b744e14ec3ff33204dec326","type":6854},{"id":327,"name":"c55430fdfdac11fc3771a9b94e2bb854327","type":6509},{"id":328,"name":"59a3adea76fadcb6dd9e54c96fc155d1328","type":4989},{"id":329,"name":"d3f5d4de09ea19461dab00590df91e4f329","type":7405},{"id":330,"name":"24759597b99d21ef84e6c86c29e56aab330","type":1075},{"id":331,"name":"af1c25e88a9e818f809f6b5d18ca02e2331","type":2975},{"id":332,"name":"37ca649d980eaa5564a620f959f12d88332","type":7289},{"id":333,"name":"91576cbf171986154e523305a69c79d3333","type":2895},{"id":334,"name":"094366eaa7a4b5d7f9ed227f212b3649334","type":839},{"id":335,"name":"9f8684e630c4c30cad7b1f0935cd62ab335","type":1860},{"id":336,"name":"2d3d9d5373f378108cdbd30a3c52bd3e336","type":3891},{"id":337,"name":"0cddb7c06f1cd518e1efdc0e20b70c31337","type":9547},{"id":338,"name":"b8b9c74ac526fffbeb2d39ab038d1cd7338","type":3646},{"id":339,"name":"0d7de1aca9299fe63f3e0041f02638a3339","type":667},{"id":340,"name":"656c8f81486b1e4fe59bf39ce9ff7b33340","type":2289},{"id":341,"name":"9ef2ed4b7fd2c810847ffa5fa85bce38341","type":4881},{"id":342,"name":"e1054bf2d703bca1e8fe101d3ac5efcd342","type":7000},{"id":343,"name":"c154d855a0f33bb1ee7365af5a204279343","type":6890},{"id":344,"name":"9b82909c30456ac902e14526e63081d4344","type":9975},{"id":345,"name":"9edcc1391c208ba0b503fe9a22574251345","type":6381},{"id":346,"name":"5f5c19fa671886b5f7f205d541157c1f346","type":8403},{"id":347,"name":"cf2226ddd41b1a2d0ae51dab54d32c36347","type":8038},{"id":348,"name":"d18c255f89434eab3211813c0e765c6b348","type":4469},{"id":349,"name":"f95ec3de395b4bce25b39ef6138da871349","type":1559},{"id":350,"name":"8744cf92c88433f8cb04a02e6db69a0d350","type":5356},{"id":351,"name":"e744f91c29ec99f0e662c9177946c627351","type":1616},{"id":352,"name":"decc2e06a44e61f12a030bc4951563eb352","type":3257},{"id":353,"name":"6403675579f6114559c90de0014cd3d6353","type":7898},{"id":354,"name":"4f00921114932db3f8662a41b44ee68f354","type":5354},{"id":355,"name":"1113d7a76ffceca1bb350bfe145467c6355","type":5107},{"id":356,"name":"6e3adb1ae0e02c934766182313b6775d356","type":3840},{"id":357,"name":"0a2298a72858d90d5c4b4fee954b6896357","type":2920},{"id":358,"name":"8aa2c95dc0a6833d2d0cb944555739cc358","type":5897},{"id":359,"name":"9d28de8ff9bb6a3fa41fddfdc28f3bc1359","type":6021},{"id":360,"name":"2b44928ae11fb9384c4cf38708677c48360","type":3720},{"id":361,"name":"0c4b1eeb45c90b52bfb9d07943d855ab361","type":4108},{"id":362,"name":"29c0605a3bab4229e46723f89cf59d83362","type":4490},{"id":363,"name":"6c9882bbac1c7093bd25041881277658363","type":1862},{"id":364,"name":"c37f36800219dcb5960c40d1d4bade55364","type":401},{"id":365,"name":"fd1d83de2517a02d4e221ede9a681432365","type":8964},{"id":366,"name":"a9b94e2e91ee1dae4106f72c3e48880e366","type":8624},{"id":367,"name":"eb0ecdb070a1a0ac46de0cd733d39cf3367","type":123},{"id":368,"name":"ebef22399dd37c14fcbe768327022889368","type":1374},{"id":369,"name":"6e5025ccc7d638ae4e724da8938450a6369","type":5000},{"id":370,"name":"c600b4b49faa3a2a165242e90ca21ac3370","type":5812},{"id":371,"name":"312f1ba2a72318edaaa995a67835fad5371","type":8297},{"id":372,"name":"0d73a25092e5c1c9769a9f3255caa65a372","type":4142},{"id":373,"name":"67fe0f66449e31fdafdc3505c37d6acb373","type":9701},{"id":374,"name":"430c3626b879b4005d41b8a46172e0c0374","type":3546},{"id":375,"name":"6b180037abbebea991d8b1232f8a8ca9375","type":3904},{"id":376,"name":"5bf8aaef51c6e0d363cbe554acaf3f20376","type":6208},{"id":377,"name":"2cad8fa47bbef282badbb8de5374b894377","type":585},{"id":378,"name":"601ac804ce8eac52499a1cde96bae911378","type":9320},{"id":379,"name":"a486cd07e4ac3d270571622f4f316ec5379","type":4428},{"id":380,"name":"978fce5bcc4eccc88ad48ce3914124a2380","type":5074},{"id":381,"name":"7551617774bcd665e4abe990db4f6f83381","type":5130},{"id":382,"name":"c47e93742387750baba2e238558fa12d382","type":653},{"id":383,"name":"908075ea2c025c335f4865f7db427062383","type":7373},{"id":384,"name":"97af07a14cacba681feacf3012730892384","type":8233},{"id":385,"name":"82836ca597a373e6c3cd5ae2d466161e385","type":854},{"id":386,"name":"3142c42ca1d6675586ec636631a0c922386","type":5022},{"id":387,"name":"a13e00b0854808128933f99f4955f338387","type":248},{"id":388,"name":"a4a587f3d0835928d30c2253f0624953388","type":3196},{"id":389,"name":"23937b42f9273974570fb5a56a6652ee389","type":5242},{"id":390,"name":"51ecca3abb51c77a924057626825f6a3390","type":9937},{"id":391,"name":"040a99f23e8960763e680041c601acab391","type":538},{"id":392,"name":"13168e6a2e6c84b4b7de9390c0ef5ec5392","type":7448},{"id":393,"name":"ae1eaa32d10b6c886981755d579fb4d8393","type":5805},{"id":394,"name":"e2ad76f2326fbc6b56a45a56c59fafdb394","type":2909},{"id":395,"name":"ad551fd8c04785df87b7ae269a20c243395","type":5746},{"id":396,"name":"7c82fab8c8f89124e2ce92984e04fb40396","type":8499},{"id":397,"name":"cef1b938860dd6718de5eaae697b60e5397","type":46},{"id":398,"name":"130ea938864f051b9a40c85b6a713306398","type":1424},{"id":399,"name":"f1404c2624fa7f2507ba04fd9dfc5fb1399","type":3382},{"id":400,"name":"ea6979872125d5acbac6068f186a0359400","type":3852},{"id":401,"name":"7827d1ec626c891d4b61a15c9dff296e401","type":5449},{"id":402,"name":"228669109aa3ab1b4ec06b7722efb105402","type":2983},{"id":403,"name":"af94ed0d6f5acc95f97170e3685f16c0403","type":940},{"id":404,"name":"7364e0bb7f15ebfbc9e12d5b13f51a02404","type":1001},{"id":405,"name":"fb4ab556bc42d6f0ee0f9e24ec4d1af0405","type":9525},{"id":406,"name":"e22dd5dabde45eda5a1a67772c8e25dd406","type":5088},{"id":407,"name":"45f6a4a57549a5720dfdcdf643c78b83407","type":5914},{"id":408,"name":"898dd88cca7b2f65461bc491dacb9b25408","type":7438},{"id":409,"name":"9d1827dc5f75b9d65d80e25eb862e676409","type":9776},{"id":410,"name":"e0c641195b27425bb056ac56f8953d24410","type":5241},{"id":411,"name":"bd48f59a9f04aefd7708058b717453af411","type":5814},{"id":412,"name":"1f72e258ff730035f2a1fb6637f562c2412","type":684},{"id":413,"name":"c361bc7b2c033a83d663b8d9fb4be56e413","type":3705},{"id":414,"name":"ff2d5fc3ab1932df3c00308bead36006414","type":946},{"id":415,"name":"bbfb937a66597d9646ad992009aee405415","type":8134},{"id":416,"name":"ee492a6c8f567fb3100b7dc9d3600cbe416","type":8213},{"id":417,"name":"3083202a936b7d0ef8b680d7ae73fa1a417","type":8796},{"id":418,"name":"8a88d5f412f2ad376f8597d28cbd3720418","type":9686},{"id":419,"name":"6562c5c1f33db6e05a082a88cddab5ea419","type":384},{"id":420,"name":"2ed80f6311c1825feb854d78fa969d34420","type":7548},{"id":421,"name":"1f71e393b3809197ed66df836fe833e5421","type":2569},{"id":422,"name":"6822951732be44edf818dc5a97d32ca6422","type":8981},{"id":423,"name":"bac4cbb6173335e862a1b3df635ee3ba423","type":50},{"id":424,"name":"687fe34a901a03abed262a62e22f90db424","type":6179},{"id":425,"name":"63154d5661f774fb7d2d11701d466aa2425","type":2508},{"id":426,"name":"4dd9cec1c21bc54eecb53786a2c5fa09426","type":6324},{"id":427,"name":"05049e90fa4f5039a8cadc6acbb4b2cc427","type":4633},{"id":428,"name":"2b9bd744f7c0d06123d9d9557310fa80428","type":1611},{"id":429,"name":"a2802cade04644083dcde1c8c483ed9a429","type":6115},{"id":430,"name":"2d290e496d16c9dcaa9b4ded5cac10cc430","type":9210},{"id":431,"name":"972ededf6c4d7c1405ef53f27d961eda431","type":1645},{"id":432,"name":"94130ea17023c4837f0dcdda95034b65432","type":1335},{"id":433,"name":"400c3241004b5db7ca7f5abfef2794f2433","type":903},{"id":434,"name":"897a9a2b554640752d749543235a1b16434","type":5149},{"id":435,"name":"ed46558a56a4a26b96a68738a0d28273435","type":8570},{"id":436,"name":"1113d7a76ffceca1bb350bfe145467c6436","type":2855},{"id":437,"name":"31bd51a7403b980bf1039518120712e0437","type":4354},{"id":438,"name":"cd42c963390a9cd025d007dacfa99351438","type":1634},{"id":439,"name":"add217938e07bb1fd8796e0315b88c10439","type":2928},{"id":440,"name":"6b3c49bdba5be0d322334e30c459f8bd440","type":3672},{"id":441,"name":"2ba61cc3a8f44143e1f2f13b2b729ab3441","type":3981},{"id":442,"name":"c404a5adbf90e09631678b13b05d9d7a442","type":6158},{"id":443,"name":"07d5938693cc3903b261e1a3844590ed443","type":2204},{"id":444,"name":"e1f979ea2b94f4a754835ee9f85cf0d0444","type":1289},{"id":445,"name":"972cda1e62b72640cb7ac702714a115f445","type":7276},{"id":446,"name":"9acf7769aeea55e2b2505c88710d4293446","type":6234},{"id":447,"name":"12e1b435e5e53888e787d22c1e8d262d447","type":3899},{"id":448,"name":"a4e858c15255e55d5e1e221bd151154f448","type":3198},{"id":449,"name":"9a83eabfb7fa303a2d85dbc6f37483e5449","type":1751},{"id":450,"name":"b6846b0186a035fcc76b1b1d26fd42fa450","type":9354},{"id":451,"name":"e95a45d0b1f5afdf0ab9cde82b4b1d06451","type":5516},{"id":452,"name":"2119b8d43eafcf353e07d7cb5554170b452","type":6904},{"id":453,"name":"b59a51a3c0bf9c5228fde841714f523a453","type":4891},{"id":454,"name":"8a3363abe792db2d8761d6403605aeb7454","type":3029},{"id":455,"name":"2fa6cb0776995363c2a2ae7d57ac3845455","type":4558},{"id":456,"name":"9a96876e2f8f3dc4f3cf45f02c61c0c1456","type":9906},{"id":457,"name":"37f0e884fbad9667e38940169d0a3c95457","type":4205},{"id":458,"name":"ce5d75028d92047a9ec617acb9c34ce6458","type":4744},{"id":459,"name":"d800149d2f947ad4d64f34668f8b20f6459","type":8517},{"id":460,"name":"52c409f1571f500e28f490a302a12540460","type":9709},{"id":461,"name":"13fe9d84310e77f13a6d184dbf1232f3461","type":7188},{"id":462,"name":"d93591bdf7860e1e4ee2fca799911215462","type":2009},{"id":463,"name":"5ec91aac30eae62f4140325d09b9afd0463","type":4904},{"id":464,"name":"6cd67d9b6f0150c77bda2eda01ae484c464","type":3813},{"id":465,"name":"d1d5923fc822531bbfd9d87d4760914b465","type":1351},{"id":466,"name":"bf4d73f316737b26f1e860da0ea63ec8466","type":2319},{"id":467,"name":"05ae14d7ae387b93370d142d82220f1b467","type":1214},{"id":468,"name":"71ee911dd06428a96c143a0b135041a4468","type":9704},{"id":469,"name":"0a87257e5308197df43230edf4ad1dae469","type":4178},{"id":470,"name":"1906f3350e1fa43adced642ff351c943470","type":3175},{"id":471,"name":"1728efbda81692282ba642aafd57be3a471","type":4938},{"id":472,"name":"4fdaa19b1f22a4d926fce9bfc7c61fa5472","type":4901},{"id":473,"name":"4bbb5420ed2dc9a8eaaedc7ae59de448473","type":3181},{"id":474,"name":"1efa39bcaec6f3900149160693694536474","type":2080},{"id":475,"name":"fd69dbe29f156a7ef876a40a94f65599475","type":3589},{"id":476,"name":"58c54802a9fb9526cd0923353a34a7ae476","type":6889},{"id":477,"name":"274231193c4e40abc64d2f2d8cb6b415477","type":5852},{"id":478,"name":"0060ef47b12160b9198302ebdb144dcf478","type":6527},{"id":479,"name":"e834cb114d33f729dbc9c7fb0c6bb607479","type":4660},{"id":480,"name":"6ce1861d265248f9c9dd2ed2f88dbdf9480","type":3179},{"id":481,"name":"fc76150735dde1d2d860aeb77ee2009e481","type":9693},{"id":482,"name":"c255c05246a081654a0267cbb725f5a7482","type":4027},{"id":483,"name":"ef70e26a0b5da778eda3f48014d087cd483","type":5653},{"id":484,"name":"1a638db8311430c6c018bf21e1a0b7fb484","type":1264},{"id":485,"name":"f4492508850c58446d4784339470a8f6485","type":2217},{"id":486,"name":"0527b1b41d984cd95100beff3605d26e486","type":2073},{"id":487,"name":"770f8e448d07586afbf77bb59f698587487","type":4070},{"id":488,"name":"e7d6e2e80f0955c01f3e043ee79abbb6488","type":8638},{"id":489,"name":"d30960ce77e83d896503d43ba249caf7489","type":907},{"id":490,"name":"5b5c2e6aacc6ceb83ee96e328e591aea490","type":8159},{"id":491,"name":"eba0dc302bcd9a273f8bbb72be3a687b491","type":7404},{"id":492,"name":"243facb29564e7b448834a7c9d901201492","type":2820},{"id":493,"name":"ff84a9f3c0d335d25413dd8dfc9b2e8f493","type":3266},{"id":494,"name":"0b7a9d54deeb611edc4540d286e9a042494","type":9795},{"id":495,"name":"d296c101daa88a51f6ca8cfc1ac79b50495","type":3167},{"id":496,"name":"17326d10d511828f6b34fa6d751739e2496","type":1296},{"id":497,"name":"b5a1d925221b37e2e399f7b319038ba0497","type":6796},{"id":498,"name":"b7f1f29db7c23648f2bb8d6a8ee0469b498","type":4485},{"id":499,"name":"5938b4d054136e5d59ada6ec9c295d7a499","type":8843}]; + diff --git a/big_demo/data/zoom4.js b/big_demo/data/zoom4.js new file mode 100644 index 0000000..4f9e958 --- /dev/null +++ b/big_demo/data/zoom4.js @@ -0,0 +1 @@ +var zoom_4 = [{"top":58,"left":176,"height":380,"width":120,"title":"1","click":null},{"top":57,"left":310,"height":20,"width":20,"title":"2","click":null},{"top":57,"left":330,"height":20,"width":20,"title":"3","click":null},{"top":57,"left":350,"height":20,"width":20,"title":"4","click":null},{"top":57,"left":369,"height":20,"width":20,"title":"5","click":null},{"top":57,"left":389,"height":20,"width":20,"title":"6","click":null},{"top":57,"left":409,"height":20,"width":20,"title":"7","click":null},{"top":57,"left":427,"height":20,"width":20,"title":"8","click":null},{"top":63,"left":466,"height":50,"width":100,"title":"9","click":null},{"top":54,"left":579,"height":60,"width":100,"title":"10","click":null},{"top":59,"left":740,"height":20,"width":20,"title":"11","click":null},{"top":60,"left":767,"height":20,"width":20,"title":"12","click":null},{"top":60,"left":790,"height":20,"width":20,"title":"13","click":null},{"top":60,"left":815,"height":20,"width":20,"title":"14","click":null},{"top":58,"left":843,"height":20,"width":20,"title":"15","click":null},{"top":57,"left":868,"height":20,"width":20,"title":"16","click":null},{"top":57,"left":894,"height":20,"width":20,"title":"17","click":null},{"top":90,"left":309,"height":40,"width":50,"title":"18","click":null},{"top":90,"left":359,"height":40,"width":50,"title":"19","click":null},{"top":130,"left":310,"height":40,"width":50,"title":"20","click":null},{"top":129,"left":360,"height":40,"width":50,"title":"21","click":null},{"top":126,"left":419,"height":40,"width":60,"title":"22","click":null},{"top":126,"left":479,"height":40,"width":60,"title":"23","click":null},{"top":172,"left":309,"height":50,"width":45,"title":"24","click":null},{"top":222,"left":308,"height":50,"width":45,"title":"25","click":null},{"top":173,"left":354,"height":100,"width":50,"title":"26","click":null},{"top":280,"left":312,"height":50,"width":45,"title":"27","click":null},{"top":281,"left":358,"height":50,"width":50,"title":"28","click":null},{"top":331,"left":310,"height":50,"width":50,"title":"29","click":null},{"top":332,"left":357,"height":50,"width":50,"title":"30","click":null},{"top":399,"left":304,"height":20,"width":20,"title":"31","click":null},{"top":399,"left":325,"height":20,"width":20,"title":"32","click":null},{"top":398,"left":346,"height":20,"width":20,"title":"33","click":null},{"top":398,"left":367,"height":20,"width":20,"title":"34","click":null},{"top":399,"left":388,"height":20,"width":20,"title":"35","click":null},{"top":399,"left":470,"height":20,"width":20,"title":"36","click":null},{"top":398,"left":490,"height":20,"width":20,"title":"37","click":null},{"top":398,"left":511,"height":20,"width":20,"title":"38","click":null},{"top":398,"left":531,"height":20,"width":20,"title":"39","click":null},{"top":398,"left":550,"height":20,"width":20,"title":"40","click":null},{"top":398,"left":570,"height":20,"width":20,"title":"41","click":null},{"top":397,"left":590,"height":20,"width":20,"title":"42","click":null},{"top":398,"left":611,"height":20,"width":20,"title":"43","click":null},{"top":397,"left":631,"height":20,"width":20,"title":"44","click":null},{"top":397,"left":650,"height":20,"width":20,"title":"45","click":null},{"top":397,"left":670,"height":20,"width":20,"title":"46","click":null},{"top":396,"left":709,"height":20,"width":20,"title":"47","click":null},{"top":395,"left":730,"height":20,"width":20,"title":"48","click":null},{"top":396,"left":750,"height":20,"width":20,"title":"50","click":null},{"top":396,"left":769,"height":20,"width":20,"title":"51","click":null},{"top":396,"left":789,"height":20,"width":20,"title":"52","click":null},{"top":395,"left":809,"height":20,"width":20,"title":"53","click":null},{"top":396,"left":829,"height":20,"width":20,"title":"54","click":null},{"top":395,"left":850,"height":20,"width":20,"title":"55","click":null},{"top":396,"left":870,"height":20,"width":20,"title":"56","click":null},{"top":396,"left":890,"height":20,"width":20,"title":"57","click":null},{"top":128,"left":551,"height":40,"width":40,"title":"58","click":null},{"top":128,"left":589,"height":40,"width":40,"title":"59","click":null},{"top":125,"left":632,"height":40,"width":40,"title":"60","click":null},{"top":125,"left":668,"height":40,"width":40,"title":"61","click":null},{"top":307,"left":418,"height":40,"width":50,"title":"62","click":null},{"top":346,"left":418,"height":40,"width":50,"title":"63","click":null},{"top":174,"left":418,"height":30,"width":20,"title":"64","click":null},{"top":174,"left":438,"height":30,"width":20,"title":"65","click":null},{"top":174,"left":456,"height":30,"width":20,"title":"66","click":null},{"top":173,"left":482,"height":30,"width":20,"title":"67","click":null},{"top":174,"left":501,"height":30,"width":20,"title":"68","click":null},{"top":174,"left":521,"height":30,"width":20,"title":"69","click":null},{"top":173,"left":553,"height":60,"width":70,"title":"70","click":null},{"top":203,"left":417,"height":60,"width":40,"title":"71","click":null},{"top":203,"left":451,"height":60,"width":60,"title":"72","click":null},{"top":203,"left":510,"height":60,"width":30,"title":"73","click":null},{"top":263,"left":417,"height":30,"width":40,"title":"74","click":null},{"top":263,"left":453,"height":30,"width":20,"title":"75","click":null},{"top":263,"left":483,"height":30,"width":20,"title":"76","click":null},{"top":263,"left":502,"height":30,"width":40,"title":"77","click":null},{"top":305,"left":476,"height":30,"width":30,"title":"78","click":null},{"top":304,"left":507,"height":30,"width":30,"title":"79","click":null},{"top":334,"left":476,"height":50,"width":30,"title":"80","click":null},{"top":334,"left":507,"height":50,"width":30,"title":"81","click":null},{"top":241,"left":552,"height":50,"width":80,"title":"82","click":null},{"top":306,"left":551,"height":40,"width":50,"title":"82","click":null},{"top":305,"left":601,"height":40,"width":50,"title":"83","click":null},{"top":346,"left":551,"height":40,"width":50,"title":"84","click":null},{"top":345,"left":601,"height":40,"width":50,"title":"85","click":null},{"top":93,"left":713,"height":30,"width":30,"title":"86","click":null},{"top":94,"left":745,"height":30,"width":30,"title":"87","click":null},{"top":124,"left":714,"height":30,"width":30,"title":"88","click":null},{"top":125,"left":744,"height":30,"width":30,"title":"89","click":null},{"top":95,"left":789,"height":30,"width":20,"title":"90","click":null},{"top":92,"left":819,"height":30,"width":20,"title":"91","click":null},{"top":94,"left":851,"height":30,"width":20,"title":"92","click":null},{"top":127,"left":789,"height":30,"width":20,"title":"93","click":null},{"top":126,"left":818,"height":30,"width":20,"title":"94","click":null},{"top":128,"left":848,"height":30,"width":20,"title":"95","click":null},{"top":94,"left":884,"height":30,"width":30,"title":"96","click":null},{"top":93,"left":922,"height":30,"width":30,"title":"97","click":null},{"top":125,"left":884,"height":30,"width":30,"title":"98","click":null},{"top":124,"left":918,"height":30,"width":30,"title":"99","click":null},{"top":172,"left":637,"height":20,"width":50,"title":"100","click":null},{"top":192,"left":638,"height":40,"width":50,"title":"101","click":null},{"top":172,"left":687,"height":60,"width":50,"title":"102","click":null},{"top":241,"left":637,"height":50,"width":60,"title":"103","click":null},{"top":241,"left":696,"height":20,"width":40,"title":"104","click":null},{"top":260,"left":698,"height":30,"width":40,"title":"105","click":null},{"top":306,"left":666,"height":40,"width":60,"title":"106","click":null},{"top":345,"left":667,"height":40,"width":60,"title":"107","click":null},{"top":305,"left":726,"height":80,"width":50,"title":"108","click":null},{"top":171,"left":752,"height":120,"width":90,"title":"110","click":null},{"top":171,"left":842,"height":120,"width":30,"title":"111","click":null},{"top":306,"left":790,"height":80,"width":80,"title":"112","click":null},{"top":173,"left":886,"height":60,"width":60,"title":"113","click":null},{"top":233,"left":887,"height":60,"width":60,"title":"114","click":null},{"top":309,"left":885,"height":40,"width":60,"title":"115","click":null},{"top":349,"left":885,"height":40,"width":60,"title":"116","click":null}] diff --git a/big_demo/i/ajax-loader.gif b/big_demo/i/ajax-loader.gif new file mode 100644 index 0000000..fd1a189 Binary files /dev/null and b/big_demo/i/ajax-loader.gif differ diff --git a/big_demo/i/ajax-loader.png b/big_demo/i/ajax-loader.png new file mode 100644 index 0000000..13b208d Binary files /dev/null and b/big_demo/i/ajax-loader.png differ diff --git a/big_demo/i/all.png b/big_demo/i/all.png new file mode 100644 index 0000000..75f0820 Binary files /dev/null and b/big_demo/i/all.png differ diff --git a/big_demo/i/b1/b1_000_000_000.jpg b/big_demo/i/b1/b1_000_000_000.jpg new file mode 100644 index 0000000..70af85b Binary files /dev/null and b/big_demo/i/b1/b1_000_000_000.jpg differ diff --git a/big_demo/i/b1/b1_000_000_001.jpg b/big_demo/i/b1/b1_000_000_001.jpg new file mode 100644 index 0000000..c67a781 Binary files /dev/null and b/big_demo/i/b1/b1_000_000_001.jpg differ diff --git a/big_demo/i/b1/b1_000_000_002.jpg b/big_demo/i/b1/b1_000_000_002.jpg new file mode 100644 index 0000000..d488970 Binary files /dev/null and b/big_demo/i/b1/b1_000_000_002.jpg differ diff --git a/big_demo/i/b1/b1_000_000_003.jpg b/big_demo/i/b1/b1_000_000_003.jpg new file mode 100644 index 0000000..10d676d Binary files /dev/null and b/big_demo/i/b1/b1_000_000_003.jpg differ diff --git a/big_demo/i/b1/b1_000_000_004.jpg b/big_demo/i/b1/b1_000_000_004.jpg new file mode 100644 index 0000000..c078c24 Binary files /dev/null and b/big_demo/i/b1/b1_000_000_004.jpg differ diff --git a/big_demo/i/b1/b1_000_000_005.jpg b/big_demo/i/b1/b1_000_000_005.jpg new file mode 100644 index 0000000..1754072 Binary files /dev/null and b/big_demo/i/b1/b1_000_000_005.jpg differ diff --git a/big_demo/i/b1/b1_000_000_006.jpg b/big_demo/i/b1/b1_000_000_006.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_000_006.jpg differ diff --git a/big_demo/i/b1/b1_000_000_007.jpg b/big_demo/i/b1/b1_000_000_007.jpg new file mode 100644 index 0000000..3433ccc Binary files /dev/null and b/big_demo/i/b1/b1_000_000_007.jpg differ diff --git a/big_demo/i/b1/b1_000_000_008.jpg b/big_demo/i/b1/b1_000_000_008.jpg new file mode 100644 index 0000000..1582bbc Binary files /dev/null and b/big_demo/i/b1/b1_000_000_008.jpg differ diff --git a/big_demo/i/b1/b1_000_001_000.jpg b/big_demo/i/b1/b1_000_001_000.jpg new file mode 100644 index 0000000..eab13bc Binary files /dev/null and b/big_demo/i/b1/b1_000_001_000.jpg differ diff --git a/big_demo/i/b1/b1_000_001_001.jpg b/big_demo/i/b1/b1_000_001_001.jpg new file mode 100644 index 0000000..ffdc9cc Binary files /dev/null and b/big_demo/i/b1/b1_000_001_001.jpg differ diff --git a/big_demo/i/b1/b1_000_001_002.jpg b/big_demo/i/b1/b1_000_001_002.jpg new file mode 100644 index 0000000..ad53dbd Binary files /dev/null and b/big_demo/i/b1/b1_000_001_002.jpg differ diff --git a/big_demo/i/b1/b1_000_001_003.jpg b/big_demo/i/b1/b1_000_001_003.jpg new file mode 100644 index 0000000..26cc0c0 Binary files /dev/null and b/big_demo/i/b1/b1_000_001_003.jpg differ diff --git a/big_demo/i/b1/b1_000_001_004.jpg b/big_demo/i/b1/b1_000_001_004.jpg new file mode 100644 index 0000000..1e6bbbb Binary files /dev/null and b/big_demo/i/b1/b1_000_001_004.jpg differ diff --git a/big_demo/i/b1/b1_000_001_005.jpg b/big_demo/i/b1/b1_000_001_005.jpg new file mode 100644 index 0000000..e0a6efa Binary files /dev/null and b/big_demo/i/b1/b1_000_001_005.jpg differ diff --git a/big_demo/i/b1/b1_000_001_006.jpg b/big_demo/i/b1/b1_000_001_006.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_001_006.jpg differ diff --git a/big_demo/i/b1/b1_000_001_007.jpg b/big_demo/i/b1/b1_000_001_007.jpg new file mode 100644 index 0000000..0338545 Binary files /dev/null and b/big_demo/i/b1/b1_000_001_007.jpg differ diff --git a/big_demo/i/b1/b1_000_001_008.jpg b/big_demo/i/b1/b1_000_001_008.jpg new file mode 100644 index 0000000..1582bbc Binary files /dev/null and b/big_demo/i/b1/b1_000_001_008.jpg differ diff --git a/big_demo/i/b1/b1_000_002_000.jpg b/big_demo/i/b1/b1_000_002_000.jpg new file mode 100644 index 0000000..36f5955 Binary files /dev/null and b/big_demo/i/b1/b1_000_002_000.jpg differ diff --git a/big_demo/i/b1/b1_000_002_001.jpg b/big_demo/i/b1/b1_000_002_001.jpg new file mode 100644 index 0000000..b7a52b3 Binary files /dev/null and b/big_demo/i/b1/b1_000_002_001.jpg differ diff --git a/big_demo/i/b1/b1_000_002_002.jpg b/big_demo/i/b1/b1_000_002_002.jpg new file mode 100644 index 0000000..a1bcd56 Binary files /dev/null and b/big_demo/i/b1/b1_000_002_002.jpg differ diff --git a/big_demo/i/b1/b1_000_002_003.jpg b/big_demo/i/b1/b1_000_002_003.jpg new file mode 100644 index 0000000..3563277 Binary files /dev/null and b/big_demo/i/b1/b1_000_002_003.jpg differ diff --git a/big_demo/i/b1/b1_000_002_004.jpg b/big_demo/i/b1/b1_000_002_004.jpg new file mode 100644 index 0000000..41a60a2 Binary files /dev/null and b/big_demo/i/b1/b1_000_002_004.jpg differ diff --git a/big_demo/i/b1/b1_000_002_005.jpg b/big_demo/i/b1/b1_000_002_005.jpg new file mode 100644 index 0000000..d5f1f8e Binary files /dev/null and b/big_demo/i/b1/b1_000_002_005.jpg differ diff --git a/big_demo/i/b1/b1_000_002_006.jpg b/big_demo/i/b1/b1_000_002_006.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_002_006.jpg differ diff --git a/big_demo/i/b1/b1_000_002_007.jpg b/big_demo/i/b1/b1_000_002_007.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_002_007.jpg differ diff --git a/big_demo/i/b1/b1_000_002_008.jpg b/big_demo/i/b1/b1_000_002_008.jpg new file mode 100644 index 0000000..1582bbc Binary files /dev/null and b/big_demo/i/b1/b1_000_002_008.jpg differ diff --git a/big_demo/i/b1/b1_000_003_000.jpg b/big_demo/i/b1/b1_000_003_000.jpg new file mode 100644 index 0000000..17b40d4 Binary files /dev/null and b/big_demo/i/b1/b1_000_003_000.jpg differ diff --git a/big_demo/i/b1/b1_000_003_001.jpg b/big_demo/i/b1/b1_000_003_001.jpg new file mode 100644 index 0000000..48e9546 Binary files /dev/null and b/big_demo/i/b1/b1_000_003_001.jpg differ diff --git a/big_demo/i/b1/b1_000_003_002.jpg b/big_demo/i/b1/b1_000_003_002.jpg new file mode 100644 index 0000000..e00ebdd Binary files /dev/null and b/big_demo/i/b1/b1_000_003_002.jpg differ diff --git a/big_demo/i/b1/b1_000_003_003.jpg b/big_demo/i/b1/b1_000_003_003.jpg new file mode 100644 index 0000000..140e18c Binary files /dev/null and b/big_demo/i/b1/b1_000_003_003.jpg differ diff --git a/big_demo/i/b1/b1_000_003_004.jpg b/big_demo/i/b1/b1_000_003_004.jpg new file mode 100644 index 0000000..d5aabfa Binary files /dev/null and b/big_demo/i/b1/b1_000_003_004.jpg differ diff --git a/big_demo/i/b1/b1_000_003_005.jpg b/big_demo/i/b1/b1_000_003_005.jpg new file mode 100644 index 0000000..c7e6952 Binary files /dev/null and b/big_demo/i/b1/b1_000_003_005.jpg differ diff --git a/big_demo/i/b1/b1_000_003_006.jpg b/big_demo/i/b1/b1_000_003_006.jpg new file mode 100644 index 0000000..14f1386 Binary files /dev/null and b/big_demo/i/b1/b1_000_003_006.jpg differ diff --git a/big_demo/i/b1/b1_000_003_007.jpg b/big_demo/i/b1/b1_000_003_007.jpg new file mode 100644 index 0000000..2805806 Binary files /dev/null and b/big_demo/i/b1/b1_000_003_007.jpg differ diff --git a/big_demo/i/b1/b1_000_003_008.jpg b/big_demo/i/b1/b1_000_003_008.jpg new file mode 100644 index 0000000..9744b5a Binary files /dev/null and b/big_demo/i/b1/b1_000_003_008.jpg differ diff --git a/big_demo/i/b1/b1_000_004_000.jpg b/big_demo/i/b1/b1_000_004_000.jpg new file mode 100644 index 0000000..f715560 Binary files /dev/null and b/big_demo/i/b1/b1_000_004_000.jpg differ diff --git a/big_demo/i/b1/b1_000_004_001.jpg b/big_demo/i/b1/b1_000_004_001.jpg new file mode 100644 index 0000000..82f5899 Binary files /dev/null and b/big_demo/i/b1/b1_000_004_001.jpg differ diff --git a/big_demo/i/b1/b1_000_004_002.jpg b/big_demo/i/b1/b1_000_004_002.jpg new file mode 100644 index 0000000..9768b1c Binary files /dev/null and b/big_demo/i/b1/b1_000_004_002.jpg differ diff --git a/big_demo/i/b1/b1_000_004_003.jpg b/big_demo/i/b1/b1_000_004_003.jpg new file mode 100644 index 0000000..9768b1c Binary files /dev/null and b/big_demo/i/b1/b1_000_004_003.jpg differ diff --git a/big_demo/i/b1/b1_000_004_004.jpg b/big_demo/i/b1/b1_000_004_004.jpg new file mode 100644 index 0000000..afe9d14 Binary files /dev/null and b/big_demo/i/b1/b1_000_004_004.jpg differ diff --git a/big_demo/i/b1/b1_000_004_005.jpg b/big_demo/i/b1/b1_000_004_005.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_004_005.jpg differ diff --git a/big_demo/i/b1/b1_000_004_006.jpg b/big_demo/i/b1/b1_000_004_006.jpg new file mode 100644 index 0000000..588c187 Binary files /dev/null and b/big_demo/i/b1/b1_000_004_006.jpg differ diff --git a/big_demo/i/b1/b1_000_004_007.jpg b/big_demo/i/b1/b1_000_004_007.jpg new file mode 100644 index 0000000..4c7dc3b Binary files /dev/null and b/big_demo/i/b1/b1_000_004_007.jpg differ diff --git a/big_demo/i/b1/b1_000_004_008.jpg b/big_demo/i/b1/b1_000_004_008.jpg new file mode 100644 index 0000000..2c31b27 Binary files /dev/null and b/big_demo/i/b1/b1_000_004_008.jpg differ diff --git a/big_demo/i/b1/b1_000_005_000.jpg b/big_demo/i/b1/b1_000_005_000.jpg new file mode 100644 index 0000000..b09f8c9 Binary files /dev/null and b/big_demo/i/b1/b1_000_005_000.jpg differ diff --git a/big_demo/i/b1/b1_000_005_001.jpg b/big_demo/i/b1/b1_000_005_001.jpg new file mode 100644 index 0000000..388e5c7 Binary files /dev/null and b/big_demo/i/b1/b1_000_005_001.jpg differ diff --git a/big_demo/i/b1/b1_000_005_002.jpg b/big_demo/i/b1/b1_000_005_002.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_005_002.jpg differ diff --git a/big_demo/i/b1/b1_000_005_003.jpg b/big_demo/i/b1/b1_000_005_003.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_005_003.jpg differ diff --git a/big_demo/i/b1/b1_000_005_004.jpg b/big_demo/i/b1/b1_000_005_004.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_005_004.jpg differ diff --git a/big_demo/i/b1/b1_000_005_005.jpg b/big_demo/i/b1/b1_000_005_005.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_005_005.jpg differ diff --git a/big_demo/i/b1/b1_000_005_006.jpg b/big_demo/i/b1/b1_000_005_006.jpg new file mode 100644 index 0000000..1ad9ea4 Binary files /dev/null and b/big_demo/i/b1/b1_000_005_006.jpg differ diff --git a/big_demo/i/b1/b1_000_005_007.jpg b/big_demo/i/b1/b1_000_005_007.jpg new file mode 100644 index 0000000..85d28f8 Binary files /dev/null and b/big_demo/i/b1/b1_000_005_007.jpg differ diff --git a/big_demo/i/b1/b1_000_005_008.jpg b/big_demo/i/b1/b1_000_005_008.jpg new file mode 100644 index 0000000..982ae94 Binary files /dev/null and b/big_demo/i/b1/b1_000_005_008.jpg differ diff --git a/big_demo/i/b1/b1_000_006_000.jpg b/big_demo/i/b1/b1_000_006_000.jpg new file mode 100644 index 0000000..aa026db Binary files /dev/null and b/big_demo/i/b1/b1_000_006_000.jpg differ diff --git a/big_demo/i/b1/b1_000_006_001.jpg b/big_demo/i/b1/b1_000_006_001.jpg new file mode 100644 index 0000000..c2774b9 Binary files /dev/null and b/big_demo/i/b1/b1_000_006_001.jpg differ diff --git a/big_demo/i/b1/b1_000_006_002.jpg b/big_demo/i/b1/b1_000_006_002.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_006_002.jpg differ diff --git a/big_demo/i/b1/b1_000_006_003.jpg b/big_demo/i/b1/b1_000_006_003.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_006_003.jpg differ diff --git a/big_demo/i/b1/b1_000_006_004.jpg b/big_demo/i/b1/b1_000_006_004.jpg new file mode 100644 index 0000000..4d90d31 Binary files /dev/null and b/big_demo/i/b1/b1_000_006_004.jpg differ diff --git a/big_demo/i/b1/b1_000_006_005.jpg b/big_demo/i/b1/b1_000_006_005.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_006_005.jpg differ diff --git a/big_demo/i/b1/b1_000_006_006.jpg b/big_demo/i/b1/b1_000_006_006.jpg new file mode 100644 index 0000000..69bf3a2 Binary files /dev/null and b/big_demo/i/b1/b1_000_006_006.jpg differ diff --git a/big_demo/i/b1/b1_000_006_007.jpg b/big_demo/i/b1/b1_000_006_007.jpg new file mode 100644 index 0000000..7ba5601 Binary files /dev/null and b/big_demo/i/b1/b1_000_006_007.jpg differ diff --git a/big_demo/i/b1/b1_000_006_008.jpg b/big_demo/i/b1/b1_000_006_008.jpg new file mode 100644 index 0000000..27338bc Binary files /dev/null and b/big_demo/i/b1/b1_000_006_008.jpg differ diff --git a/big_demo/i/b1/b1_000_007_000.jpg b/big_demo/i/b1/b1_000_007_000.jpg new file mode 100644 index 0000000..e346824 Binary files /dev/null and b/big_demo/i/b1/b1_000_007_000.jpg differ diff --git a/big_demo/i/b1/b1_000_007_001.jpg b/big_demo/i/b1/b1_000_007_001.jpg new file mode 100644 index 0000000..a206db7 Binary files /dev/null and b/big_demo/i/b1/b1_000_007_001.jpg differ diff --git a/big_demo/i/b1/b1_000_007_002.jpg b/big_demo/i/b1/b1_000_007_002.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_007_002.jpg differ diff --git a/big_demo/i/b1/b1_000_007_003.jpg b/big_demo/i/b1/b1_000_007_003.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_007_003.jpg differ diff --git a/big_demo/i/b1/b1_000_007_004.jpg b/big_demo/i/b1/b1_000_007_004.jpg new file mode 100644 index 0000000..45e06f3 Binary files /dev/null and b/big_demo/i/b1/b1_000_007_004.jpg differ diff --git a/big_demo/i/b1/b1_000_007_005.jpg b/big_demo/i/b1/b1_000_007_005.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_007_005.jpg differ diff --git a/big_demo/i/b1/b1_000_007_006.jpg b/big_demo/i/b1/b1_000_007_006.jpg new file mode 100644 index 0000000..f6c7913 Binary files /dev/null and b/big_demo/i/b1/b1_000_007_006.jpg differ diff --git a/big_demo/i/b1/b1_000_007_007.jpg b/big_demo/i/b1/b1_000_007_007.jpg new file mode 100644 index 0000000..461913f Binary files /dev/null and b/big_demo/i/b1/b1_000_007_007.jpg differ diff --git a/big_demo/i/b1/b1_000_007_008.jpg b/big_demo/i/b1/b1_000_007_008.jpg new file mode 100644 index 0000000..b9c3b8a Binary files /dev/null and b/big_demo/i/b1/b1_000_007_008.jpg differ diff --git a/big_demo/i/b1/b1_000_008_000.jpg b/big_demo/i/b1/b1_000_008_000.jpg new file mode 100644 index 0000000..43a9b25 Binary files /dev/null and b/big_demo/i/b1/b1_000_008_000.jpg differ diff --git a/big_demo/i/b1/b1_000_008_001.jpg b/big_demo/i/b1/b1_000_008_001.jpg new file mode 100644 index 0000000..741c6df Binary files /dev/null and b/big_demo/i/b1/b1_000_008_001.jpg differ diff --git a/big_demo/i/b1/b1_000_008_002.jpg b/big_demo/i/b1/b1_000_008_002.jpg new file mode 100644 index 0000000..930c11a Binary files /dev/null and b/big_demo/i/b1/b1_000_008_002.jpg differ diff --git a/big_demo/i/b1/b1_000_008_003.jpg b/big_demo/i/b1/b1_000_008_003.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_008_003.jpg differ diff --git a/big_demo/i/b1/b1_000_008_004.jpg b/big_demo/i/b1/b1_000_008_004.jpg new file mode 100644 index 0000000..ff165ed Binary files /dev/null and b/big_demo/i/b1/b1_000_008_004.jpg differ diff --git a/big_demo/i/b1/b1_000_008_005.jpg b/big_demo/i/b1/b1_000_008_005.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_008_005.jpg differ diff --git a/big_demo/i/b1/b1_000_008_006.jpg b/big_demo/i/b1/b1_000_008_006.jpg new file mode 100644 index 0000000..a730e7f Binary files /dev/null and b/big_demo/i/b1/b1_000_008_006.jpg differ diff --git a/big_demo/i/b1/b1_000_008_007.jpg b/big_demo/i/b1/b1_000_008_007.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_008_007.jpg differ diff --git a/big_demo/i/b1/b1_000_008_008.jpg b/big_demo/i/b1/b1_000_008_008.jpg new file mode 100644 index 0000000..1582bbc Binary files /dev/null and b/big_demo/i/b1/b1_000_008_008.jpg differ diff --git a/big_demo/i/b1/b1_000_009_000.jpg b/big_demo/i/b1/b1_000_009_000.jpg new file mode 100644 index 0000000..119d6fe Binary files /dev/null and b/big_demo/i/b1/b1_000_009_000.jpg differ diff --git a/big_demo/i/b1/b1_000_009_001.jpg b/big_demo/i/b1/b1_000_009_001.jpg new file mode 100644 index 0000000..2f977ea Binary files /dev/null and b/big_demo/i/b1/b1_000_009_001.jpg differ diff --git a/big_demo/i/b1/b1_000_009_002.jpg b/big_demo/i/b1/b1_000_009_002.jpg new file mode 100644 index 0000000..2978d1c Binary files /dev/null and b/big_demo/i/b1/b1_000_009_002.jpg differ diff --git a/big_demo/i/b1/b1_000_009_003.jpg b/big_demo/i/b1/b1_000_009_003.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_009_003.jpg differ diff --git a/big_demo/i/b1/b1_000_009_004.jpg b/big_demo/i/b1/b1_000_009_004.jpg new file mode 100644 index 0000000..2032d75 Binary files /dev/null and b/big_demo/i/b1/b1_000_009_004.jpg differ diff --git a/big_demo/i/b1/b1_000_009_005.jpg b/big_demo/i/b1/b1_000_009_005.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_009_005.jpg differ diff --git a/big_demo/i/b1/b1_000_009_006.jpg b/big_demo/i/b1/b1_000_009_006.jpg new file mode 100644 index 0000000..a730e7f Binary files /dev/null and b/big_demo/i/b1/b1_000_009_006.jpg differ diff --git a/big_demo/i/b1/b1_000_009_007.jpg b/big_demo/i/b1/b1_000_009_007.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_009_007.jpg differ diff --git a/big_demo/i/b1/b1_000_009_008.jpg b/big_demo/i/b1/b1_000_009_008.jpg new file mode 100644 index 0000000..1582bbc Binary files /dev/null and b/big_demo/i/b1/b1_000_009_008.jpg differ diff --git a/big_demo/i/b1/b1_000_010_000.jpg b/big_demo/i/b1/b1_000_010_000.jpg new file mode 100644 index 0000000..918f3b3 Binary files /dev/null and b/big_demo/i/b1/b1_000_010_000.jpg differ diff --git a/big_demo/i/b1/b1_000_010_001.jpg b/big_demo/i/b1/b1_000_010_001.jpg new file mode 100644 index 0000000..23d23f9 Binary files /dev/null and b/big_demo/i/b1/b1_000_010_001.jpg differ diff --git a/big_demo/i/b1/b1_000_010_002.jpg b/big_demo/i/b1/b1_000_010_002.jpg new file mode 100644 index 0000000..2978d1c Binary files /dev/null and b/big_demo/i/b1/b1_000_010_002.jpg differ diff --git a/big_demo/i/b1/b1_000_010_003.jpg b/big_demo/i/b1/b1_000_010_003.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_010_003.jpg differ diff --git a/big_demo/i/b1/b1_000_010_004.jpg b/big_demo/i/b1/b1_000_010_004.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_010_004.jpg differ diff --git a/big_demo/i/b1/b1_000_010_005.jpg b/big_demo/i/b1/b1_000_010_005.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_010_005.jpg differ diff --git a/big_demo/i/b1/b1_000_010_006.jpg b/big_demo/i/b1/b1_000_010_006.jpg new file mode 100644 index 0000000..a730e7f Binary files /dev/null and b/big_demo/i/b1/b1_000_010_006.jpg differ diff --git a/big_demo/i/b1/b1_000_010_007.jpg b/big_demo/i/b1/b1_000_010_007.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_010_007.jpg differ diff --git a/big_demo/i/b1/b1_000_010_008.jpg b/big_demo/i/b1/b1_000_010_008.jpg new file mode 100644 index 0000000..1582bbc Binary files /dev/null and b/big_demo/i/b1/b1_000_010_008.jpg differ diff --git a/big_demo/i/b1/b1_000_011_000.jpg b/big_demo/i/b1/b1_000_011_000.jpg new file mode 100644 index 0000000..05e1602 Binary files /dev/null and b/big_demo/i/b1/b1_000_011_000.jpg differ diff --git a/big_demo/i/b1/b1_000_011_001.jpg b/big_demo/i/b1/b1_000_011_001.jpg new file mode 100644 index 0000000..5a0f9f5 Binary files /dev/null and b/big_demo/i/b1/b1_000_011_001.jpg differ diff --git a/big_demo/i/b1/b1_000_011_002.jpg b/big_demo/i/b1/b1_000_011_002.jpg new file mode 100644 index 0000000..46395f8 Binary files /dev/null and b/big_demo/i/b1/b1_000_011_002.jpg differ diff --git a/big_demo/i/b1/b1_000_011_003.jpg b/big_demo/i/b1/b1_000_011_003.jpg new file mode 100644 index 0000000..6217ca4 Binary files /dev/null and b/big_demo/i/b1/b1_000_011_003.jpg differ diff --git a/big_demo/i/b1/b1_000_011_004.jpg b/big_demo/i/b1/b1_000_011_004.jpg new file mode 100644 index 0000000..6217ca4 Binary files /dev/null and b/big_demo/i/b1/b1_000_011_004.jpg differ diff --git a/big_demo/i/b1/b1_000_011_005.jpg b/big_demo/i/b1/b1_000_011_005.jpg new file mode 100644 index 0000000..6217ca4 Binary files /dev/null and b/big_demo/i/b1/b1_000_011_005.jpg differ diff --git a/big_demo/i/b1/b1_000_011_006.jpg b/big_demo/i/b1/b1_000_011_006.jpg new file mode 100644 index 0000000..adf9b37 Binary files /dev/null and b/big_demo/i/b1/b1_000_011_006.jpg differ diff --git a/big_demo/i/b1/b1_000_011_007.jpg b/big_demo/i/b1/b1_000_011_007.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_000_011_007.jpg differ diff --git a/big_demo/i/b1/b1_000_011_008.jpg b/big_demo/i/b1/b1_000_011_008.jpg new file mode 100644 index 0000000..1582bbc Binary files /dev/null and b/big_demo/i/b1/b1_000_011_008.jpg differ diff --git a/big_demo/i/b1/b1_000_012_000.jpg b/big_demo/i/b1/b1_000_012_000.jpg new file mode 100644 index 0000000..93e1f45 Binary files /dev/null and b/big_demo/i/b1/b1_000_012_000.jpg differ diff --git a/big_demo/i/b1/b1_000_012_001.jpg b/big_demo/i/b1/b1_000_012_001.jpg new file mode 100644 index 0000000..a8beb3c Binary files /dev/null and b/big_demo/i/b1/b1_000_012_001.jpg differ diff --git a/big_demo/i/b1/b1_000_012_002.jpg b/big_demo/i/b1/b1_000_012_002.jpg new file mode 100644 index 0000000..a8beb3c Binary files /dev/null and b/big_demo/i/b1/b1_000_012_002.jpg differ diff --git a/big_demo/i/b1/b1_000_012_003.jpg b/big_demo/i/b1/b1_000_012_003.jpg new file mode 100644 index 0000000..a8beb3c Binary files /dev/null and b/big_demo/i/b1/b1_000_012_003.jpg differ diff --git a/big_demo/i/b1/b1_000_012_004.jpg b/big_demo/i/b1/b1_000_012_004.jpg new file mode 100644 index 0000000..a8beb3c Binary files /dev/null and b/big_demo/i/b1/b1_000_012_004.jpg differ diff --git a/big_demo/i/b1/b1_000_012_005.jpg b/big_demo/i/b1/b1_000_012_005.jpg new file mode 100644 index 0000000..a8beb3c Binary files /dev/null and b/big_demo/i/b1/b1_000_012_005.jpg differ diff --git a/big_demo/i/b1/b1_000_012_006.jpg b/big_demo/i/b1/b1_000_012_006.jpg new file mode 100644 index 0000000..a8beb3c Binary files /dev/null and b/big_demo/i/b1/b1_000_012_006.jpg differ diff --git a/big_demo/i/b1/b1_000_012_007.jpg b/big_demo/i/b1/b1_000_012_007.jpg new file mode 100644 index 0000000..a8beb3c Binary files /dev/null and b/big_demo/i/b1/b1_000_012_007.jpg differ diff --git a/big_demo/i/b1/b1_000_012_008.jpg b/big_demo/i/b1/b1_000_012_008.jpg new file mode 100644 index 0000000..a1ac5c8 Binary files /dev/null and b/big_demo/i/b1/b1_000_012_008.jpg differ diff --git a/big_demo/i/b1/b1_001_000_000.jpg b/big_demo/i/b1/b1_001_000_000.jpg new file mode 100644 index 0000000..1c081d8 Binary files /dev/null and b/big_demo/i/b1/b1_001_000_000.jpg differ diff --git a/big_demo/i/b1/b1_001_000_001.jpg b/big_demo/i/b1/b1_001_000_001.jpg new file mode 100644 index 0000000..37fa437 Binary files /dev/null and b/big_demo/i/b1/b1_001_000_001.jpg differ diff --git a/big_demo/i/b1/b1_001_000_002.jpg b/big_demo/i/b1/b1_001_000_002.jpg new file mode 100644 index 0000000..0b5bafc Binary files /dev/null and b/big_demo/i/b1/b1_001_000_002.jpg differ diff --git a/big_demo/i/b1/b1_001_000_003.jpg b/big_demo/i/b1/b1_001_000_003.jpg new file mode 100644 index 0000000..8234626 Binary files /dev/null and b/big_demo/i/b1/b1_001_000_003.jpg differ diff --git a/big_demo/i/b1/b1_001_000_004.jpg b/big_demo/i/b1/b1_001_000_004.jpg new file mode 100644 index 0000000..5cad464 Binary files /dev/null and b/big_demo/i/b1/b1_001_000_004.jpg differ diff --git a/big_demo/i/b1/b1_001_001_000.jpg b/big_demo/i/b1/b1_001_001_000.jpg new file mode 100644 index 0000000..d96b07a Binary files /dev/null and b/big_demo/i/b1/b1_001_001_000.jpg differ diff --git a/big_demo/i/b1/b1_001_001_001.jpg b/big_demo/i/b1/b1_001_001_001.jpg new file mode 100644 index 0000000..d175a8b Binary files /dev/null and b/big_demo/i/b1/b1_001_001_001.jpg differ diff --git a/big_demo/i/b1/b1_001_001_002.jpg b/big_demo/i/b1/b1_001_001_002.jpg new file mode 100644 index 0000000..8470f0e Binary files /dev/null and b/big_demo/i/b1/b1_001_001_002.jpg differ diff --git a/big_demo/i/b1/b1_001_001_003.jpg b/big_demo/i/b1/b1_001_001_003.jpg new file mode 100644 index 0000000..cb99bb2 Binary files /dev/null and b/big_demo/i/b1/b1_001_001_003.jpg differ diff --git a/big_demo/i/b1/b1_001_001_004.jpg b/big_demo/i/b1/b1_001_001_004.jpg new file mode 100644 index 0000000..a36028b Binary files /dev/null and b/big_demo/i/b1/b1_001_001_004.jpg differ diff --git a/big_demo/i/b1/b1_001_002_000.jpg b/big_demo/i/b1/b1_001_002_000.jpg new file mode 100644 index 0000000..224fe25 Binary files /dev/null and b/big_demo/i/b1/b1_001_002_000.jpg differ diff --git a/big_demo/i/b1/b1_001_002_001.jpg b/big_demo/i/b1/b1_001_002_001.jpg new file mode 100644 index 0000000..aed2f33 Binary files /dev/null and b/big_demo/i/b1/b1_001_002_001.jpg differ diff --git a/big_demo/i/b1/b1_001_002_002.jpg b/big_demo/i/b1/b1_001_002_002.jpg new file mode 100644 index 0000000..e48e215 Binary files /dev/null and b/big_demo/i/b1/b1_001_002_002.jpg differ diff --git a/big_demo/i/b1/b1_001_002_003.jpg b/big_demo/i/b1/b1_001_002_003.jpg new file mode 100644 index 0000000..6ecac4b Binary files /dev/null and b/big_demo/i/b1/b1_001_002_003.jpg differ diff --git a/big_demo/i/b1/b1_001_002_004.jpg b/big_demo/i/b1/b1_001_002_004.jpg new file mode 100644 index 0000000..75fc62a Binary files /dev/null and b/big_demo/i/b1/b1_001_002_004.jpg differ diff --git a/big_demo/i/b1/b1_001_003_000.jpg b/big_demo/i/b1/b1_001_003_000.jpg new file mode 100644 index 0000000..eaa0fb0 Binary files /dev/null and b/big_demo/i/b1/b1_001_003_000.jpg differ diff --git a/big_demo/i/b1/b1_001_003_001.jpg b/big_demo/i/b1/b1_001_003_001.jpg new file mode 100644 index 0000000..3044a40 Binary files /dev/null and b/big_demo/i/b1/b1_001_003_001.jpg differ diff --git a/big_demo/i/b1/b1_001_003_002.jpg b/big_demo/i/b1/b1_001_003_002.jpg new file mode 100644 index 0000000..6f9fc9e Binary files /dev/null and b/big_demo/i/b1/b1_001_003_002.jpg differ diff --git a/big_demo/i/b1/b1_001_003_003.jpg b/big_demo/i/b1/b1_001_003_003.jpg new file mode 100644 index 0000000..83b8050 Binary files /dev/null and b/big_demo/i/b1/b1_001_003_003.jpg differ diff --git a/big_demo/i/b1/b1_001_003_004.jpg b/big_demo/i/b1/b1_001_003_004.jpg new file mode 100644 index 0000000..02b9add Binary files /dev/null and b/big_demo/i/b1/b1_001_003_004.jpg differ diff --git a/big_demo/i/b1/b1_001_004_000.jpg b/big_demo/i/b1/b1_001_004_000.jpg new file mode 100644 index 0000000..b8ee56a Binary files /dev/null and b/big_demo/i/b1/b1_001_004_000.jpg differ diff --git a/big_demo/i/b1/b1_001_004_001.jpg b/big_demo/i/b1/b1_001_004_001.jpg new file mode 100644 index 0000000..8d1e534 Binary files /dev/null and b/big_demo/i/b1/b1_001_004_001.jpg differ diff --git a/big_demo/i/b1/b1_001_004_002.jpg b/big_demo/i/b1/b1_001_004_002.jpg new file mode 100644 index 0000000..a404c0f Binary files /dev/null and b/big_demo/i/b1/b1_001_004_002.jpg differ diff --git a/big_demo/i/b1/b1_001_004_003.jpg b/big_demo/i/b1/b1_001_004_003.jpg new file mode 100644 index 0000000..3c1eb96 Binary files /dev/null and b/big_demo/i/b1/b1_001_004_003.jpg differ diff --git a/big_demo/i/b1/b1_001_004_004.jpg b/big_demo/i/b1/b1_001_004_004.jpg new file mode 100644 index 0000000..5cad464 Binary files /dev/null and b/big_demo/i/b1/b1_001_004_004.jpg differ diff --git a/big_demo/i/b1/b1_001_005_000.jpg b/big_demo/i/b1/b1_001_005_000.jpg new file mode 100644 index 0000000..3ace0b6 Binary files /dev/null and b/big_demo/i/b1/b1_001_005_000.jpg differ diff --git a/big_demo/i/b1/b1_001_005_001.jpg b/big_demo/i/b1/b1_001_005_001.jpg new file mode 100644 index 0000000..dfe2e30 Binary files /dev/null and b/big_demo/i/b1/b1_001_005_001.jpg differ diff --git a/big_demo/i/b1/b1_001_005_002.jpg b/big_demo/i/b1/b1_001_005_002.jpg new file mode 100644 index 0000000..9752876 Binary files /dev/null and b/big_demo/i/b1/b1_001_005_002.jpg differ diff --git a/big_demo/i/b1/b1_001_005_003.jpg b/big_demo/i/b1/b1_001_005_003.jpg new file mode 100644 index 0000000..b7a4823 Binary files /dev/null and b/big_demo/i/b1/b1_001_005_003.jpg differ diff --git a/big_demo/i/b1/b1_001_005_004.jpg b/big_demo/i/b1/b1_001_005_004.jpg new file mode 100644 index 0000000..5cad464 Binary files /dev/null and b/big_demo/i/b1/b1_001_005_004.jpg differ diff --git a/big_demo/i/b1/b1_001_006_000.jpg b/big_demo/i/b1/b1_001_006_000.jpg new file mode 100644 index 0000000..8ba3026 Binary files /dev/null and b/big_demo/i/b1/b1_001_006_000.jpg differ diff --git a/big_demo/i/b1/b1_001_006_001.jpg b/big_demo/i/b1/b1_001_006_001.jpg new file mode 100644 index 0000000..5ab260e Binary files /dev/null and b/big_demo/i/b1/b1_001_006_001.jpg differ diff --git a/big_demo/i/b1/b1_001_006_002.jpg b/big_demo/i/b1/b1_001_006_002.jpg new file mode 100644 index 0000000..5ab260e Binary files /dev/null and b/big_demo/i/b1/b1_001_006_002.jpg differ diff --git a/big_demo/i/b1/b1_001_006_003.jpg b/big_demo/i/b1/b1_001_006_003.jpg new file mode 100644 index 0000000..5ab260e Binary files /dev/null and b/big_demo/i/b1/b1_001_006_003.jpg differ diff --git a/big_demo/i/b1/b1_001_006_004.jpg b/big_demo/i/b1/b1_001_006_004.jpg new file mode 100644 index 0000000..c286c18 Binary files /dev/null and b/big_demo/i/b1/b1_001_006_004.jpg differ diff --git a/big_demo/i/b1/b1_002_000_000.jpg b/big_demo/i/b1/b1_002_000_000.jpg new file mode 100644 index 0000000..427268c Binary files /dev/null and b/big_demo/i/b1/b1_002_000_000.jpg differ diff --git a/big_demo/i/b1/b1_002_000_001.jpg b/big_demo/i/b1/b1_002_000_001.jpg new file mode 100644 index 0000000..b865d8d Binary files /dev/null and b/big_demo/i/b1/b1_002_000_001.jpg differ diff --git a/big_demo/i/b1/b1_002_000_002.jpg b/big_demo/i/b1/b1_002_000_002.jpg new file mode 100644 index 0000000..277d9fd Binary files /dev/null and b/big_demo/i/b1/b1_002_000_002.jpg differ diff --git a/big_demo/i/b1/b1_002_001_000.jpg b/big_demo/i/b1/b1_002_001_000.jpg new file mode 100644 index 0000000..9bf3b0c Binary files /dev/null and b/big_demo/i/b1/b1_002_001_000.jpg differ diff --git a/big_demo/i/b1/b1_002_001_001.jpg b/big_demo/i/b1/b1_002_001_001.jpg new file mode 100644 index 0000000..a0de04d Binary files /dev/null and b/big_demo/i/b1/b1_002_001_001.jpg differ diff --git a/big_demo/i/b1/b1_002_001_002.jpg b/big_demo/i/b1/b1_002_001_002.jpg new file mode 100644 index 0000000..fb34b08 Binary files /dev/null and b/big_demo/i/b1/b1_002_001_002.jpg differ diff --git a/big_demo/i/b1/b1_002_002_000.jpg b/big_demo/i/b1/b1_002_002_000.jpg new file mode 100644 index 0000000..efe75f9 Binary files /dev/null and b/big_demo/i/b1/b1_002_002_000.jpg differ diff --git a/big_demo/i/b1/b1_002_002_001.jpg b/big_demo/i/b1/b1_002_002_001.jpg new file mode 100644 index 0000000..3de77f2 Binary files /dev/null and b/big_demo/i/b1/b1_002_002_001.jpg differ diff --git a/big_demo/i/b1/b1_002_002_002.jpg b/big_demo/i/b1/b1_002_002_002.jpg new file mode 100644 index 0000000..3ae1dfe Binary files /dev/null and b/big_demo/i/b1/b1_002_002_002.jpg differ diff --git a/big_demo/i/b1/b1_002_003_000.jpg b/big_demo/i/b1/b1_002_003_000.jpg new file mode 100644 index 0000000..6b9c5ea Binary files /dev/null and b/big_demo/i/b1/b1_002_003_000.jpg differ diff --git a/big_demo/i/b1/b1_002_003_001.jpg b/big_demo/i/b1/b1_002_003_001.jpg new file mode 100644 index 0000000..03197a8 Binary files /dev/null and b/big_demo/i/b1/b1_002_003_001.jpg differ diff --git a/big_demo/i/b1/b1_002_003_002.jpg b/big_demo/i/b1/b1_002_003_002.jpg new file mode 100644 index 0000000..efbf554 Binary files /dev/null and b/big_demo/i/b1/b1_002_003_002.jpg differ diff --git a/big_demo/i/b1/b1_003_000_000.jpg b/big_demo/i/b1/b1_003_000_000.jpg new file mode 100644 index 0000000..3cfb8fe Binary files /dev/null and b/big_demo/i/b1/b1_003_000_000.jpg differ diff --git a/big_demo/i/b1/b1_003_000_001.jpg b/big_demo/i/b1/b1_003_000_001.jpg new file mode 100644 index 0000000..c001aee Binary files /dev/null and b/big_demo/i/b1/b1_003_000_001.jpg differ diff --git a/big_demo/i/b1/b1_003_001_000.jpg b/big_demo/i/b1/b1_003_001_000.jpg new file mode 100644 index 0000000..4a4fcc3 Binary files /dev/null and b/big_demo/i/b1/b1_003_001_000.jpg differ diff --git a/big_demo/i/b1/b1_003_001_001.jpg b/big_demo/i/b1/b1_003_001_001.jpg new file mode 100644 index 0000000..f327584 Binary files /dev/null and b/big_demo/i/b1/b1_003_001_001.jpg differ diff --git a/big_demo/i/b1/b1_004_000_000.jpg b/big_demo/i/b1/b1_004_000_000.jpg new file mode 100644 index 0000000..f7202c4 Binary files /dev/null and b/big_demo/i/b1/b1_004_000_000.jpg differ diff --git a/big_demo/i/blank.gif b/big_demo/i/blank.gif new file mode 100644 index 0000000..2536e4c Binary files /dev/null and b/big_demo/i/blank.gif differ diff --git a/big_demo/i/firms.png b/big_demo/i/firms.png new file mode 100644 index 0000000..4199f95 Binary files /dev/null and b/big_demo/i/firms.png differ diff --git a/big_demo/i/himim.png b/big_demo/i/himim.png new file mode 100644 index 0000000..6cf338e Binary files /dev/null and b/big_demo/i/himim.png differ diff --git a/big_demo/i/menubg.png b/big_demo/i/menubg.png new file mode 100644 index 0000000..b8c698d Binary files /dev/null and b/big_demo/i/menubg.png differ diff --git a/big_demo/i/panojs/16px_minus.png b/big_demo/i/panojs/16px_minus.png new file mode 100644 index 0000000..7172c3d Binary files /dev/null and b/big_demo/i/panojs/16px_minus.png differ diff --git a/big_demo/i/panojs/16px_plus.png b/big_demo/i/panojs/16px_plus.png new file mode 100644 index 0000000..be6478c Binary files /dev/null and b/big_demo/i/panojs/16px_plus.png differ diff --git a/big_demo/i/panojs/32px_11.png b/big_demo/i/panojs/32px_11.png new file mode 100644 index 0000000..9491e19 Binary files /dev/null and b/big_demo/i/panojs/32px_11.png differ diff --git a/big_demo/i/panojs/32px_minus.png b/big_demo/i/panojs/32px_minus.png new file mode 100644 index 0000000..59d115c Binary files /dev/null and b/big_demo/i/panojs/32px_minus.png differ diff --git a/big_demo/i/panojs/32px_plus.png b/big_demo/i/panojs/32px_plus.png new file mode 100644 index 0000000..410237c Binary files /dev/null and b/big_demo/i/panojs/32px_plus.png differ diff --git a/big_demo/i/panojs/32px_show.png b/big_demo/i/panojs/32px_show.png new file mode 100644 index 0000000..43adfbb Binary files /dev/null and b/big_demo/i/panojs/32px_show.png differ diff --git a/big_demo/i/panojs/64px_11.png b/big_demo/i/panojs/64px_11.png new file mode 100644 index 0000000..25480f9 Binary files /dev/null and b/big_demo/i/panojs/64px_11.png differ diff --git a/big_demo/i/panojs/64px_minus.png b/big_demo/i/panojs/64px_minus.png new file mode 100644 index 0000000..a7dbb85 Binary files /dev/null and b/big_demo/i/panojs/64px_minus.png differ diff --git a/big_demo/i/panojs/64px_plus.png b/big_demo/i/panojs/64px_plus.png new file mode 100644 index 0000000..fd18035 Binary files /dev/null and b/big_demo/i/panojs/64px_plus.png differ diff --git a/big_demo/i/panojs/64px_show.png b/big_demo/i/panojs/64px_show.png new file mode 100644 index 0000000..4e2742b Binary files /dev/null and b/big_demo/i/panojs/64px_show.png differ diff --git a/big_demo/i/panojs/blank.gif b/big_demo/i/panojs/blank.gif new file mode 100644 index 0000000..60fa7a1 Binary files /dev/null and b/big_demo/i/panojs/blank.gif differ diff --git a/big_demo/i/panojs/grab.cur b/big_demo/i/panojs/grab.cur new file mode 100644 index 0000000..db7ad5a Binary files /dev/null and b/big_demo/i/panojs/grab.cur differ diff --git a/big_demo/i/panojs/grabbing.cur b/big_demo/i/panojs/grabbing.cur new file mode 100644 index 0000000..e0dfd04 Binary files /dev/null and b/big_demo/i/panojs/grabbing.cur differ diff --git a/big_demo/i/panojs/progress.gif b/big_demo/i/panojs/progress.gif new file mode 100644 index 0000000..8676212 Binary files /dev/null and b/big_demo/i/panojs/progress.gif differ diff --git a/big_demo/i/panojs/progress_128.gif b/big_demo/i/panojs/progress_128.gif new file mode 100644 index 0000000..4870369 Binary files /dev/null and b/big_demo/i/panojs/progress_128.gif differ diff --git a/big_demo/i/panojs/progress_256.gif b/big_demo/i/panojs/progress_256.gif new file mode 100644 index 0000000..8676212 Binary files /dev/null and b/big_demo/i/panojs/progress_256.gif differ diff --git a/big_demo/i/panojs/progress_512.gif b/big_demo/i/panojs/progress_512.gif new file mode 100644 index 0000000..98074a5 Binary files /dev/null and b/big_demo/i/panojs/progress_512.gif differ diff --git a/big_demo/i/staroff.png b/big_demo/i/staroff.png new file mode 100644 index 0000000..cbd983b Binary files /dev/null and b/big_demo/i/staroff.png differ diff --git a/big_demo/i/staroff2.png b/big_demo/i/staroff2.png new file mode 100644 index 0000000..7c24cd8 Binary files /dev/null and b/big_demo/i/staroff2.png differ diff --git a/big_demo/i/staron.png b/big_demo/i/staron.png new file mode 100644 index 0000000..46cf771 Binary files /dev/null and b/big_demo/i/staron.png differ diff --git a/big_demo/i/staron2.png b/big_demo/i/staron2.png new file mode 100644 index 0000000..e4a9cfa Binary files /dev/null and b/big_demo/i/staron2.png differ diff --git a/big_demo/i/vlast.png b/big_demo/i/vlast.png new file mode 100644 index 0000000..f6a8eb4 Binary files /dev/null and b/big_demo/i/vlast.png differ diff --git a/big_demo/index.html b/big_demo/index.html new file mode 100644 index 0000000..5a98597 --- /dev/null +++ b/big_demo/index.html @@ -0,0 +1,492 @@ + + + + 123 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+ +
+

Назад

+

+
+
+

Готово

+
+
1
+
+
+ +
+
+ +
+ +
+ +
+
+ +
+
+ + diff --git a/big_demo/js/darkbox.js b/big_demo/js/darkbox.js new file mode 100644 index 0000000..2f7569d --- /dev/null +++ b/big_demo/js/darkbox.js @@ -0,0 +1,15 @@ +function showdarkbox() +{ +closedarkbox() +var dbox = $('
'); +dbox.css({'height':$(document).height()+'px'}); +var lg = $('
'); +lg.css({'height':$(document).height()+'px'}); +dbox.append(lg); +$(document.body).append(dbox); + +} +function closedarkbox() +{ +if ($('#darkbox')) { $('#darkbox').remove(); } +} \ No newline at end of file diff --git a/big_demo/js/iscroll.js b/big_demo/js/iscroll.js new file mode 100644 index 0000000..9d8c494 --- /dev/null +++ b/big_demo/js/iscroll.js @@ -0,0 +1,1076 @@ +/*! + * iScroll v4.1.9 ~ Copyright (c) 2011 Matteo Spinelli, http://cubiq.org + * Released under MIT license, http://cubiq.org/license + */ +(function(){ +var m = Math, + mround = function (r) { return r >> 0; }, + vendor = (/webkit/i).test(navigator.appVersion) ? 'webkit' : + (/firefox/i).test(navigator.userAgent) ? 'Moz' : + (/trident/i).test(navigator.userAgent) ? 'ms' : + 'opera' in window ? 'O' : '', + + // Browser capabilities + isAndroid = (/android/gi).test(navigator.appVersion), + isIDevice = (/iphone|ipad/gi).test(navigator.appVersion), + isPlaybook = (/playbook/gi).test(navigator.appVersion), + isTouchPad = (/hp-tablet/gi).test(navigator.appVersion), + + has3d = 'WebKitCSSMatrix' in window && 'm11' in new WebKitCSSMatrix(), + hasTouch = 'ontouchstart' in window && !isTouchPad, + hasTransform = vendor + 'Transform' in document.documentElement.style, + hasTransitionEnd = isIDevice || isPlaybook, + + nextFrame = (function() { + return window.requestAnimationFrame + || window.webkitRequestAnimationFrame + || window.mozRequestAnimationFrame + || window.oRequestAnimationFrame + || window.msRequestAnimationFrame + || function(callback) { return setTimeout(callback, 1); } + })(), + cancelFrame = (function () { + return window.cancelRequestAnimationFrame + || window.webkitCancelAnimationFrame + || window.webkitCancelRequestAnimationFrame + || window.mozCancelRequestAnimationFrame + || window.oCancelRequestAnimationFrame + || window.msCancelRequestAnimationFrame + || clearTimeout + })(), + + // Events + RESIZE_EV = 'onorientationchange' in window ? 'orientationchange' : 'resize', + START_EV = hasTouch ? 'touchstart' : 'mousedown', + MOVE_EV = hasTouch ? 'touchmove' : 'mousemove', + END_EV = hasTouch ? 'touchend' : 'mouseup', + CANCEL_EV = hasTouch ? 'touchcancel' : 'mouseup', + WHEEL_EV = vendor == 'Moz' ? 'DOMMouseScroll' : 'mousewheel', + + // Helpers + trnOpen = 'translate' + (has3d ? '3d(' : '('), + trnClose = has3d ? ',0)' : ')', + + // Constructor + iScroll = function (el, options) { + var that = this, + doc = document, + i; + + that.wrapper = typeof el == 'object' ? el : doc.getElementById(el); + that.wrapper.style.overflow = 'hidden'; + that.scroller = that.wrapper.children[0]; + + // Default options + that.options = { + hScroll: true, + vScroll: true, + x: 0, + y: 0, + bounce: true, + bounceLock: false, + momentum: true, + lockDirection: true, + useTransform: true, + useTransition: false, + topOffset: 0, + checkDOMChanges: false, // Experimental + + // Scrollbar + hScrollbar: true, + vScrollbar: true, + fixedScrollbar: isAndroid, + hideScrollbar: isIDevice, + fadeScrollbar: isIDevice && has3d, + scrollbarClass: '', + + // Zoom + zoom: false, + zoomMin: 1, + zoomMax: 4, + doubleTapZoom: 2, + wheelAction: 'scroll', + + // Snap + snap: false, + snapThreshold: 1, + + // Events + onRefresh: null, + onBeforeScrollStart: function (e) { e.preventDefault(); }, + onScrollStart: null, + onBeforeScrollMove: null, + onScrollMove: null, + onBeforeScrollEnd: null, + onScrollEnd: null, + onTouchEnd: null, + onDestroy: null, + onZoomStart: null, + onZoom: null, + onZoomEnd: null + }; + + // User defined options + for (i in options) that.options[i] = options[i]; + + // Set starting position + that.x = that.options.x; + that.y = that.options.y; + + // Normalize options + that.options.useTransform = hasTransform ? that.options.useTransform : false; + that.options.hScrollbar = that.options.hScroll && that.options.hScrollbar; + that.options.vScrollbar = that.options.vScroll && that.options.vScrollbar; + that.options.zoom = that.options.useTransform && that.options.zoom; + that.options.useTransition = hasTransitionEnd && that.options.useTransition; + + // Helpers FIX ANDROID BUG! + // translate3d and scale doesn't work together! + // Ignoring 3d ONLY WHEN YOU SET that.options.zoom + if ( that.options.zoom && isAndroid ){ + trnOpen = 'translate('; + trnClose = ')'; + } + + // Set some default styles + that.scroller.style[vendor + 'TransitionProperty'] = that.options.useTransform ? '-' + vendor.toLowerCase() + '-transform' : 'top left'; + that.scroller.style[vendor + 'TransitionDuration'] = '0'; + that.scroller.style[vendor + 'TransformOrigin'] = '0 0'; + if (that.options.useTransition) that.scroller.style[vendor + 'TransitionTimingFunction'] = 'cubic-bezier(0.33,0.66,0.66,1)'; + + if (that.options.useTransform) that.scroller.style[vendor + 'Transform'] = trnOpen + that.x + 'px,' + that.y + 'px' + trnClose; + else that.scroller.style.cssText += ';position:absolute;top:' + that.y + 'px;left:' + that.x + 'px'; + + if (that.options.useTransition) that.options.fixedScrollbar = true; + + that.refresh(); + + that._bind(RESIZE_EV, window); + that._bind(START_EV); + if (!hasTouch) { + that._bind('mouseout', that.wrapper); + if (that.options.wheelAction != 'none') + that._bind(WHEEL_EV); + } + + if (that.options.checkDOMChanges) that.checkDOMTime = setInterval(function () { + that._checkDOMChanges(); + }, 500); + }; + +// Prototype +iScroll.prototype = { + enabled: true, + x: 0, + y: 0, + steps: [], + scale: 1, + currPageX: 0, currPageY: 0, + pagesX: [], pagesY: [], + aniTime: null, + wheelZoomCount: 0, + + handleEvent: function (e) { + var that = this; + switch(e.type) { + case START_EV: + if (!hasTouch && e.button !== 0) return; + that._start(e); + break; + case MOVE_EV: that._move(e); break; + case END_EV: + case CANCEL_EV: that._end(e); break; + case RESIZE_EV: that._resize(); break; + case WHEEL_EV: that._wheel(e); break; + case 'mouseout': that._mouseout(e); break; + case 'webkitTransitionEnd': that._transitionEnd(e); break; + } + }, + + _checkDOMChanges: function () { + if (this.moved || this.zoomed || this.animating || + (this.scrollerW == this.scroller.offsetWidth * this.scale && this.scrollerH == this.scroller.offsetHeight * this.scale)) return; + + this.refresh(); + }, + + _scrollbar: function (dir) { + var that = this, + doc = document, + bar; + + if (!that[dir + 'Scrollbar']) { + if (that[dir + 'ScrollbarWrapper']) { + if (hasTransform) that[dir + 'ScrollbarIndicator'].style[vendor + 'Transform'] = ''; + that[dir + 'ScrollbarWrapper'].parentNode.removeChild(that[dir + 'ScrollbarWrapper']); + that[dir + 'ScrollbarWrapper'] = null; + that[dir + 'ScrollbarIndicator'] = null; + } + + return; + } + + if (!that[dir + 'ScrollbarWrapper']) { + // Create the scrollbar wrapper + bar = doc.createElement('div'); + + if (that.options.scrollbarClass) bar.className = that.options.scrollbarClass + dir.toUpperCase(); + else bar.style.cssText = 'position:absolute;z-index:100;' + (dir == 'h' ? 'height:7px;bottom:1px;left:2px;right:' + (that.vScrollbar ? '7' : '2') + 'px' : 'width:7px;bottom:' + (that.hScrollbar ? '7' : '2') + 'px;top:2px;right:1px'); + + bar.style.cssText += ';pointer-events:none;-' + vendor + '-transition-property:opacity;-' + vendor + '-transition-duration:' + (that.options.fadeScrollbar ? '350ms' : '0') + ';overflow:hidden;opacity:' + (that.options.hideScrollbar ? '0' : '1'); + + that.wrapper.appendChild(bar); + that[dir + 'ScrollbarWrapper'] = bar; + + // Create the scrollbar indicator + bar = doc.createElement('div'); + if (!that.options.scrollbarClass) { + bar.style.cssText = 'position:absolute;z-index:100;background:rgba(0,0,0,0.5);border:1px solid rgba(255,255,255,0.9);-' + vendor + '-background-clip:padding-box;-' + vendor + '-box-sizing:border-box;' + (dir == 'h' ? 'height:100%' : 'width:100%') + ';-' + vendor + '-border-radius:3px;border-radius:3px'; + } + bar.style.cssText += ';pointer-events:none;-' + vendor + '-transition-property:-' + vendor + '-transform;-' + vendor + '-transition-timing-function:cubic-bezier(0.33,0.66,0.66,1);-' + vendor + '-transition-duration:0;-' + vendor + '-transform:' + trnOpen + '0,0' + trnClose; + if (that.options.useTransition) bar.style.cssText += ';-' + vendor + '-transition-timing-function:cubic-bezier(0.33,0.66,0.66,1)'; + + that[dir + 'ScrollbarWrapper'].appendChild(bar); + that[dir + 'ScrollbarIndicator'] = bar; + } + + if (dir == 'h') { + that.hScrollbarSize = that.hScrollbarWrapper.clientWidth; + that.hScrollbarIndicatorSize = m.max(mround(that.hScrollbarSize * that.hScrollbarSize / that.scrollerW), 8); + that.hScrollbarIndicator.style.width = that.hScrollbarIndicatorSize + 'px'; + that.hScrollbarMaxScroll = that.hScrollbarSize - that.hScrollbarIndicatorSize; + that.hScrollbarProp = that.hScrollbarMaxScroll / that.maxScrollX; + } else { + that.vScrollbarSize = that.vScrollbarWrapper.clientHeight; + that.vScrollbarIndicatorSize = m.max(mround(that.vScrollbarSize * that.vScrollbarSize / that.scrollerH), 8); + that.vScrollbarIndicator.style.height = that.vScrollbarIndicatorSize + 'px'; + that.vScrollbarMaxScroll = that.vScrollbarSize - that.vScrollbarIndicatorSize; + that.vScrollbarProp = that.vScrollbarMaxScroll / that.maxScrollY; + } + + // Reset position + that._scrollbarPos(dir, true); + }, + + _resize: function () { + var that = this; + setTimeout(function () { that.refresh(); }, isAndroid ? 200 : 0); + }, + + _pos: function (x, y) { + x = this.hScroll ? x : 0; + y = this.vScroll ? y : 0; + + if (this.options.useTransform) { + this.scroller.style[vendor + 'Transform'] = trnOpen + x + 'px,' + y + 'px' + trnClose + ' scale(' + this.scale + ')'; + } else { + x = mround(x); + y = mround(y); + this.scroller.style.left = x + 'px'; + this.scroller.style.top = y + 'px'; + } + + this.x = x; + this.y = y; + + this._scrollbarPos('h'); + this._scrollbarPos('v'); + }, + + _scrollbarPos: function (dir, hidden) { + var that = this, + pos = dir == 'h' ? that.x : that.y, + size; + + if (!that[dir + 'Scrollbar']) return; + + pos = that[dir + 'ScrollbarProp'] * pos; + + if (pos < 0) { + if (!that.options.fixedScrollbar) { + size = that[dir + 'ScrollbarIndicatorSize'] + mround(pos * 3); + if (size < 8) size = 8; + that[dir + 'ScrollbarIndicator'].style[dir == 'h' ? 'width' : 'height'] = size + 'px'; + } + pos = 0; + } else if (pos > that[dir + 'ScrollbarMaxScroll']) { + if (!that.options.fixedScrollbar) { + size = that[dir + 'ScrollbarIndicatorSize'] - mround((pos - that[dir + 'ScrollbarMaxScroll']) * 3); + if (size < 8) size = 8; + that[dir + 'ScrollbarIndicator'].style[dir == 'h' ? 'width' : 'height'] = size + 'px'; + pos = that[dir + 'ScrollbarMaxScroll'] + (that[dir + 'ScrollbarIndicatorSize'] - size); + } else { + pos = that[dir + 'ScrollbarMaxScroll']; + } + } + + that[dir + 'ScrollbarWrapper'].style[vendor + 'TransitionDelay'] = '0'; + that[dir + 'ScrollbarWrapper'].style.opacity = hidden && that.options.hideScrollbar ? '0' : '1'; + that[dir + 'ScrollbarIndicator'].style[vendor + 'Transform'] = trnOpen + (dir == 'h' ? pos + 'px,0' : '0,' + pos + 'px') + trnClose; + }, + + _start: function (e) { + var that = this, + point = hasTouch ? e.touches[0] : e, + matrix, x, y, + c1, c2; + + if (!that.enabled) return; + + if (that.options.onBeforeScrollStart) that.options.onBeforeScrollStart.call(that, e); + + if (that.options.useTransition || that.options.zoom) that._transitionTime(0); + + that.moved = false; + that.animating = false; + that.zoomed = false; + that.distX = 0; + that.distY = 0; + that.absDistX = 0; + that.absDistY = 0; + that.dirX = 0; + that.dirY = 0; + + // Gesture start + if (that.options.zoom && hasTouch && e.touches.length > 1) { + c1 = m.abs(e.touches[0].pageX-e.touches[1].pageX); + c2 = m.abs(e.touches[0].pageY-e.touches[1].pageY); + that.touchesDistStart = m.sqrt(c1 * c1 + c2 * c2); + + that.originX = m.abs(e.touches[0].pageX + e.touches[1].pageX - that.wrapperOffsetLeft * 2) / 2 - that.x; + that.originY = m.abs(e.touches[0].pageY + e.touches[1].pageY - that.wrapperOffsetTop * 2) / 2 - that.y; + + if (that.options.onZoomStart) that.options.onZoomStart.call(that, e); + } + + if (that.options.momentum) { + if (that.options.useTransform) { + // Very lame general purpose alternative to CSSMatrix + matrix = getComputedStyle(that.scroller, null)[vendor + 'Transform'].replace(/[^0-9-.,]/g, '').split(','); + x = matrix[4] * 1; + y = matrix[5] * 1; + } else { + x = getComputedStyle(that.scroller, null).left.replace(/[^0-9-]/g, '') * 1; + y = getComputedStyle(that.scroller, null).top.replace(/[^0-9-]/g, '') * 1; + } + + if (x != that.x || y != that.y) { + if (that.options.useTransition) that._unbind('webkitTransitionEnd'); + else cancelFrame(that.aniTime); + that.steps = []; + that._pos(x, y); + } + } + + that.absStartX = that.x; // Needed by snap threshold + that.absStartY = that.y; + + that.startX = that.x; + that.startY = that.y; + that.pointX = point.pageX; + that.pointY = point.pageY; + + that.startTime = e.timeStamp || Date.now(); + + if (that.options.onScrollStart) that.options.onScrollStart.call(that, e); + + that._bind(MOVE_EV); + that._bind(END_EV); + that._bind(CANCEL_EV); + }, + + _move: function (e) { + var that = this, + point = hasTouch ? e.touches[0] : e, + deltaX = point.pageX - that.pointX, + deltaY = point.pageY - that.pointY, + newX = that.x + deltaX, + newY = that.y + deltaY, + c1, c2, scale, + timestamp = e.timeStamp || Date.now(); + + if (that.options.onBeforeScrollMove) that.options.onBeforeScrollMove.call(that, e); + + // Zoom + if (that.options.zoom && hasTouch && e.touches.length > 1) { + c1 = m.abs(e.touches[0].pageX - e.touches[1].pageX); + c2 = m.abs(e.touches[0].pageY - e.touches[1].pageY); + that.touchesDist = m.sqrt(c1*c1+c2*c2); + + that.zoomed = true; + + scale = 1 / that.touchesDistStart * that.touchesDist * this.scale; + + if (scale < that.options.zoomMin) scale = 0.5 * that.options.zoomMin * Math.pow(2.0, scale / that.options.zoomMin); + else if (scale > that.options.zoomMax) scale = 2.0 * that.options.zoomMax * Math.pow(0.5, that.options.zoomMax / scale); + + that.lastScale = scale / this.scale; + + newX = this.originX - this.originX * that.lastScale + this.x, + newY = this.originY - this.originY * that.lastScale + this.y; + + this.scroller.style[vendor + 'Transform'] = trnOpen + newX + 'px,' + newY + 'px' + trnClose + ' scale(' + scale + ')'; + + if (that.options.onZoom) that.options.onZoom.call(that, e); + return; + } + + that.pointX = point.pageX; + that.pointY = point.pageY; + + // Slow down if outside of the boundaries + if (newX > 0 || newX < that.maxScrollX) { + newX = that.options.bounce ? that.x + (deltaX / 2) : newX >= 0 || that.maxScrollX >= 0 ? 0 : that.maxScrollX; + } + if (newY > that.minScrollY || newY < that.maxScrollY) { + newY = that.options.bounce ? that.y + (deltaY / 2) : newY >= that.minScrollY || that.maxScrollY >= 0 ? that.minScrollY : that.maxScrollY; + } + + that.distX += deltaX; + that.distY += deltaY; + that.absDistX = m.abs(that.distX); + that.absDistY = m.abs(that.distY); + + if (that.absDistX < 6 && that.absDistY < 6) { + return; + } + + // Lock direction + if (that.options.lockDirection) { + if (that.absDistX > that.absDistY + 5) { + newY = that.y; + deltaY = 0; + } else if (that.absDistY > that.absDistX + 5) { + newX = that.x; + deltaX = 0; + } + } + + that.moved = true; + that._pos(newX, newY); + that.dirX = deltaX > 0 ? -1 : deltaX < 0 ? 1 : 0; + that.dirY = deltaY > 0 ? -1 : deltaY < 0 ? 1 : 0; + + if (timestamp - that.startTime > 300) { + that.startTime = timestamp; + that.startX = that.x; + that.startY = that.y; + } + + if (that.options.onScrollMove) that.options.onScrollMove.call(that, e); + }, + + _end: function (e) { + if (hasTouch && e.touches.length != 0) return; + + var that = this, + point = hasTouch ? e.changedTouches[0] : e, + target, ev, + momentumX = { dist:0, time:0 }, + momentumY = { dist:0, time:0 }, + duration = (e.timeStamp || Date.now()) - that.startTime, + newPosX = that.x, + newPosY = that.y, + distX, distY, + newDuration, + snap, + scale; + + that._unbind(MOVE_EV); + that._unbind(END_EV); + that._unbind(CANCEL_EV); + + if (that.options.onBeforeScrollEnd) that.options.onBeforeScrollEnd.call(that, e); + + if (that.zoomed) { + scale = that.scale * that.lastScale; + scale = Math.max(that.options.zoomMin, scale); + scale = Math.min(that.options.zoomMax, scale); + that.lastScale = scale / that.scale; + that.scale = scale; + + that.x = that.originX - that.originX * that.lastScale + that.x; + that.y = that.originY - that.originY * that.lastScale + that.y; + + that.scroller.style[vendor + 'TransitionDuration'] = '200ms'; + that.scroller.style[vendor + 'Transform'] = trnOpen + that.x + 'px,' + that.y + 'px' + trnClose + ' scale(' + that.scale + ')'; + + that.zoomed = false; + that.refresh(); + + if (that.options.onZoomEnd) that.options.onZoomEnd.call(that, e); + return; + } + + if (!that.moved) { + if (hasTouch) { + if (that.doubleTapTimer && that.options.zoom) { + // Double tapped + clearTimeout(that.doubleTapTimer); + that.doubleTapTimer = null; + if (that.options.onZoomStart) that.options.onZoomStart.call(that, e); + that.zoom(that.pointX, that.pointY, that.scale == 1 ? that.options.doubleTapZoom : 1); + if (that.options.onZoomEnd) { + setTimeout(function() { + that.options.onZoomEnd.call(that, e); + }, 200); // 200 is default zoom duration + } + } else { + that.doubleTapTimer = setTimeout(function () { + that.doubleTapTimer = null; + + // Find the last touched element + target = point.target; + while (target.nodeType != 1) target = target.parentNode; + + if (target.tagName != 'SELECT' && target.tagName != 'INPUT' && target.tagName != 'TEXTAREA') { + ev = document.createEvent('MouseEvents'); + ev.initMouseEvent('click', true, true, e.view, 1, + point.screenX, point.screenY, point.clientX, point.clientY, + e.ctrlKey, e.altKey, e.shiftKey, e.metaKey, + 0, null); + ev._fake = true; + target.dispatchEvent(ev); + } + }, that.options.zoom ? 250 : 0); + } + } + + that._resetPos(200); + + if (that.options.onTouchEnd) that.options.onTouchEnd.call(that, e); + return; + } + + if (duration < 300 && that.options.momentum) { + momentumX = newPosX ? that._momentum(newPosX - that.startX, duration, -that.x, that.scrollerW - that.wrapperW + that.x, that.options.bounce ? that.wrapperW : 0) : momentumX; + momentumY = newPosY ? that._momentum(newPosY - that.startY, duration, -that.y, (that.maxScrollY < 0 ? that.scrollerH - that.wrapperH + that.y - that.minScrollY : 0), that.options.bounce ? that.wrapperH : 0) : momentumY; + + newPosX = that.x + momentumX.dist; + newPosY = that.y + momentumY.dist; + + if ((that.x > 0 && newPosX > 0) || (that.x < that.maxScrollX && newPosX < that.maxScrollX)) momentumX = { dist:0, time:0 }; + if ((that.y > that.minScrollY && newPosY > that.minScrollY) || (that.y < that.maxScrollY && newPosY < that.maxScrollY)) momentumY = { dist:0, time:0 }; + } + + if (momentumX.dist || momentumY.dist) { + newDuration = m.max(m.max(momentumX.time, momentumY.time), 10); + + // Do we need to snap? + if (that.options.snap) { + distX = newPosX - that.absStartX; + distY = newPosY - that.absStartY; + if (m.abs(distX) < that.options.snapThreshold && m.abs(distY) < that.options.snapThreshold) { that.scrollTo(that.absStartX, that.absStartY, 200); } + else { + snap = that._snap(newPosX, newPosY); + newPosX = snap.x; + newPosY = snap.y; + newDuration = m.max(snap.time, newDuration); + } + } + + that.scrollTo(mround(newPosX), mround(newPosY), newDuration); + + if (that.options.onTouchEnd) that.options.onTouchEnd.call(that, e); + return; + } + + // Do we need to snap? + if (that.options.snap) { + distX = newPosX - that.absStartX; + distY = newPosY - that.absStartY; + if (m.abs(distX) < that.options.snapThreshold && m.abs(distY) < that.options.snapThreshold) that.scrollTo(that.absStartX, that.absStartY, 200); + else { + snap = that._snap(that.x, that.y); + if (snap.x != that.x || snap.y != that.y) that.scrollTo(snap.x, snap.y, snap.time); + } + + if (that.options.onTouchEnd) that.options.onTouchEnd.call(that, e); + return; + } + + that._resetPos(200); + if (that.options.onTouchEnd) that.options.onTouchEnd.call(that, e); + }, + + _resetPos: function (time) { + var that = this, + resetX = that.x >= 0 ? 0 : that.x < that.maxScrollX ? that.maxScrollX : that.x, + resetY = that.y >= that.minScrollY || that.maxScrollY > 0 ? that.minScrollY : that.y < that.maxScrollY ? that.maxScrollY : that.y; + + if (resetX == that.x && resetY == that.y) { + if (that.moved) { + that.moved = false; + if (that.options.onScrollEnd) that.options.onScrollEnd.call(that); // Execute custom code on scroll end + } + + if (that.hScrollbar && that.options.hideScrollbar) { + if (vendor == 'webkit') that.hScrollbarWrapper.style[vendor + 'TransitionDelay'] = '300ms'; + that.hScrollbarWrapper.style.opacity = '0'; + } + if (that.vScrollbar && that.options.hideScrollbar) { + if (vendor == 'webkit') that.vScrollbarWrapper.style[vendor + 'TransitionDelay'] = '300ms'; + that.vScrollbarWrapper.style.opacity = '0'; + } + + return; + } + + that.scrollTo(resetX, resetY, time || 0); + }, + + _wheel: function (e) { + var that = this, + wheelDeltaX, wheelDeltaY, + deltaX, deltaY, + deltaScale; + + if ('wheelDeltaX' in e) { + wheelDeltaX = e.wheelDeltaX / 12; + wheelDeltaY = e.wheelDeltaY / 12; + } else if('wheelDelta' in e) { + wheelDeltaX = wheelDeltaY = e.wheelDelta / 12; + } else if ('detail' in e) { + wheelDeltaX = wheelDeltaY = -e.detail * 3; + } else { + return; + } + + if (that.options.wheelAction == 'zoom') { + deltaScale = that.scale * Math.pow(2, 1/3 * (wheelDeltaY ? wheelDeltaY / Math.abs(wheelDeltaY) : 0)); + if (deltaScale < that.options.zoomMin) deltaScale = that.options.zoomMin; + if (deltaScale > that.options.zoomMax) deltaScale = that.options.zoomMax; + + if (deltaScale != that.scale) { + if (!that.wheelZoomCount && that.options.onZoomStart) that.options.onZoomStart.call(that, e); + that.wheelZoomCount++; + + that.zoom(e.pageX, e.pageY, deltaScale, 400); + + setTimeout(function() { + that.wheelZoomCount--; + if (!that.wheelZoomCount && that.options.onZoomEnd) that.options.onZoomEnd.call(that, e); + }, 400); + } + + return; + } + + deltaX = that.x + wheelDeltaX; + deltaY = that.y + wheelDeltaY; + + if (deltaX > 0) deltaX = 0; + else if (deltaX < that.maxScrollX) deltaX = that.maxScrollX; + + if (deltaY > that.minScrollY) deltaY = that.minScrollY; + else if (deltaY < that.maxScrollY) deltaY = that.maxScrollY; + + that.scrollTo(deltaX, deltaY, 0); + }, + + _mouseout: function (e) { + var t = e.relatedTarget; + + if (!t) { + this._end(e); + return; + } + + while (t = t.parentNode) if (t == this.wrapper) return; + + this._end(e); + }, + + _transitionEnd: function (e) { + var that = this; + + if (e.target != that.scroller) return; + + that._unbind('webkitTransitionEnd'); + + that._startAni(); + }, + + + /** + * + * Utilities + * + */ + _startAni: function () { + var that = this, + startX = that.x, startY = that.y, + startTime = Date.now(), + step, easeOut, + animate; + + if (that.animating) return; + + if (!that.steps.length) { + that._resetPos(400); + return; + } + + step = that.steps.shift(); + + if (step.x == startX && step.y == startY) step.time = 0; + + that.animating = true; + that.moved = true; + + if (that.options.useTransition) { + that._transitionTime(step.time); + that._pos(step.x, step.y); + that.animating = false; + if (step.time) that._bind('webkitTransitionEnd'); + else that._resetPos(0); + return; + } + + animate = function () { + var now = Date.now(), + newX, newY; + + if (now >= startTime + step.time) { + that._pos(step.x, step.y); + that.animating = false; + if (that.options.onAnimationEnd) that.options.onAnimationEnd.call(that); // Execute custom code on animation end + that._startAni(); + return; + } + + now = (now - startTime) / step.time - 1; + easeOut = m.sqrt(1 - now * now); + newX = (step.x - startX) * easeOut + startX; + newY = (step.y - startY) * easeOut + startY; + that._pos(newX, newY); + if (that.animating) that.aniTime = nextFrame(animate); + }; + + animate(); + }, + + _transitionTime: function (time) { + time += 'ms'; + this.scroller.style[vendor + 'TransitionDuration'] = time; + if (this.hScrollbar) this.hScrollbarIndicator.style[vendor + 'TransitionDuration'] = time; + if (this.vScrollbar) this.vScrollbarIndicator.style[vendor + 'TransitionDuration'] = time; + }, + + _momentum: function (dist, time, maxDistUpper, maxDistLower, size) { + var deceleration = 0.0006, + speed = m.abs(dist) / time, + newDist = (speed * speed) / (2 * deceleration), + newTime = 0, outsideDist = 0; + + // Proportinally reduce speed if we are outside of the boundaries + if (dist > 0 && newDist > maxDistUpper) { + outsideDist = size / (6 / (newDist / speed * deceleration)); + maxDistUpper = maxDistUpper + outsideDist; + speed = speed * maxDistUpper / newDist; + newDist = maxDistUpper; + } else if (dist < 0 && newDist > maxDistLower) { + outsideDist = size / (6 / (newDist / speed * deceleration)); + maxDistLower = maxDistLower + outsideDist; + speed = speed * maxDistLower / newDist; + newDist = maxDistLower; + } + + newDist = newDist * (dist < 0 ? -1 : 1); + newTime = speed / deceleration; + + return { dist: newDist, time: mround(newTime) }; + }, + + _offset: function (el) { + var left = -el.offsetLeft, + top = -el.offsetTop; + + while (el = el.offsetParent) { + left -= el.offsetLeft; + top -= el.offsetTop; + } + + if (el != this.wrapper) { + left *= this.scale; + top *= this.scale; + } + + return { left: left, top: top }; + }, + + _snap: function (x, y) { + var that = this, + i, l, + page, time, + sizeX, sizeY; + + // Check page X + page = that.pagesX.length - 1; + for (i=0, l=that.pagesX.length; i= that.pagesX[i]) { + page = i; + break; + } + } + if (page == that.currPageX && page > 0 && that.dirX < 0) page--; + x = that.pagesX[page]; + sizeX = m.abs(x - that.pagesX[that.currPageX]); + sizeX = sizeX ? m.abs(that.x - x) / sizeX * 500 : 0; + that.currPageX = page; + + // Check page Y + page = that.pagesY.length-1; + for (i=0; i= that.pagesY[i]) { + page = i; + break; + } + } + if (page == that.currPageY && page > 0 && that.dirY < 0) page--; + y = that.pagesY[page]; + sizeY = m.abs(y - that.pagesY[that.currPageY]); + sizeY = sizeY ? m.abs(that.y - y) / sizeY * 500 : 0; + that.currPageY = page; + + // Snap with constant speed (proportional duration) + time = mround(m.max(sizeX, sizeY)) || 200; + + return { x: x, y: y, time: time }; + }, + + _bind: function (type, el, bubble) { + (el || this.scroller).addEventListener(type, this, !!bubble); + }, + + _unbind: function (type, el, bubble) { + (el || this.scroller).removeEventListener(type, this, !!bubble); + }, + + + /** + * + * Public methods + * + */ + destroy: function () { + var that = this; + + that.scroller.style[vendor + 'Transform'] = ''; + + // Remove the scrollbars + that.hScrollbar = false; + that.vScrollbar = false; + that._scrollbar('h'); + that._scrollbar('v'); + + // Remove the event listeners + that._unbind(RESIZE_EV, window); + that._unbind(START_EV); + that._unbind(MOVE_EV); + that._unbind(END_EV); + that._unbind(CANCEL_EV); + + if (!that.options.hasTouch) { + that._unbind('mouseout', that.wrapper); + that._unbind(WHEEL_EV); + } + + if (that.options.useTransition) that._unbind('webkitTransitionEnd'); + + if (that.options.checkDOMChanges) clearInterval(that.checkDOMTime); + + if (that.options.onDestroy) that.options.onDestroy.call(that); + }, + + refresh: function () { + var that = this, + offset, + i, l, + els, + pos = 0, + page = 0; + + if (that.scale < that.options.zoomMin) that.scale = that.options.zoomMin; + that.wrapperW = that.wrapper.clientWidth || 1; + that.wrapperH = that.wrapper.clientHeight || 1; + + that.minScrollY = -that.options.topOffset || 0; + that.scrollerW = mround(that.scroller.offsetWidth * that.scale); + that.scrollerH = mround((that.scroller.offsetHeight + that.minScrollY) * that.scale); + that.maxScrollX = that.wrapperW - that.scrollerW; + that.maxScrollY = that.wrapperH - that.scrollerH + that.minScrollY; + that.dirX = 0; + that.dirY = 0; + + if (that.options.onRefresh) that.options.onRefresh.call(that); + + that.hScroll = that.options.hScroll && that.maxScrollX < 0; + that.vScroll = that.options.vScroll && (!that.options.bounceLock && !that.hScroll || that.scrollerH > that.wrapperH); + + that.hScrollbar = that.hScroll && that.options.hScrollbar; + that.vScrollbar = that.vScroll && that.options.vScrollbar && that.scrollerH > that.wrapperH; + + offset = that._offset(that.wrapper); + that.wrapperOffsetLeft = -offset.left; + that.wrapperOffsetTop = -offset.top; + + // Prepare snap + if (typeof that.options.snap == 'string') { + that.pagesX = []; + that.pagesY = []; + els = that.scroller.querySelectorAll(that.options.snap); + for (i=0, l=els.length; i= that.maxScrollX) { + that.pagesX[page] = pos; + pos = pos - that.wrapperW; + page++; + } + if (that.maxScrollX%that.wrapperW) that.pagesX[that.pagesX.length] = that.maxScrollX - that.pagesX[that.pagesX.length-1] + that.pagesX[that.pagesX.length-1]; + + pos = 0; + page = 0; + that.pagesY = []; + while (pos >= that.maxScrollY) { + that.pagesY[page] = pos; + pos = pos - that.wrapperH; + page++; + } + if (that.maxScrollY%that.wrapperH) that.pagesY[that.pagesY.length] = that.maxScrollY - that.pagesY[that.pagesY.length-1] + that.pagesY[that.pagesY.length-1]; + } + + // Prepare the scrollbars + that._scrollbar('h'); + that._scrollbar('v'); + + if (!that.zoomed) { + that.scroller.style[vendor + 'TransitionDuration'] = '0'; + that._resetPos(200); + } + }, + + scrollTo: function (x, y, time, relative) { + var that = this, + step = x, + i, l; + + that.stop(); + + if (!step.length) step = [{ x: x, y: y, time: time, relative: relative }]; + + for (i=0, l=step.length; i 0 ? 0 : pos.left < that.maxScrollX ? that.maxScrollX : pos.left; + pos.top = pos.top > that.minScrollY ? that.minScrollY : pos.top < that.maxScrollY ? that.maxScrollY : pos.top; + time = time === undefined ? m.max(m.abs(pos.left)*2, m.abs(pos.top)*2) : time; + + that.scrollTo(pos.left, pos.top, time); + }, + + scrollToPage: function (pageX, pageY, time) { + var that = this, x, y; + + time = time === undefined ? 400 : time; + + if (that.options.onScrollStart) that.options.onScrollStart.call(that); + + if (that.options.snap) { + pageX = pageX == 'next' ? that.currPageX+1 : pageX == 'prev' ? that.currPageX-1 : pageX; + pageY = pageY == 'next' ? that.currPageY+1 : pageY == 'prev' ? that.currPageY-1 : pageY; + + pageX = pageX < 0 ? 0 : pageX > that.pagesX.length-1 ? that.pagesX.length-1 : pageX; + pageY = pageY < 0 ? 0 : pageY > that.pagesY.length-1 ? that.pagesY.length-1 : pageY; + + that.currPageX = pageX; + that.currPageY = pageY; + x = that.pagesX[pageX]; + y = that.pagesY[pageY]; + } else { + x = -that.wrapperW * pageX; + y = -that.wrapperH * pageY; + if (x < that.maxScrollX) x = that.maxScrollX; + if (y < that.maxScrollY) y = that.maxScrollY; + } + + that.scrollTo(x, y, time); + }, + + disable: function () { + this.stop(); + this._resetPos(0); + this.enabled = false; + + // If disabled after touchstart we make sure that there are no left over events + this._unbind(MOVE_EV); + this._unbind(END_EV); + this._unbind(CANCEL_EV); + }, + + enable: function () { + this.enabled = true; + }, + + stop: function () { + if (this.options.useTransition) this._unbind('webkitTransitionEnd'); + else cancelFrame(this.aniTime); + this.steps = []; + this.moved = false; + this.animating = false; + }, + + zoom: function (x, y, scale, time) { + var that = this, + relScale = scale / that.scale; + + if (!that.options.useTransform) return; + + that.zoomed = true; + time = time === undefined ? 200 : time; + x = x - that.wrapperOffsetLeft - that.x; + y = y - that.wrapperOffsetTop - that.y; + that.x = x - x * relScale + that.x; + that.y = y - y * relScale + that.y; + + that.scale = scale; + that.refresh(); + + that.x = that.x > 0 ? 0 : that.x < that.maxScrollX ? that.maxScrollX : that.x; + that.y = that.y > that.minScrollY ? that.minScrollY : that.y < that.maxScrollY ? that.maxScrollY : that.y; + + that.scroller.style[vendor + 'TransitionDuration'] = time + 'ms'; + that.scroller.style[vendor + 'Transform'] = trnOpen + that.x + 'px,' + that.y + 'px' + trnClose + ' scale(' + scale + ')'; + that.zoomed = false; + }, + + isReady: function () { + return !this.moved && !this.zoomed && !this.animating; + } +}; + +if (typeof exports !== 'undefined') exports.iScroll = iScroll; +else window.iScroll = iScroll; + +})(); diff --git a/big_demo/js/jquery.min.js b/big_demo/js/jquery.min.js new file mode 100644 index 0000000..979ed08 --- /dev/null +++ b/big_demo/js/jquery.min.js @@ -0,0 +1,4 @@ +/*! jQuery v1.7.1 jquery.com | jquery.org/license */ +(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"":"")+""),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){if(c!=="border")for(;g=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
a",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="
"+""+"
",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="
t
",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="
",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")}; +f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;le&&i.push({elem:this,matches:d.slice(e)});for(j=0;j0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h0)for(h=g;h=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/",""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div
","
"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function() +{for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1>");try{for(var c=0,d=this.length;c1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]===""&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/)<[^<]*)*<\/script>/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cc(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bH.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bG,"").replace(bL,bW[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bP),d.crossDomain==null&&(r=bR.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bW[1]&&r[2]==bW[2]&&(r[3]||(r[1]==="http:"?80:443))==(bW[3]||(bW[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bT,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bK.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bM.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bQ,"$1_="+x);d.url=y+(y===d.url?(bM.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bX+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bU,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)ca(g,a[g],c,e);return d.join("&").replace(bD,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cd=f.now(),ce=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cd++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ce.test(b.url)||e&&ce.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ce,l),b.url===j&&(e&&(k=k.replace(ce,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cf=a.ActiveXObject?function(){for(var a in ch)ch[a](0,1)}:!1,cg=0,ch;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ci()||cj()}:ci,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cf&&delete ch[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cg,cf&&(ch||(ch={},f(a).unload(cf)),ch[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var ck={},cl,cm,cn=/^(?:toggle|show|hide)$/,co=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cp,cq=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cr;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window); \ No newline at end of file diff --git a/big_demo/js/jquery.mobile.js b/big_demo/js/jquery.mobile.js new file mode 100644 index 0000000..b5fbcb1 --- /dev/null +++ b/big_demo/js/jquery.mobile.js @@ -0,0 +1,7551 @@ +/* +* jQuery Mobile Framework 1.1.0 db342b1f315c282692791aa870455901fdb46a55 +* http://jquerymobile.com +* +* Copyright 2011 (c) jQuery Project +* Dual licensed under the MIT or GPL Version 2 licenses. +* http://jquery.org/license +* +*/ +(function ( root, doc, factory ) { + if ( typeof define === "function" && define.amd ) { + // AMD. Register as an anonymous module. + define( [ "jquery" ], function ( $ ) { + factory( $, root, doc ); + return $.mobile; + }); + } else { + // Browser globals + factory( root.jQuery, root, doc ); + } +}( this, document, function ( $, window, document, undefined ) { + + +// This plugin is an experiment for abstracting away the touch and mouse +// events so that developers don't have to worry about which method of input +// the device their document is loaded on supports. +// +// The idea here is to allow the developer to register listeners for the +// basic mouse events, such as mousedown, mousemove, mouseup, and click, +// and the plugin will take care of registering the correct listeners +// behind the scenes to invoke the listener at the fastest possible time +// for that device, while still retaining the order of event firing in +// the traditional mouse environment, should multiple handlers be registered +// on the same element for different events. +// +// The current version exposes the following virtual events to jQuery bind methods: +// "vmouseover vmousedown vmousemove vmouseup vclick vmouseout vmousecancel" + +(function( $, window, document, undefined ) { + +var dataPropertyName = "virtualMouseBindings", + touchTargetPropertyName = "virtualTouchID", + virtualEventNames = "vmouseover vmousedown vmousemove vmouseup vclick vmouseout vmousecancel".split( " " ), + touchEventProps = "clientX clientY pageX pageY screenX screenY".split( " " ), + mouseHookProps = $.event.mouseHooks ? $.event.mouseHooks.props : [], + mouseEventProps = $.event.props.concat( mouseHookProps ), + activeDocHandlers = {}, + resetTimerID = 0, + startX = 0, + startY = 0, + didScroll = false, + clickBlockList = [], + blockMouseTriggers = false, + blockTouchTriggers = false, + eventCaptureSupported = "addEventListener" in document, + $document = $( document ), + nextTouchID = 1, + lastTouchID = 0; + +$.vmouse = { + moveDistanceThreshold: 10, + clickDistanceThreshold: 10, + resetTimerDuration: 1500 +}; + +function getNativeEvent( event ) { + + while ( event && typeof event.originalEvent !== "undefined" ) { + event = event.originalEvent; + } + return event; +} + +function createVirtualEvent( event, eventType ) { + + var t = event.type, + oe, props, ne, prop, ct, touch, i, j; + + event = $.Event(event); + event.type = eventType; + + oe = event.originalEvent; + props = $.event.props; + + // addresses separation of $.event.props in to $.event.mouseHook.props and Issue 3280 + // https://github.com/jquery/jquery-mobile/issues/3280 + if ( t.search( /^(mouse|click)/ ) > -1 ) { + props = mouseEventProps; + } + + // copy original event properties over to the new event + // this would happen if we could call $.event.fix instead of $.Event + // but we don't have a way to force an event to be fixed multiple times + if ( oe ) { + for ( i = props.length, prop; i; ) { + prop = props[ --i ]; + event[ prop ] = oe[ prop ]; + } + } + + // make sure that if the mouse and click virtual events are generated + // without a .which one is defined + if ( t.search(/mouse(down|up)|click/) > -1 && !event.which ){ + event.which = 1; + } + + if ( t.search(/^touch/) !== -1 ) { + ne = getNativeEvent( oe ); + t = ne.touches; + ct = ne.changedTouches; + touch = ( t && t.length ) ? t[0] : ( (ct && ct.length) ? ct[ 0 ] : undefined ); + + if ( touch ) { + for ( j = 0, len = touchEventProps.length; j < len; j++){ + prop = touchEventProps[ j ]; + event[ prop ] = touch[ prop ]; + } + } + } + + return event; +} + +function getVirtualBindingFlags( element ) { + + var flags = {}, + b, k; + + while ( element ) { + + b = $.data( element, dataPropertyName ); + + for ( k in b ) { + if ( b[ k ] ) { + flags[ k ] = flags.hasVirtualBinding = true; + } + } + element = element.parentNode; + } + return flags; +} + +function getClosestElementWithVirtualBinding( element, eventType ) { + var b; + while ( element ) { + + b = $.data( element, dataPropertyName ); + + if ( b && ( !eventType || b[ eventType ] ) ) { + return element; + } + element = element.parentNode; + } + return null; +} + +function enableTouchBindings() { + blockTouchTriggers = false; +} + +function disableTouchBindings() { + blockTouchTriggers = true; +} + +function enableMouseBindings() { + lastTouchID = 0; + clickBlockList.length = 0; + blockMouseTriggers = false; + + // When mouse bindings are enabled, our + // touch bindings are disabled. + disableTouchBindings(); +} + +function disableMouseBindings() { + // When mouse bindings are disabled, our + // touch bindings are enabled. + enableTouchBindings(); +} + +function startResetTimer() { + clearResetTimer(); + resetTimerID = setTimeout(function(){ + resetTimerID = 0; + enableMouseBindings(); + }, $.vmouse.resetTimerDuration ); +} + +function clearResetTimer() { + if ( resetTimerID ){ + clearTimeout( resetTimerID ); + resetTimerID = 0; + } +} + +function triggerVirtualEvent( eventType, event, flags ) { + var ve; + + if ( ( flags && flags[ eventType ] ) || + ( !flags && getClosestElementWithVirtualBinding( event.target, eventType ) ) ) { + + ve = createVirtualEvent( event, eventType ); + + $( event.target).trigger( ve ); + } + + return ve; +} + +function mouseEventCallback( event ) { + var touchID = $.data(event.target, touchTargetPropertyName); + + if ( !blockMouseTriggers && ( !lastTouchID || lastTouchID !== touchID ) ){ + var ve = triggerVirtualEvent( "v" + event.type, event ); + if ( ve ) { + if ( ve.isDefaultPrevented() ) { + event.preventDefault(); + } + if ( ve.isPropagationStopped() ) { + event.stopPropagation(); + } + if ( ve.isImmediatePropagationStopped() ) { + event.stopImmediatePropagation(); + } + } + } +} + +function handleTouchStart( event ) { + + var touches = getNativeEvent( event ).touches, + target, flags; + + if ( touches && touches.length === 1 ) { + + target = event.target; + flags = getVirtualBindingFlags( target ); + + if ( flags.hasVirtualBinding ) { + + lastTouchID = nextTouchID++; + $.data( target, touchTargetPropertyName, lastTouchID ); + + clearResetTimer(); + + disableMouseBindings(); + didScroll = false; + + var t = getNativeEvent( event ).touches[ 0 ]; + startX = t.pageX; + startY = t.pageY; + + triggerVirtualEvent( "vmouseover", event, flags ); + triggerVirtualEvent( "vmousedown", event, flags ); + } + } +} + +function handleScroll( event ) { + if ( blockTouchTriggers ) { + return; + } + + if ( !didScroll ) { + triggerVirtualEvent( "vmousecancel", event, getVirtualBindingFlags( event.target ) ); + } + + didScroll = true; + startResetTimer(); +} + +function handleTouchMove( event ) { + if ( blockTouchTriggers ) { + return; + } + + var t = getNativeEvent( event ).touches[ 0 ], + didCancel = didScroll, + moveThreshold = $.vmouse.moveDistanceThreshold; + didScroll = didScroll || + ( Math.abs(t.pageX - startX) > moveThreshold || + Math.abs(t.pageY - startY) > moveThreshold ), + flags = getVirtualBindingFlags( event.target ); + + if ( didScroll && !didCancel ) { + triggerVirtualEvent( "vmousecancel", event, flags ); + } + + triggerVirtualEvent( "vmousemove", event, flags ); + startResetTimer(); +} + +function handleTouchEnd( event ) { + if ( blockTouchTriggers ) { + return; + } + + disableTouchBindings(); + + var flags = getVirtualBindingFlags( event.target ), + t; + triggerVirtualEvent( "vmouseup", event, flags ); + + if ( !didScroll ) { + var ve = triggerVirtualEvent( "vclick", event, flags ); + if ( ve && ve.isDefaultPrevented() ) { + // The target of the mouse events that follow the touchend + // event don't necessarily match the target used during the + // touch. This means we need to rely on coordinates for blocking + // any click that is generated. + t = getNativeEvent( event ).changedTouches[ 0 ]; + clickBlockList.push({ + touchID: lastTouchID, + x: t.clientX, + y: t.clientY + }); + + // Prevent any mouse events that follow from triggering + // virtual event notifications. + blockMouseTriggers = true; + } + } + triggerVirtualEvent( "vmouseout", event, flags); + didScroll = false; + + startResetTimer(); +} + +function hasVirtualBindings( ele ) { + var bindings = $.data( ele, dataPropertyName ), + k; + + if ( bindings ) { + for ( k in bindings ) { + if ( bindings[ k ] ) { + return true; + } + } + } + return false; +} + +function dummyMouseHandler(){} + +function getSpecialEventObject( eventType ) { + var realType = eventType.substr( 1 ); + + return { + setup: function( data, namespace ) { + // If this is the first virtual mouse binding for this element, + // add a bindings object to its data. + + if ( !hasVirtualBindings( this ) ) { + $.data( this, dataPropertyName, {}); + } + + // If setup is called, we know it is the first binding for this + // eventType, so initialize the count for the eventType to zero. + var bindings = $.data( this, dataPropertyName ); + bindings[ eventType ] = true; + + // If this is the first virtual mouse event for this type, + // register a global handler on the document. + + activeDocHandlers[ eventType ] = ( activeDocHandlers[ eventType ] || 0 ) + 1; + + if ( activeDocHandlers[ eventType ] === 1 ) { + $document.bind( realType, mouseEventCallback ); + } + + // Some browsers, like Opera Mini, won't dispatch mouse/click events + // for elements unless they actually have handlers registered on them. + // To get around this, we register dummy handlers on the elements. + + $( this ).bind( realType, dummyMouseHandler ); + + // For now, if event capture is not supported, we rely on mouse handlers. + if ( eventCaptureSupported ) { + // If this is the first virtual mouse binding for the document, + // register our touchstart handler on the document. + + activeDocHandlers[ "touchstart" ] = ( activeDocHandlers[ "touchstart" ] || 0) + 1; + + if (activeDocHandlers[ "touchstart" ] === 1) { + $document.bind( "touchstart", handleTouchStart ) + .bind( "touchend", handleTouchEnd ) + + // On touch platforms, touching the screen and then dragging your finger + // causes the window content to scroll after some distance threshold is + // exceeded. On these platforms, a scroll prevents a click event from being + // dispatched, and on some platforms, even the touchend is suppressed. To + // mimic the suppression of the click event, we need to watch for a scroll + // event. Unfortunately, some platforms like iOS don't dispatch scroll + // events until *AFTER* the user lifts their finger (touchend). This means + // we need to watch both scroll and touchmove events to figure out whether + // or not a scroll happenens before the touchend event is fired. + + .bind( "touchmove", handleTouchMove ) + .bind( "scroll", handleScroll ); + } + } + }, + + teardown: function( data, namespace ) { + // If this is the last virtual binding for this eventType, + // remove its global handler from the document. + + --activeDocHandlers[ eventType ]; + + if ( !activeDocHandlers[ eventType ] ) { + $document.unbind( realType, mouseEventCallback ); + } + + if ( eventCaptureSupported ) { + // If this is the last virtual mouse binding in existence, + // remove our document touchstart listener. + + --activeDocHandlers[ "touchstart" ]; + + if ( !activeDocHandlers[ "touchstart" ] ) { + $document.unbind( "touchstart", handleTouchStart ) + .unbind( "touchmove", handleTouchMove ) + .unbind( "touchend", handleTouchEnd ) + .unbind( "scroll", handleScroll ); + } + } + + var $this = $( this ), + bindings = $.data( this, dataPropertyName ); + + // teardown may be called when an element was + // removed from the DOM. If this is the case, + // jQuery core may have already stripped the element + // of any data bindings so we need to check it before + // using it. + if ( bindings ) { + bindings[ eventType ] = false; + } + + // Unregister the dummy event handler. + + $this.unbind( realType, dummyMouseHandler ); + + // If this is the last virtual mouse binding on the + // element, remove the binding data from the element. + + if ( !hasVirtualBindings( this ) ) { + $this.removeData( dataPropertyName ); + } + } + }; +} + +// Expose our custom events to the jQuery bind/unbind mechanism. + +for ( var i = 0; i < virtualEventNames.length; i++ ){ + $.event.special[ virtualEventNames[ i ] ] = getSpecialEventObject( virtualEventNames[ i ] ); +} + +// Add a capture click handler to block clicks. +// Note that we require event capture support for this so if the device +// doesn't support it, we punt for now and rely solely on mouse events. +if ( eventCaptureSupported ) { + document.addEventListener( "click", function( e ){ + var cnt = clickBlockList.length, + target = e.target, + x, y, ele, i, o, touchID; + + if ( cnt ) { + x = e.clientX; + y = e.clientY; + threshold = $.vmouse.clickDistanceThreshold; + + // The idea here is to run through the clickBlockList to see if + // the current click event is in the proximity of one of our + // vclick events that had preventDefault() called on it. If we find + // one, then we block the click. + // + // Why do we have to rely on proximity? + // + // Because the target of the touch event that triggered the vclick + // can be different from the target of the click event synthesized + // by the browser. The target of a mouse/click event that is syntehsized + // from a touch event seems to be implementation specific. For example, + // some browsers will fire mouse/click events for a link that is near + // a touch event, even though the target of the touchstart/touchend event + // says the user touched outside the link. Also, it seems that with most + // browsers, the target of the mouse/click event is not calculated until the + // time it is dispatched, so if you replace an element that you touched + // with another element, the target of the mouse/click will be the new + // element underneath that point. + // + // Aside from proximity, we also check to see if the target and any + // of its ancestors were the ones that blocked a click. This is necessary + // because of the strange mouse/click target calculation done in the + // Android 2.1 browser, where if you click on an element, and there is a + // mouse/click handler on one of its ancestors, the target will be the + // innermost child of the touched element, even if that child is no where + // near the point of touch. + + ele = target; + + while ( ele ) { + for ( i = 0; i < cnt; i++ ) { + o = clickBlockList[ i ]; + touchID = 0; + + if ( ( ele === target && Math.abs( o.x - x ) < threshold && Math.abs( o.y - y ) < threshold ) || + $.data( ele, touchTargetPropertyName ) === o.touchID ) { + // XXX: We may want to consider removing matches from the block list + // instead of waiting for the reset timer to fire. + e.preventDefault(); + e.stopPropagation(); + return; + } + } + ele = ele.parentNode; + } + } + }, true); +} +})( jQuery, window, document ); + + + +// Script: jQuery hashchange event +// +// *Version: 1.3, Last updated: 7/21/2010* +// +// Project Home - http://benalman.com/projects/jquery-hashchange-plugin/ +// GitHub - http://github.com/cowboy/jquery-hashchange/ +// Source - http://github.com/cowboy/jquery-hashchange/raw/master/jquery.ba-hashchange.js +// (Minified) - http://github.com/cowboy/jquery-hashchange/raw/master/jquery.ba-hashchange.min.js (0.8kb gzipped) +// +// About: License +// +// Copyright (c) 2010 "Cowboy" Ben Alman, +// Dual licensed under the MIT and GPL licenses. +// http://benalman.com/about/license/ +// +// About: Examples +// +// These working examples, complete with fully commented code, illustrate a few +// ways in which this plugin can be used. +// +// hashchange event - http://benalman.com/code/projects/jquery-hashchange/examples/hashchange/ +// document.domain - http://benalman.com/code/projects/jquery-hashchange/examples/document_domain/ +// +// About: Support and Testing +// +// Information about what version or versions of jQuery this plugin has been +// tested with, what browsers it has been tested in, and where the unit tests +// reside (so you can test it yourself). +// +// jQuery Versions - 1.2.6, 1.3.2, 1.4.1, 1.4.2 +// Browsers Tested - Internet Explorer 6-8, Firefox 2-4, Chrome 5-6, Safari 3.2-5, +// Opera 9.6-10.60, iPhone 3.1, Android 1.6-2.2, BlackBerry 4.6-5. +// Unit Tests - http://benalman.com/code/projects/jquery-hashchange/unit/ +// +// About: Known issues +// +// While this jQuery hashchange event implementation is quite stable and +// robust, there are a few unfortunate browser bugs surrounding expected +// hashchange event-based behaviors, independent of any JavaScript +// window.onhashchange abstraction. See the following examples for more +// information: +// +// Chrome: Back Button - http://benalman.com/code/projects/jquery-hashchange/examples/bug-chrome-back-button/ +// Firefox: Remote XMLHttpRequest - http://benalman.com/code/projects/jquery-hashchange/examples/bug-firefox-remote-xhr/ +// WebKit: Back Button in an Iframe - http://benalman.com/code/projects/jquery-hashchange/examples/bug-webkit-hash-iframe/ +// Safari: Back Button from a different domain - http://benalman.com/code/projects/jquery-hashchange/examples/bug-safari-back-from-diff-domain/ +// +// Also note that should a browser natively support the window.onhashchange +// event, but not report that it does, the fallback polling loop will be used. +// +// About: Release History +// +// 1.3 - (7/21/2010) Reorganized IE6/7 Iframe code to make it more +// "removable" for mobile-only development. Added IE6/7 document.title +// support. Attempted to make Iframe as hidden as possible by using +// techniques from http://www.paciellogroup.com/blog/?p=604. Added +// support for the "shortcut" format $(window).hashchange( fn ) and +// $(window).hashchange() like jQuery provides for built-in events. +// Renamed jQuery.hashchangeDelay to and +// lowered its default value to 50. Added +// and properties plus document-domain.html +// file to address access denied issues when setting document.domain in +// IE6/7. +// 1.2 - (2/11/2010) Fixed a bug where coming back to a page using this plugin +// from a page on another domain would cause an error in Safari 4. Also, +// IE6/7 Iframe is now inserted after the body (this actually works), +// which prevents the page from scrolling when the event is first bound. +// Event can also now be bound before DOM ready, but it won't be usable +// before then in IE6/7. +// 1.1 - (1/21/2010) Incorporated document.documentMode test to fix IE8 bug +// where browser version is incorrectly reported as 8.0, despite +// inclusion of the X-UA-Compatible IE=EmulateIE7 meta tag. +// 1.0 - (1/9/2010) Initial Release. Broke out the jQuery BBQ event.special +// window.onhashchange functionality into a separate plugin for users +// who want just the basic event & back button support, without all the +// extra awesomeness that BBQ provides. This plugin will be included as +// part of jQuery BBQ, but also be available separately. + +(function($,window,undefined){ + // Reused string. + var str_hashchange = 'hashchange', + + // Method / object references. + doc = document, + fake_onhashchange, + special = $.event.special, + + // Does the browser support window.onhashchange? Note that IE8 running in + // IE7 compatibility mode reports true for 'onhashchange' in window, even + // though the event isn't supported, so also test document.documentMode. + doc_mode = doc.documentMode, + supports_onhashchange = 'on' + str_hashchange in window && ( doc_mode === undefined || doc_mode > 7 ); + + // Get location.hash (or what you'd expect location.hash to be) sans any + // leading #. Thanks for making this necessary, Firefox! + function get_fragment( url ) { + url = url || location.href; + return '#' + url.replace( /^[^#]*#?(.*)$/, '$1' ); + }; + + // Method: jQuery.fn.hashchange + // + // Bind a handler to the window.onhashchange event or trigger all bound + // window.onhashchange event handlers. This behavior is consistent with + // jQuery's built-in event handlers. + // + // Usage: + // + // > jQuery(window).hashchange( [ handler ] ); + // + // Arguments: + // + // handler - (Function) Optional handler to be bound to the hashchange + // event. This is a "shortcut" for the more verbose form: + // jQuery(window).bind( 'hashchange', handler ). If handler is omitted, + // all bound window.onhashchange event handlers will be triggered. This + // is a shortcut for the more verbose + // jQuery(window).trigger( 'hashchange' ). These forms are described in + // the section. + // + // Returns: + // + // (jQuery) The initial jQuery collection of elements. + + // Allow the "shortcut" format $(elem).hashchange( fn ) for binding and + // $(elem).hashchange() for triggering, like jQuery does for built-in events. + $.fn[ str_hashchange ] = function( fn ) { + return fn ? this.bind( str_hashchange, fn ) : this.trigger( str_hashchange ); + }; + + // Property: jQuery.fn.hashchange.delay + // + // The numeric interval (in milliseconds) at which the + // polling loop executes. Defaults to 50. + + // Property: jQuery.fn.hashchange.domain + // + // If you're setting document.domain in your JavaScript, and you want hash + // history to work in IE6/7, not only must this property be set, but you must + // also set document.domain BEFORE jQuery is loaded into the page. This + // property is only applicable if you are supporting IE6/7 (or IE8 operating + // in "IE7 compatibility" mode). + // + // In addition, the property must be set to the + // path of the included "document-domain.html" file, which can be renamed or + // modified if necessary (note that the document.domain specified must be the + // same in both your main JavaScript as well as in this file). + // + // Usage: + // + // jQuery.fn.hashchange.domain = document.domain; + + // Property: jQuery.fn.hashchange.src + // + // If, for some reason, you need to specify an Iframe src file (for example, + // when setting document.domain as in ), you can + // do so using this property. Note that when using this property, history + // won't be recorded in IE6/7 until the Iframe src file loads. This property + // is only applicable if you are supporting IE6/7 (or IE8 operating in "IE7 + // compatibility" mode). + // + // Usage: + // + // jQuery.fn.hashchange.src = 'path/to/file.html'; + + $.fn[ str_hashchange ].delay = 50; + /* + $.fn[ str_hashchange ].domain = null; + $.fn[ str_hashchange ].src = null; + */ + + // Event: hashchange event + // + // Fired when location.hash changes. In browsers that support it, the native + // HTML5 window.onhashchange event is used, otherwise a polling loop is + // initialized, running every milliseconds to + // see if the hash has changed. In IE6/7 (and IE8 operating in "IE7 + // compatibility" mode), a hidden Iframe is created to allow the back button + // and hash-based history to work. + // + // Usage as described in : + // + // > // Bind an event handler. + // > jQuery(window).hashchange( function(e) { + // > var hash = location.hash; + // > ... + // > }); + // > + // > // Manually trigger the event handler. + // > jQuery(window).hashchange(); + // + // A more verbose usage that allows for event namespacing: + // + // > // Bind an event handler. + // > jQuery(window).bind( 'hashchange', function(e) { + // > var hash = location.hash; + // > ... + // > }); + // > + // > // Manually trigger the event handler. + // > jQuery(window).trigger( 'hashchange' ); + // + // Additional Notes: + // + // * The polling loop and Iframe are not created until at least one handler + // is actually bound to the 'hashchange' event. + // * If you need the bound handler(s) to execute immediately, in cases where + // a location.hash exists on page load, via bookmark or page refresh for + // example, use jQuery(window).hashchange() or the more verbose + // jQuery(window).trigger( 'hashchange' ). + // * The event can be bound before DOM ready, but since it won't be usable + // before then in IE6/7 (due to the necessary Iframe), recommended usage is + // to bind it inside a DOM ready handler. + + // Override existing $.event.special.hashchange methods (allowing this plugin + // to be defined after jQuery BBQ in BBQ's source code). + special[ str_hashchange ] = $.extend( special[ str_hashchange ], { + + // Called only when the first 'hashchange' event is bound to window. + setup: function() { + // If window.onhashchange is supported natively, there's nothing to do.. + if ( supports_onhashchange ) { return false; } + + // Otherwise, we need to create our own. And we don't want to call this + // until the user binds to the event, just in case they never do, since it + // will create a polling loop and possibly even a hidden Iframe. + $( fake_onhashchange.start ); + }, + + // Called only when the last 'hashchange' event is unbound from window. + teardown: function() { + // If window.onhashchange is supported natively, there's nothing to do.. + if ( supports_onhashchange ) { return false; } + + // Otherwise, we need to stop ours (if possible). + $( fake_onhashchange.stop ); + } + + }); + + // fake_onhashchange does all the work of triggering the window.onhashchange + // event for browsers that don't natively support it, including creating a + // polling loop to watch for hash changes and in IE 6/7 creating a hidden + // Iframe to enable back and forward. + fake_onhashchange = (function(){ + var self = {}, + timeout_id, + + // Remember the initial hash so it doesn't get triggered immediately. + last_hash = get_fragment(), + + fn_retval = function(val){ return val; }, + history_set = fn_retval, + history_get = fn_retval; + + // Start the polling loop. + self.start = function() { + timeout_id || poll(); + }; + + // Stop the polling loop. + self.stop = function() { + timeout_id && clearTimeout( timeout_id ); + timeout_id = undefined; + }; + + // This polling loop checks every $.fn.hashchange.delay milliseconds to see + // if location.hash has changed, and triggers the 'hashchange' event on + // window when necessary. + function poll() { + var hash = get_fragment(), + history_hash = history_get( last_hash ); + + if ( hash !== last_hash ) { + history_set( last_hash = hash, history_hash ); + + $(window).trigger( str_hashchange ); + + } else if ( history_hash !== last_hash ) { + location.href = location.href.replace( /#.*/, '' ) + history_hash; + } + + timeout_id = setTimeout( poll, $.fn[ str_hashchange ].delay ); + }; + + // vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv + // vvvvvvvvvvvvvvvvvvv REMOVE IF NOT SUPPORTING IE6/7/8 vvvvvvvvvvvvvvvvvvv + // vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv + $.browser.msie && !supports_onhashchange && (function(){ + // Not only do IE6/7 need the "magical" Iframe treatment, but so does IE8 + // when running in "IE7 compatibility" mode. + + var iframe, + iframe_src; + + // When the event is bound and polling starts in IE 6/7, create a hidden + // Iframe for history handling. + self.start = function(){ + if ( !iframe ) { + iframe_src = $.fn[ str_hashchange ].src; + iframe_src = iframe_src && iframe_src + get_fragment(); + + // Create hidden Iframe. Attempt to make Iframe as hidden as possible + // by using techniques from http://www.paciellogroup.com/blog/?p=604. + iframe = $('