增加4个linux毕业设计级别项目: 03_嵌入式Linux电子书阅读器,04_数码相框与文件浏览器,05_嵌入式Linux相机,06_智慧家居视频监控系统

This commit is contained in:
weidongshan
2023-08-08 13:51:57 +08:00
parent b5c004daad
commit aa756bccc4
2890 changed files with 604772 additions and 0 deletions

View File

@@ -0,0 +1,12 @@
pk2-la Changelog
2010-03-06 Joseph Jezak
* Allow for detaching existing drivers using the device, thanks to Marty (harnesser) for the fix.
* Apply fix for div by 0 when calculating distance, thanks to Matthew Beckler for the fix.
* Release (v1.1)
2009-08-10 Joseph Jezak
* Fix for falling edge trigger
2009-05-28 Joseph Jezak
* Initial Release (v1.0)

View File

@@ -0,0 +1,340 @@
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Library General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) 19yy <name of author>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) 19yy name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Library General
Public License instead of this License.

View File

@@ -0,0 +1,87 @@
I/O Probe
=====================================================================
1. Read VDD/VPP -> Make sure we have a voltage on the device
Command: 0xA3
Response:
0x00 16 bit value, little endian: VDD Voltage
0x02 16 bit value, little endian: VPP Voltage
2. Set VDD
Command: 0xA1 CCP ADC THR
CCP: Always 0x40
ADC/THR: See the code for the equation from pk2cmd
3. Set VPP
Command: 0xA0 CCP CCP THR
CCP: 16 bit value, little endian
THR: See the code for the equation from pk2cmd
4. Script 1 - Sets up the device
Command:
0xA6: Execute Script
0x09: Length (0x09 bytes)
0xFA: VDD Off
0xF7: MCLR Ground On
0xF9: VPP PWM(?) On
0xF3: Set ICSP Pins
0xXX: ICSP Pin value (See below)
0xCF: Set AUX Pins
0xXX: AUX Pin value (See below)
0xE8: Long Delay
0x14: Delay Amount
Read status after running this script
Status bits: (from the pk2 tool)
0x0001 - VDD GND On
0x0002 - VDD On
0x0004 - VPP GND On
0x0008 - VPP On
0x0010 - VDD Error
0x0020 - VPP Error
0x0040 - PICkit2 Button Pressed
0x0080 - Unknown
0x0100 - PICkit2 Reset
0x0200 - Unknown
0x0400 - ICD Transfer Timeout
0x0800 - Script Abort - Upload Full
0x1000 - Script Abort - Downlod Empty
0x2000 - Run Script on Empty Script
0x4000 - Script Buffer Overflow
0x8000 - Download Buffer Overflow
ICSP Pins:
0x01: Pin 5 - I/O - 1 if Input / 0 if Output
0x02: Pin 4 - I/O - 1 if Input / 0 if Output
0x04: Pin 5 - Output Value
0x08: Pin 6 - Output Value
AUX Pins:
0x01: Pin 6 - I/O - 1 if Input / 0 if Output
0x02: Pin 6 - Output Value
5. Script 2 - Sets up the I/O Ports
Command:
0xA6: Execute Script
0x09: Length (0x06 bytes)
0xFA: VDD Off
0xF7: MCLR Ground On
0xF3: Set ICSP Pins
0xXX: ICSP Pin value
0xCF: Set AUX Pins
0xXX: AUX Pin value
Read status after running this script (see above for details)
6. Loop
a. Run Script 2 if the conditions have changed
b. Run Script to read from the device buffers
Command:
0xA6: Execute Script
0x02: Length (0x02 bytes)
0xDC: ICSP States Buffer
0xCE: Aux State Buffer
0xAA: Upload Data Command (?)
Return value:
0x00: Unknown
0x01: ICSP Byte
0x01 - Pin 5 (set/unset)
0x02 - Pin 4 (set/unset)
0x02: AUX Byte
0x01 - Pin 6 (set/unset)
c. Read Status

View File

@@ -0,0 +1,76 @@
Configuration Packet
=====================================================================
0x00: 0xB8
0x01: UNKNOWN (Seen values - 0x00 and 0x01, 0x01 is used in my app)
0x02: (Enable - Don't care if the bit isn't set)
0x04: Ch1 Enable
0x08: Ch2 Enable
0x10: Ch3 Enable
0x03: (Trigger on 1 if bit is set, trigger on 0 otherwise)
0x04: Ch1 Trigger on 1
0x08: Ch2 Trigger on 1
0x10: Ch3 Trigger on 1
0x04: (Trigger on Edge)
0x04: Ch1 Edge
0x08: Ch2 Edge
0x10: Ch3 Edge
0x05: Sample Repeats
0x01 - 0xFF (1 - 255)
0x06: Trigger Window?
0x0A - Center
0x48 - End
0xCC - Start
0xB4 - Trigger 1
0x9C - Trigger 2
0x84 - Trigger 3
0x07: Trigger Window?
0x00 - End
0x02 - Center
0x03 - Start
0x07 - Trigger 1
0x0B - Trigger 2
0x0F - Trigger 3
0x08: Sample Rate Bit
0x00 - 1MHz
0x01 - 500khz
0x03 - 250khz
0x09 - 100kHz
0x13 - 50kHz
0x27 - 25kHz
0x63 - 10kHz
0xC7 - 5kHz
Set Location in Trigger Bank
=====================================================================
0x00: 0xB9
0x01: Offset in bank (0x00 and 0x80 used)
0x02: Bank
0x06
0x07
Send the Next Bank from the Current Address
=====================================================================
0x00: 0xAC
Updates the location pointer to the next location
Returned Data Format
====================================================================
It seems that each data packet byte is laid out like this:
Ch2 Ch1 0 Ch3 C2 Ch1 0 Ch3
Perhaps it makes sense if you think of the byte as little endian, but I'm
still seeing noise in these packets that doesn't show up in their application.
Further testing is still required!
Notes
====================================================================
* Note *All* packets are padded with 0xAD to 64 bytes if the length is < 64 bytes
* The meaning of the response packet after the trigger is unknown at this time
* Other sample rates are probably permissible, but I haven't tested to find them yet

View File

@@ -0,0 +1,54 @@
PK2-LA: Logic Analyzer and I/O Probe for the Microchip PICkit2 programmer (v1.1)
================================================================================
Requirements:
================================================================================
python built with threading support
pyusb
>=pygtk-2.0
Getting Started:
================================================================================
Simply run pk2-la to start the analyzer. You must have your PICkit2 plugged in
at startup.
Logic Analzyer:
=================================================================================
A source should be attached to Pin 2 of the PICkit2 in order to use this
component, if not, logic high values cannot be detected! It is recommended that
you also connect Pin 3 to ground.
The logic analzyer has three channels which can be used to collect data. This
data is then displayed in the window at the top of the screen. This data may
be saved as either a text representation or a png file. The data itself can be
captured under a number of different circumstances by adjusting the trigger
values.
Note: Only the visible area will be saved to the png.
I/O Probe:
================================================================================
A 2.5v to 5.0v source *must* be attached to Pin 2 of the PICkit2 in order to
use this component. It is recommended that you also connect Pin 3 to ground.
Select the initial conditions for the probe, including the directionality of
the pins. Once you are satisfied with the settings, press the "Enable I/O"
button to begin using the probe. Press it again to stop. While the probe is
running, the current state of the pins will be shown in the blue (input) and
red (output) boxes on the right of the window. Clicking on an output box
will change the state of the pin.
Note: Pin 1 can only be used as an output pin. This is a hardare limitation.
Bugs:
================================================================================
Please file them in the sourceforge tracker at: http://pk2-la.sf.net
Thanks!
Any other questions or comments?
================================================================================
Please contact Joseph Jezak at josejx@gentoo.org
Hope you find this useful!

View File

@@ -0,0 +1,127 @@
## 1. 编译
使用不同的开发板、不同的编译工具时,
需要灵活变通:
1. 视频里使用的工具链是 arm-linux-gcc如果你的工具链不同请自行修改
2. 视频里需要自己编译freetype库
但是很多工具链都自带了freetype库那就无需编译freetype
但是这些工具链里freetype的头文件可能放在工具链里"usr/include/freetype2"目录下,
你编译程序时需要指定: -I /工具链目录/usr/include/freetype2
举例如下。
### 1.1 对于IMX6ULL
使用Makefile的程序要修改Makefile
* 工具链前缀:可以继续使用"arm-linux-",也可以使用"arm-buildroot-linux-gnueabihf-"
* 头文件目录:`-I /home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/arm-buildroot-linux-gnueabihf/sysroot/usr/include/freetype2`
如果是直接使用命令来编译,示例如下:
```shell
arm-buildroot-linux-gnueabihf-gcc -I /home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/arm-buildroot-linux-gnueabihf/sysroot/usr/include/freetype2 -o show_lines show_lines.c -lm -lfreetype
```
### 1.2 对于STM32MP157
使用Makefile的程序要修改Makefile
* 工具链前缀:可以继续使用"arm-linux-",也可以使用"arm-buildroot-linux-gnueabihf-"
* 头文件目录:`-I /home/book/100ask_stm32mp157_pro-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/arm-buildroot-linux-gnueabihf/sysroot/usr/include/freetype2`
如果是直接使用命令来编译,示例如下:
```shell
arm-buildroot-linux-gnueabihf-gcc -I /home/book/100ask_stm32mp157_pro-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/arm-buildroot-linux-gnueabihf/sysroot/usr/include/freetype2 -o show_lines show_lines.c -lm -lfreetype
```
## 2. 开发板网络配置
在开发板的《嵌入式Linux应用开发完全手册》中有介绍如何配置网卡使得可以跟Ubuntu联通。
简介如下:
### 2.1 IMX6ULL
修改开发板的/etc/network/interfaces内容如下
```shell
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.5.9
netmask 255.255.255.0
gateway 192.168.5.1
```
然后重启。
### 2.2 STM32MP157
修改开发板的/etc/systemd/network/50-static.network内容如下
```shell
[Match]
Name=eth0
[Network]
Address=192.168.5.9/24
Gateway=192.168.5.1
```
然后重启。
## 3. 移除GUI
### 3.1 IMX6ULL
在开发板上执行如下命令后重启:
```shell
mv /etc/init.d/S99myirhmi2 /root
mv /etc/init.d/S05lvgl /root
```
### 3.2 STM32MP157
在开发板上执行如下命令:
```shell
systemctl stop myir
```
## 4. LCD黑屏
实验过程中LCD过几分钟就黑屏这是正常的。
可以关闭黑屏的功能,执行以下命令即可:
```shell
echo -e "\033[9;0]" > /dev/tty0
```
## 5. 电子书阅读器测试命令
```shell
./show_file -s 32 -d fb -f ./MSYH.TTF ./utf8_novel.txt
```

View File

@@ -0,0 +1,312 @@
// Simple Set Clipboard System
// Author: Joseph Huckaby
var ZeroClipboard = {
version: "1.0.7",
clients: {}, // registered upload clients on page, indexed by id
moviePath: 'http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf', //http://skin.ganjinpai.com/script/plugins/ URL to movie
nextId: 1, // ID of next movie
$: function(thingy) {
// simple DOM lookup utility function
if (typeof(thingy) == 'string') thingy = document.getElementById(thingy);
if (true || !thingy.addClass) {
// extend element with a few useful methods
thingy.hide = function() { this.style.display = 'none'; };
thingy.show = function() { this.style.display = ''; };
thingy.addClass = function(name) { this.removeClass(name); this.className += ' ' + name; };
thingy.removeClass = function(name) {
var classes = this.className.split(/\s+/);
var idx = -1;
for (var k = 0; k < classes.length; k++) {
if (classes[k] == name) { idx = k; k = classes.length; }
}
if (idx > -1) {
classes.splice( idx, 1 );
this.className = classes.join(' ');
}
return this;
};
thingy.hasClass = function(name) {
return !!this.className.match( new RegExp("\\s*" + name + "\\s*") );
};
}
return thingy;
},
setMoviePath: function(path) {
// set path to ZeroClipboard.swf
this.moviePath = path;
},
dispatch: function(id, eventName, args) {
// receive event from flash movie, send to client
var client = this.clients[id];
if (client) {
client.receiveEvent(eventName, args);
}
},
register: function(id, client) {
// register new client to receive events
this.clients[id] = client;
},
getDOMObjectPosition: function(obj, stopObj) {
// get absolute coordinates for dom element
var info = {
left: 0,
top: 0,
width: obj.width ? obj.width : obj.offsetWidth,
height: obj.height ? obj.height : obj.offsetHeight
};
while (obj && (obj != stopObj)) {
info.left += obj.offsetLeft;
info.top += obj.offsetTop;
obj = obj.offsetParent;
}
return info;
},
Client: function(elem) {
// constructor for new simple upload client
this.handlers = {};
// unique ID
this.id = ZeroClipboard.nextId++;
this.movieId = 'ZeroClipboardMovie_' + this.id;
// register client with singleton to receive flash events
ZeroClipboard.register(this.id, this);
// create movie
if (elem) this.glue(elem);
}
};
ZeroClipboard.Client.prototype = {
id: 0, // unique ID for us
ready: false, // whether movie is ready to receive events or not
movie: null, // reference to movie object
clipText: '', // text to copy to clipboard
handCursorEnabled: true, // whether to show hand cursor, or default pointer cursor
cssEffects: true, // enable CSS mouse effects on dom container
handlers: null, // user event handlers
glue: function (elem, appendElem, stylesToAdd) {
// glue to DOM element
// elem can be ID or actual DOM element object
this.domElement = ZeroClipboard.$(elem);
// float just above object, or zIndex 99 if dom element isn't set
var zIndex = 99;
if (this.domElement.style.zIndex) {
zIndex = parseInt(this.domElement.style.zIndex, 10) + 1;
}
if (typeof (appendElem) == 'string') {
appendElem = ZeroClipboard.$(appendElem);
}
else if (typeof (appendElem) == 'undefined') {
appendElem = document.getElementsByTagName('body')[0];
}
// find X/Y position of domElement
var box = ZeroClipboard.getDOMObjectPosition(this.domElement, appendElem);
// create floating DIV above element
this.div = document.createElement('div');
var style = this.div.style;
//this.div.id = 'flv_box';
style.position = 'absolute';
style.left = '' + box.left + 'px';
style.top = '' + box.top + 'px';
style.width = '' + box.width + 'px';
style.height = '' + box.height + 'px';
style.zIndex = zIndex;
if (typeof (stylesToAdd) == 'object') {
for (addedStyle in stylesToAdd) {
style[addedStyle] = stylesToAdd[addedStyle];
}
}
//style.backgroundColor = '#f00'; // debug
appendElem.appendChild(this.div);
this.div.innerHTML = this.getHTML(box.width, box.height);
},
getHTML: function (width, height) {
// return HTML for movie
var html = '';
var flashvars = 'id=' + this.id +
'&width=' + width +
'&height=' + height;
if (navigator.userAgent.match(/MSIE/)) {
// IE gets an OBJECT tag
var protocol = location.href.match(/^https/i) ? 'https://' : 'http://';
html += '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="' + protocol + 'download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="' + width + '" height="' + height + '" id="' + this.movieId + '" align="middle"><param name="allowScriptAccess" value="always" /><param name="allowFullScreen" value="false" /><param name="movie" value="' + ZeroClipboard.moviePath + '" /><param name="loop" value="false" /><param name="menu" value="false" /><param name="quality" value="best" /><param name="bgcolor" value="#ffffff" /><param name="flashvars" value="' + flashvars + '"/><param name="wmode" value="transparent"/></object>';
}
else {
// all other browsers get an EMBED tag
html += '<embed id="' + this.movieId + '" src="' + ZeroClipboard.moviePath + '" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="' + width + '" height="' + height + '" name="' + this.movieId + '" align="middle" allowScriptAccess="always" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="' + flashvars + '" wmode="transparent" />';
}
return html;
},
hide: function () {
// temporarily hide floater offscreen
if (this.div) {
this.div.style.left = '-2000px';
}
},
show: function () {
// show ourselves after a call to hide()
this.reposition();
},
destroy: function () {
// destroy control and floater
if (this.domElement && this.div) {
this.hide();
this.div.innerHTML = '';
var body = document.getElementsByTagName('body')[0];
try { body.removeChild(this.div); } catch (e) { ; }
this.domElement = null;
this.div = null;
}
},
reposition: function (elem) {
// reposition our floating div, optionally to new container
// warning: container CANNOT change size, only position
if (elem) {
this.domElement = ZeroClipboard.$(elem);
if (!this.domElement) this.hide();
}
if (this.domElement && this.div) {
var box = ZeroClipboard.getDOMObjectPosition(this.domElement);
var style = this.div.style;
style.left = '' + box.left + 'px';
style.top = '' + box.top + 'px';
}
},
setText: function (newText) {
// set text to be copied to clipboard
this.clipText = newText;
if (this.ready) this.movie.setText(newText);
},
addEventListener: function (eventName, func) {
// add user event listener for event
// event types: load, queueStart, fileStart, fileComplete, queueComplete, progress, error, cancel
eventName = eventName.toString().toLowerCase().replace(/^on/, '');
if (!this.handlers[eventName]) this.handlers[eventName] = [];
this.handlers[eventName].push(func);
},
setHandCursor: function (enabled) {
// enable hand cursor (true), or default arrow cursor (false)
this.handCursorEnabled = enabled;
if (this.ready) this.movie.setHandCursor(enabled);
},
setCSSEffects: function (enabled) {
// enable or disable CSS effects on DOM container
this.cssEffects = !!enabled;
},
receiveEvent: function (eventName, args) {
// receive event from flash
eventName = eventName.toString().toLowerCase().replace(/^on/, '');
// special behavior for certain events
switch (eventName) {
case 'load':
// movie claims it is ready, but in IE this isn't always the case...
// bug fix: Cannot extend EMBED DOM elements in Firefox, must use traditional function
this.movie = document.getElementById(this.movieId);
if (!this.movie) {
var self = this;
setTimeout(function () { self.receiveEvent('load', null); }, 1);
return;
}
// firefox on pc needs a "kick" in order to set these in certain cases
if (!this.ready && navigator.userAgent.match(/Firefox/) && navigator.userAgent.match(/Windows/)) {
var self = this;
setTimeout(function () { self.receiveEvent('load', null); }, 100);
this.ready = true;
return;
}
this.ready = true;
this.movie.setText(this.clipText);
this.movie.setHandCursor(this.handCursorEnabled);
break;
case 'mouseover':
if (this.domElement && this.cssEffects) {
this.domElement.addClass('hover');
if (this.recoverActive) this.domElement.addClass('active');
}
break;
case 'mouseout':
if (this.domElement && this.cssEffects) {
this.recoverActive = false;
if (this.domElement.hasClass('active')) {
this.domElement.removeClass('active');
this.recoverActive = true;
}
this.domElement.removeClass('hover');
}
break;
case 'mousedown':
if (this.domElement && this.cssEffects) {
this.domElement.addClass('active');
}
break;
case 'mouseup':
if (this.domElement && this.cssEffects) {
this.domElement.removeClass('active');
this.recoverActive = false;
}
break;
} // switch eventName
if (this.handlers[eventName]) {
for (var idx = 0, len = this.handlers[eventName].length; idx < len; idx++) {
var func = this.handlers[eventName][idx];
if (typeof (func) == 'function') {
// actual function reference
func(this, args);
}
else if ((typeof (func) == 'object') && (func.length == 2)) {
// PHP style object + method, i.e. [myObject, 'myMethod']
func[0][func[1]](this, args);
}
else if (typeof (func) == 'string') {
// name of function
window[func](this, args);
}
} // foreach event handler defined
} // user defined handler for event
}
};

View File

@@ -0,0 +1,41 @@
<!DOCTYPE html>
<html><head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>CSDN Ad</title>
<style type="text/css">
body { margin:0px; padding:0px;}
</style>
</head>
<body>
<div id="div1"><!-- 广告位:博客内文页下方 760 90 -->
<script src="ad_data/log.js" async="" charset="utf-8"></script><script type="text/javascript">BAIDU_CLB_SLOT_ID = "117306";</script>
<script type="text/javascript" src="ad_data/o.js"></script><script charset="utf-8" src="ad_data/ecom"></script><script type="text/javascript"><!--
google_ad_client = "ca-pub-1076724771190722";
/* blog正文下方728x90 */
google_ad_slot = "4497271841";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript" src="ad_data/show_ads.js">
</script><ins style="display:inline-table;border:none;height:90px;margin:0;padding:0;position:relative;visibility:visible;width:728px"><ins id="aswift_0_anchor" style="display:block;border:none;height:90px;margin:0;padding:0;position:relative;visibility:visible;width:728px"><iframe allowtransparency="true" hspace="0" marginwidth="0" marginheight="0" onload="var i=this.id,s=window.google_iframe_oncopy,H=s&amp;&amp;s.handlers,h=H&amp;&amp;H[i],w=this.contentWindow,d;try{d=w.document}catch(e){}if(h&amp;&amp;d&amp;&amp;(!d.body||!d.body.firstChild)){if(h.call){i+='.call';setTimeout(h,0)}else if(h.match){i+='.nav';w.location.replace(h)}s.log&amp;&amp;s.log.push(i)}" vspace="0" id="aswift_0" name="aswift_0" style="left: 0px; position: absolute; top: 0px;" frameborder="0" height="90" scrolling="no" width="728"></iframe></ins></ins>
</div>
<script type="text/javascript">
window.onload = function () {
var old_domain = document.domain;
//document.domain = "csdn.net";
//这种给广告区域赋值的方式对于有些JS广告不能完美的显示
//top.document.getElementById('ad_cen').innerHTML = document.getElementById('div1').innerHTML;
var h = document.body.offsetHeight + 2;
setTimeout(function () {
if (h > 800) h = document.getElementById('div1').offsetHeight + 4;
top.document.getElementById('ad_frm_0').style.height = h + 'px';
}, 100);
};
</script>
</body></html>

View File

@@ -0,0 +1,39 @@
var home_domain = "blog.csdn.net";
var ad_cnt = ad_cnt || 0;
/*CSDN广告延迟加载 t:广告类型数字id:容器id*/
var Ad = function (t, id) {
this.adType = t;
this.containerId = id;
this.adIndex = ad_cnt++;
this.loadAd = function () {
//document.domain = "csdn.net";
var container = document.getElementById(this.containerId);
var width = container.offsetWidth - 2 - container.style.paddingLeft - container.style.paddingRight;
//var height = container.offsetHeight - 2 - container.style.paddingTop - container.style.paddingBottom;
var frm = document.createElement('iframe');
frm.id = "ad_frm_" + this.adIndex;
frm.frameBorder = "0";
frm.scrolling = "no";
frm.style.borderWidth = "0px";
frm.style.overflow = "hidden";
if (width > 0) frm.style.width = width + "px";
else frm.style.width = "98%";
frm.style.height = "0px";
frm.src = "http://" + home_domain + "/common/ad.html"
+ "?t=" + this.adType
+ "&containerId=" + this.containerId
+ "&frmId=" + frm.id;
container.appendChild(frm);
};
if (jQuery) {
jQuery((function (_ad) {
return function () { _ad.loadAd(); }
})(this));
} else {
this.loadAd();
}
};

View File

@@ -0,0 +1,46 @@
<!DOCTYPE html>
<html><head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>CSDN Ad</title>
<style type="text/css">
body { margin:0px; padding:0px;}
</style>
</head>
<body>
<div id="div1"><style type="text/css">
ul { margin:0px; padding:0 4px 0 0; }
ul, x:-moz-any-link, x:default { width:90%; }
ul li { padding:3px 0px;}
a { font-size:12px; text-decoration:none; color:#006699; }
a:hover { color:#000; }
</style>
<ul>
<li><a href="http://blog.csdn.net/nkmnkm/article/details/7727766" target="_blank">* Android 多媒体和相机详解</a></li>
<li><a href="http://blog.csdn.net/xiaojianpitt/article/details/7727152" target="_blank">* ASDFLisp项目构建利器使用说明</a></li>
<li><a href="http://blog.csdn.net/azurechina/article/details/7721955" target="_blank">* 如何在Windows Azure中创建一个Web Sites</a></li>
<li><a href="http://blog.csdn.net/teamlet/article/details/7721176" target="_blank">* Restlet 2.2借助Servlet部署到Tomcat的方法</a></li>
<li><a href="http://blog.csdn.net/dyllove98/article/details/7720060" target="_blank">* SNMP使用SNMP4J OID设置不同类型的参数值</a></li>
<li><a href="http://blog.csdn.net/tianxiaode/article/details/7714183" target="_blank">* Ext JS 4.1的性能</a></li>
</ul></div>
<script type="text/javascript">
window.onload = function () {
var old_domain = document.domain;
//document.domain = "csdn.net";
//这种给广告区域赋值的方式对于有些JS广告不能完美的显示
//top.document.getElementById('ad_commend').innerHTML = document.getElementById('div1').innerHTML;
var h = document.body.offsetHeight + 2;
setTimeout(function () {
if (h > 800) h = document.getElementById('div1').offsetHeight + 4;
top.document.getElementById('ad_frm_2').style.height = h + 'px';
}, 100);
};
</script>
</body></html>

View File

@@ -0,0 +1 @@
BAIDU_CLB_SETJSONADSLOT ({ "117306" : { "_stype" : 0, "_w" : 728, "_h" : 90, "_type" : "json_html", "_html" : {"content":"\x3cscript type=\"text\/javascript\"\x3e\x3c!--\x0agoogle_ad_client = \"ca-pub-1076724771190722\";\x0a\/* blog正文下方728x90 *\/\x0agoogle_ad_slot = \"4497271841\";\x0agoogle_ad_width = 728;\x0agoogle_ad_height = 90;\x0a\/\/--\x3e\x0a\x3c\/script\x3e\x0a\x3cscript type=\"text\/javascript\"\x0asrc=\"http:\/\/pagead2.googlesyndication.com\/pagead\/show_ads.js\"\x3e\x0a\x3c\/script\x3e","type":"rich","version":1}, "_fxp" : true, "_sf" : false, "_st" : 0, "_top" : 0, "_left" : 0, "_hs" : 0, "_vs" : 0, "_bf" : false, "_isMlt" : 1, "_fr" : false, "_qid" : "2e19b2b9a3717c9b", "_v" : 1, "_qn" : "" } });

View File

@@ -0,0 +1,2 @@
(function(){function e(a,c){var b=c||{};b.type=a;b.url=f.URL;b.host=d.location.hostname;d.BAIDU_CLB_sendLog(b)}var d=window,f=document,g="CSS1Compat"!==f.compatMode,h=d.BAIDU_CLB_SLOTS_MAP||{};try{g&&e("quirks"),function(){var a=f.domain;0===a.indexOf("www.")&&(a=a.substring(4));"."===a.charAt(a.length-1)&&(a=a.substring(0,a.length-1));RegExp("([a-z0-9][a-z0-9\\-]*?\\.(?:com|cn|net|org|gov|info|la|cc|co|jp|us|hk|tv|me|biz|in|be|io|tk|cm|li|ru|ws|hn|fm)(?:\\.(?:cn|jp|tw|ru))?)$","i").test(a)||e("domainNotMatch")}(),
function(){setTimeout(function(){for(var a in h){var c=a,b=h[a];if("object"!==typeof b)e("loadFail",{id:c});else if(!0!==b._done)e("renderFail",{id:c,qid:b._qid,error:b._done||"NotFilled",empty:!!b._html});else{var d=f.getElementById("baidu_clb_slot_iframe_"+c);if(d)try{var i=d.contentWindow.document.body;(!i||!i.firstChild)&&e("renderEmpty",{id:c,qid:b._qid,stype:b._stype})}catch(g){}}}},0)}()}catch(j){}})();

View File

@@ -0,0 +1,13 @@
(function(){var f=!0,h=null,i=!1,aa=function(a,b,c){return a.call.apply(a.bind,arguments)},ba=function(a,b,c){if(!a)throw Error();if(2<arguments.length){var e=Array.prototype.slice.call(arguments,2);return function(){var c=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(c,e);return a.apply(b,c)}}return function(){return a.apply(b,arguments)}},j=function(a,b,c){j=Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?aa:ba;return j.apply(h,arguments)};var k=(new Date).getTime();var ca=/&/g,da=/</g,ea=/>/g,fa=/\"/g,m={"\x00":"\\0","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\x0B":"\\x0B",'"':'\\"',"\\":"\\\\"},p={"'":"\\'"};var ga=function(a){a=parseFloat(a);return isNaN(a)||1<a||0>a?0:a},ha=/^([\w-]+\.)*([\w-]{2,})(\:[0-9]+)?$/,q=function(a){return!a?"pagead2.googlesyndication.com":(a=a.match(ha))?a[0]:"pagead2.googlesyndication.com"};q("");var s=function(a){return!!a&&"function"==typeof a&&!!a.call},ia=function(a,b){if(!(2>arguments.length))for(var c=1,e=arguments.length;c<e;++c)a.push(arguments[c])};function t(a){return"function"==typeof encodeURIComponent?encodeURIComponent(a):escape(a)}var ja=function(a,b){if(!(1E-4>Math.random())){var c=Math.random();if(c<b)return a[Math.floor(c/b*a.length)]}return h},u=function(a){try{return!!a.location.href||""===a.location.href}catch(b){return i}};var w=h,ka=function(){if(!w){for(var a=window,b=a,c=0;a!=a.parent;)if(a=a.parent,c++,u(a))b=a;else break;w=b}return w};var x,y=function(a){this.c=[];this.a=a||window;this.b=0;this.d=h},la=function(a,b){this.l=a;this.i=b};y.prototype.n=function(a,b){0==this.b&&0==this.c.length&&(!b||b==window)?(this.b=2,this.g(new la(a,window))):this.h(a,b)};y.prototype.h=function(a,b){this.c.push(new la(a,b||this.a));z(this)};y.prototype.o=function(a){this.b=1;a&&(this.d=this.a.setTimeout(j(this.f,this),a))};y.prototype.f=function(){1==this.b&&(this.d!=h&&(this.a.clearTimeout(this.d),this.d=h),this.b=0);z(this)};y.prototype.p=function(){return f};
y.prototype.nq=y.prototype.n;y.prototype.nqa=y.prototype.h;y.prototype.al=y.prototype.o;y.prototype.rl=y.prototype.f;y.prototype.sz=y.prototype.p;var z=function(a){a.a.setTimeout(j(a.m,a),0)};y.prototype.m=function(){if(0==this.b&&this.c.length){var a=this.c.shift();this.b=2;a.i.setTimeout(j(this.g,this,a),0);z(this)}};y.prototype.g=function(a){this.b=0;a.l()};
var ma=function(a){try{return a.sz()}catch(b){return i}},oa=function(a){return!!a&&("object"==typeof a||"function"==typeof a)&&ma(a)&&s(a.nq)&&s(a.nqa)&&s(a.al)&&s(a.rl)},A=function(){if(x&&ma(x))return x;var a=ka(),b=a.google_jobrunner;return oa(b)?x=b:a.google_jobrunner=x=new y(a)},pa=function(a,b){A().nq(a,b)},qa=function(a,b){A().nqa(a,b)};var ra=/MSIE [2-7]|PlayStation|Gecko\/20090226/i,sa=/Android|Opera/,ta=function(){var a=B,b=F.google_ad_width,c=F.google_ad_height,e=["<iframe"],d;for(d in a)a.hasOwnProperty(d)&&ia(e,d+"="+a[d]);e.push('style="left:0;position:absolute;top:0;"');e.push("></iframe>");b="border:none;height:"+c+"px;margin:0;padding:0;position:relative;visibility:visible;width:"+b+"px";return['<ins style="display:inline-table;',b,'"><ins id="',a.id+"_anchor",'" style="display:block;',b,'">',e.join(" "),"</ins></ins>"].join("")};var ua=/^true$/.test("false")?f:i;var va=function(a,b,c){c||(c=ua?"https":"http");return[c,"://",a,b].join("")};var wa=function(){},G=function(a,b,c){switch(typeof b){case "string":xa(b,c);break;case "number":c.push(isFinite(b)&&!isNaN(b)?b:"null");break;case "boolean":c.push(b);break;case "undefined":c.push("null");break;case "object":if(b==h){c.push("null");break}if(b instanceof Array){var e=b.length;c.push("[");for(var d="",g=0;g<e;g++)c.push(d),G(a,b[g],c),d=",";c.push("]");break}c.push("{");e="";for(d in b)b.hasOwnProperty(d)&&(g=b[d],"function"!=typeof g&&(c.push(e),xa(d,c),c.push(":"),G(a,g,c),e=","));
c.push("}");break;case "function":break;default:throw Error("Unknown type: "+typeof b);}},H={'"':'\\"',"\\":"\\\\","/":"\\/","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\x0B":"\\u000b"},ya=/\uffff/.test("\uffff")?/[\\\"\x00-\x1f\x7f-\uffff]/g:/[\\\"\x00-\x1f\x7f-\xff]/g,xa=function(a,b){b.push('"');b.push(a.replace(ya,function(a){if(a in H)return H[a];var b=a.charCodeAt(0),d="\\u";16>b?d+="000":256>b?d+="00":4096>b&&(d+="0");return H[a]=d+b.toString(16)}));b.push('"')};var I="google_ad_block google_ad_channel google_ad_client google_ad_format google_ad_height google_ad_host google_ad_host_channel google_ad_host_tier_id google_ad_output google_ad_override google_ad_region google_ad_section google_ad_slot google_ad_type google_ad_width google_adtest google_allow_expandable_ads google_alternate_ad_url google_alternate_color google_analytics_domain_name google_analytics_uacct google_bid google_city google_color_bg google_color_border google_color_line google_color_link google_color_text google_color_url google_container_id google_contents google_country google_cpm google_ctr_threshold google_cust_age google_cust_ch google_cust_gender google_cust_id google_cust_interests google_cust_job google_cust_l google_cust_lh google_cust_u_url google_disable_video_autoplay google_ed google_eids google_enable_ose google_encoding google_font_face google_font_size google_frame_id google_gl google_hints google_image_size google_kw google_kw_type google_language google_max_num_ads google_max_radlink_len google_mtl google_num_radlinks google_num_radlinks_per_unit google_num_slots_to_rotate google_only_ads_with_video google_only_pyv_ads google_only_userchoice_ads google_override_format google_page_url google_previous_watch google_previous_searches google_referrer_url google_region google_reuse_colors google_rl_dest_url google_rl_filtering google_rl_mode google_rt google_safe google_scs google_skip google_tag_info google_targeting google_tdsma google_tfs google_tl google_ui_features google_ui_version google_video_doc_id google_video_product_type google_with_pyv_ads".split(" ");var J=function(a){this.a=a;a.google_iframe_oncopy||(a.google_iframe_oncopy={handlers:{},log:[],shouldLog:0.01>Math.random()?f:i});this.e=a.google_iframe_oncopy;a.setTimeout(j(this.k,this),3E4)},za;var K="var i=this.id,s=window.google_iframe_oncopy,H=s&&s.handlers,h=H&&H[i],w=this.contentWindow,d;try{d=w.document}catch(e){}if(h&&d&&(!d.body||!d.body.firstChild)){if(h.call){i+='.call';setTimeout(h,0)}else if(h.match){i+='.nav';w.location.replace(h)}s.log&&s.log.push(i)}";
/[&<>\"]/.test(K)&&(-1!=K.indexOf("&")&&(K=K.replace(ca,"&amp;")),-1!=K.indexOf("<")&&(K=K.replace(da,"&lt;")),-1!=K.indexOf(">")&&(K=K.replace(ea,"&gt;")),-1!=K.indexOf('"')&&(K=K.replace(fa,"&quot;")));za=K;J.prototype.set=function(a,b){this.e.handlers[a]=b;this.a.addEventListener&&this.a.addEventListener("load",j(this.j,this,a),i)};J.prototype.j=function(a){var a=this.a.document.getElementById(a),b=a.contentWindow.document;if(a.onload&&b&&(!b.body||!b.body.firstChild))a.onload()};
J.prototype.k=function(){if(this.e.shouldLog){var a=this.e.log,b=this.a.document;if(a.length){b=["/pagead/gen_204?id=iframecopy&log=",t(a.join("-")),"&url=",t(b.URL.substring(0,512)),"&ref=",t(b.referrer.substring(0,512))].join("");a.length=0;a=this.a;b=va(q(""),b);a.google_image_requests||(a.google_image_requests=[]);var c=a.document.createElement("img");c.src=b;a.google_image_requests.push(c)}}};var Aa=function(){var a="script";return["<",a,' src="',va(q(""),"/pagead/js/r20120627/r20120410/show_ads_impl.js",""),'"></',a,">"].join("")},Ba=function(a,b,c,e){return function(){var d=i;e&&A().al(3E4);try{if(u(a.document.getElementById(b).contentWindow)){var g=a.document.getElementById(b).contentWindow,o=g.document;if(!o.body||
!o.body.firstChild)o.open(),g.google_async_iframe_close=f,o.write(c)}else{var C=a.document.getElementById(b).contentWindow,Q;g=c;g=""+g;if(g.quote)Q=g.quote();else{for(var o=['"'],D=0;D<g.length;D++){var E=g.charAt(D),na=E.charCodeAt(0),Qa=o,Ra=D+1,R;if(!(R=m[E])){var v;if(31<na&&127>na)v=E;else{var n=E;if(n in p)v=p[n];else if(n in m)v=p[n]=m[n];else{var l=n,r=n.charCodeAt(0);if(31<r&&127>r)l=n;else{if(256>r){if(l="\\x",16>r||256<r)l+="0"}else l="\\u",4096>r&&(l+="0");l+=r.toString(16).toUpperCase()}v=
p[n]=l}}R=v}Qa[Ra]=R}o.push('"');Q=o.join("")}C.location.replace("javascript:"+Q)}d=f}catch($a){C=ka().google_jobrunner,oa(C)&&C.rl()}d&&(new J(a)).set(b,Ba(a,b,c,i))}},Ca=Math.floor(1E6*Math.random()),Da=function(a){for(var a=a.data.split("\n"),b={},c=0;c<a.length;c++){var e=a[c].indexOf("=");-1!=e&&(b[a[c].substr(0,e)]=a[c].substr(e+1))}b[1]==Ca&&(window.google_top_url=b[3])};var Ea=ga("0"),Fa=ga("0.001");window.google_loader_used=f;var L=window;if(!("google_onload_fired"in L)){L.google_onload_fired=i;var Ga=function(){L.google_onload_fired=f};L.addEventListener?L.addEventListener("load",Ga,i):L.attachEvent&&L.attachEvent("onload",Ga)}var M=window,N=2;try{M.top.document==M.document?N=0:u(M.top)&&(N=1)}catch(Ha){}
if(2===N&&top.postMessage&&!window.google_top_experiment&&(window.google_top_experiment=ja(["jp_e","jp_c"],Fa),"jp_e"===window.google_top_experiment)){var O=window;O.addEventListener?O.addEventListener("message",Da,i):O.attachEvent&&O.attachEvent("onmessage",Da);var Ia={"0":"google_loc_request",1:Ca},Ja=[],P;for(P in Ia)Ja.push(P+"="+Ia[P]);top.postMessage(Ja.join("\n"),"*")}window.google_loader_experiment||(window.google_loader_experiment=ja(["async_bad_black","block_bad_black"],Ea)||""||"launch");
var S;a:{try{if(window.google_enable_async!==f&&"blockodd"==window.google_loader_experiment&&1==window.top.location.hostname.length%2){S=i;break a}}catch(Ka){}S=f}var T;if(T=S){var U;if(window.google_enable_async===i)U=0;else{var La=navigator.userAgent,Ma=window.google_loader_experiment;U=(ra.test(La)?i:sa.test(La)?"async_bad_black"==Ma:f)&&!window.google_container_id&&(!window.google_ad_output||"html"==window.google_ad_output)}T=U}
if(T){var V=window;V.google_unique_id?++V.google_unique_id:V.google_unique_id=1;var W=window;if(!W.google_slot_list||!W.google_slot_list.push)W.google_slot_list=[];W.google_slot_list.push([W.google_ad_slot||"",W.google_ad_format||"",W.google_ad_width||"",W.google_ad_height||""].join("."));for(var F=window,_script$$inline_80="script",X,B={allowtransparency:'"true"',frameborder:'"0"',height:'"'+F.google_ad_height+'"',hspace:'"0"',marginwidth:'"0"',marginheight:'"0"',onload:'"'+za+'"',scrolling:'"no"',
vspace:'"0"',width:'"'+F.google_ad_width+'"'},Na=F.document,Y=B.id,Oa=0;!Y||F.document.getElementById(Y);)Y="aswift_"+Oa++;B.id=Y;B.name=Y;Na.write(ta());X=Y;var Pa;F.google_page_url&&(F.google_page_url=""+F.google_page_url);for(var Sa=[],Z=0,Ta=I.length;Z<Ta;Z++){var $=I[Z];if(F[$]!=h){var Ua;try{var Va=[];G(new wa,F[$],Va);Ua=Va.join("")}catch(Wa){}Ua&&ia(Sa,$,"=",Ua,";")}}Pa=Sa.join("");for(var Xa=0,Ya=I.length;Xa<Ya;Xa++)F[I[Xa]]=h;var Za=(new Date).getTime(),ab=window.google_loader_experiment,
bb=window.google_top_experiment,cb=["<!doctype html><html><body><",_script$$inline_80,">",Pa,"google_show_ads_impl=true;google_unique_id=",F.google_unique_id,';google_async_iframe_id="',X,'";google_start_time=',k,";",ab?'google_loader_experiment="'+ab+'";':"",bb?'google_top_experiment="'+bb+'";':"","google_bpp=",Za>k?Za-k:1,";</",_script$$inline_80,">",Aa(),"</body></html>"].join("");(F.document.getElementById(X)?pa:qa)(Ba(F,X,cb,f))}else window.q=k,document.write(Aa());})();

View File

@@ -0,0 +1,14 @@
// JScript 文件
function LogClickCount(link,areaId)
{
var url=window.location.href;
var myImage=new Image(0,0);
if(link!=null && link!='')
{
myImage.src="http://counter.csdn.net/a/Counter.aspx?area=" + areaId+"&u="+ escape(link);
}
else
{
myImage.src="http://counter.csdn.net/a/Counter.aspx?area=" + areaId+"&u="+ escape(link);
}
}

View File

@@ -0,0 +1 @@
document.write('<li><a href="http://g.csdn.net/5224659" target=_blank onclick="LogClickCount(this,226);">【上海振华】诚聘软件工程师</a></li><li><a href="http://g.csdn.net/5219901" target=_blank onclick="LogClickCount(this,226);">【上海交大】e-learning lab诚聘研发工程师</a></li><li><a href="http://g.csdn.net/5223742" target=_blank onclick="LogClickCount(this,226);">【美世咨询中国】诚聘互联网应用程序支持专员、Windows应用程序Build管理员等热门职位</a></li><li><a href="http://g.csdn.net/5224400" target=_blank onclick="LogClickCount(this,226);">【嘟嘟网络】诚聘PHP 程序员、C++ 程序员、Delphi 程序员等职位</a></li><li><a href="http://g.csdn.net/5224399" target=_blank onclick="LogClickCount(this,226);">【新跨乐北京】诚聘iOS开发工程师、Android开发工程师等热门职位</a></li><li><a href="http://g.csdn.net/5221707" target=_blank onclick="LogClickCount(this,226);">【careerfocus(科锐福克斯)】诚聘招聘猎头顾问</a></li><li><a href="http://g.csdn.net/5222294" target=_blank onclick="LogClickCount(this,226);">【北京格致璞科技】诚聘Flex/Flash/AS3开发工程师、web测试工程师等职位</a></li><li><a href="http://g.csdn.net/5222299" target=_blank onclick="LogClickCount(this,226);">【中国气象局公共气象服务中心】诚聘应用系统开发、]Web GIS系统开发等职位</a></li><li><a href="http://g.csdn.net/5222558" target=_blank onclick="LogClickCount(this,226);">【百度移信网络技术北京】诚聘PHP研发工程师等热门职位</a></li><li><a href="http://g.csdn.net/5223162" target=_blank onclick="LogClickCount(this,226);">【北京瓦力信息】诚聘Android开发工程师、LinuxC高级开发工程师等热门职位</a></li><li><a href="http://g.csdn.net/5223569" target=_blank onclick="LogClickCount(this,226);">【北京中普友通软件】诚聘Java / .Net 软件开发工程师</a></li><li><a href="http://g.csdn.net/5223570" target=_blank onclick="LogClickCount(this,226);">【广州华智计算机科技】诚聘安卓手机软件开发工程师、PHP程序员等热门职位</a></li><li><a href="http://g.csdn.net/5223571" target=_blank onclick="LogClickCount(this,226);">【易宝支付】诚聘高级JAVA开发工程师、产品经理、高级系统工程师的职位</a></li><li><a href="http://g.csdn.net/5223576" target=_blank onclick="LogClickCount(this,226);">【百度】诚聘核心技术研发工程师/PHP研发工程师等</a></li><li><a href="http://g.csdn.net/5216258" target=_blank onclick="LogClickCount(this,226);">【广州瀚信】高薪诚聘C/C++ 初级开发工程师、C/C++ 中级开发工程师等</a></li><li><a href="http://g.csdn.net/5216271" target=_blank onclick="LogClickCount(this,226);">【中国智能交通系统(控股)有限公司 】诚聘信息安全工程师/IT应用软件开发工程师</a></li><li><a href="http://g.csdn.net/5219150" target=_blank onclick="LogClickCount(this,226);">【深圳明源软件】诚聘iphone开发工程师、.net开发工程师、高级开发工程师等</a></li><li><a href="http://g.csdn.net/5216257" target=_blank onclick="LogClickCount(this,226);">【ThoughtWorks】热招Java/C#/Ruby开发工程师</a></li><li><a href="http://g.csdn.net/5219103" target=_blank onclick="LogClickCount(this,226);">【广州多益网络科技】诚聘flash游戏设计师、C++软件工程师、asp.net高级程序员等</a></li><li><a href="http://g.csdn.net/5220481" target=_blank onclick="LogClickCount(this,226);">【北京游道易】热招资深iOS开发架构师、服务端架构师、IT支持工程师等</a></li><li><a href="http://g.csdn.net/5221362" target=_blank onclick="LogClickCount(this,226);">【2345网站大全】诚聘C++开发工程师、C++开发经理、PHP开发工程师等职位</a></li><li><a href="http://g.csdn.net/5216244" target=_blank onclick="LogClickCount(this,226);">【巨人网络】急聘Flash以及Web前台开发人才</a></li><li><a href="http://g.csdn.net/5217257" target=_blank onclick="LogClickCount(this,226);">【智乐软件】诚聘PHP Software Engineer、C++游戏开发工程师、JAVA游戏开发工程师等</a></li><li><a href="http://g.csdn.net/5216269" target=_blank onclick="LogClickCount(this,226);">【网易有道 北京】诚聘研发/前端/web/测试开发工程师!</a></li>');

View File

@@ -0,0 +1,171 @@
/*!
* Note: While Microsoft is not the author of this file, Microsoft is
* offering you a license subject to the terms of the Microsoft Software
* License Terms for Microsoft ASP.NET Model View Controller 3.
* Microsoft reserves all other rights. The notices below are provided
* for informational purposes only and are not the license terms under
* which Microsoft distributed this file.
*
* jQuery JavaScript Library v1.4.4
* http://jquery.com/
*
* Copyright 2010, John Resig
*
* Includes Sizzle.js
* http://sizzlejs.com/
* Copyright 2010, The Dojo Foundation
*
* Date: Thu Nov 11 19:04:53 2010 -0500
*/
(function(E,B){function ka(a,b,d){if(d===B&&a.nodeType===1){d=a.getAttribute("data-"+b);if(typeof d==="string"){try{d=d==="true"?true:d==="false"?false:d==="null"?null:!c.isNaN(d)?parseFloat(d):Ja.test(d)?c.parseJSON(d):d}catch(e){}c.data(a,b,d)}else d=B}return d}function U(){return false}function ca(){return true}function la(a,b,d){d[0].type=a;return c.event.handle.apply(b,d)}function Ka(a){var b,d,e,f,h,l,k,o,x,r,A,C=[];f=[];h=c.data(this,this.nodeType?"events":"__events__");if(typeof h==="function")h=
h.events;if(!(a.liveFired===this||!h||!h.live||a.button&&a.type==="click")){if(a.namespace)A=RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)");a.liveFired=this;var J=h.live.slice(0);for(k=0;k<J.length;k++){h=J[k];h.origType.replace(X,"")===a.type?f.push(h.selector):J.splice(k--,1)}f=c(a.target).closest(f,a.currentTarget);o=0;for(x=f.length;o<x;o++){r=f[o];for(k=0;k<J.length;k++){h=J[k];if(r.selector===h.selector&&(!A||A.test(h.namespace))){l=r.elem;e=null;if(h.preType==="mouseenter"||
h.preType==="mouseleave"){a.type=h.preType;e=c(a.relatedTarget).closest(h.selector)[0]}if(!e||e!==l)C.push({elem:l,handleObj:h,level:r.level})}}}o=0;for(x=C.length;o<x;o++){f=C[o];if(d&&f.level>d)break;a.currentTarget=f.elem;a.data=f.handleObj.data;a.handleObj=f.handleObj;A=f.handleObj.origHandler.apply(f.elem,arguments);if(A===false||a.isPropagationStopped()){d=f.level;if(A===false)b=false;if(a.isImmediatePropagationStopped())break}}return b}}function Y(a,b){return(a&&a!=="*"?a+".":"")+b.replace(La,
"`").replace(Ma,"&")}function ma(a,b,d){if(c.isFunction(b))return c.grep(a,function(f,h){return!!b.call(f,h,f)===d});else if(b.nodeType)return c.grep(a,function(f){return f===b===d});else if(typeof b==="string"){var e=c.grep(a,function(f){return f.nodeType===1});if(Na.test(b))return c.filter(b,e,!d);else b=c.filter(b,e)}return c.grep(a,function(f){return c.inArray(f,b)>=0===d})}function na(a,b){var d=0;b.each(function(){if(this.nodeName===(a[d]&&a[d].nodeName)){var e=c.data(a[d++]),f=c.data(this,
e);if(e=e&&e.events){delete f.handle;f.events={};for(var h in e)for(var l in e[h])c.event.add(this,h,e[h][l],e[h][l].data)}}})}function Oa(a,b){b.src?c.ajax({url:b.src,async:false,dataType:"script"}):c.globalEval(b.text||b.textContent||b.innerHTML||"");b.parentNode&&b.parentNode.removeChild(b)}function oa(a,b,d){var e=b==="width"?a.offsetWidth:a.offsetHeight;if(d==="border")return e;c.each(b==="width"?Pa:Qa,function(){d||(e-=parseFloat(c.css(a,"padding"+this))||0);if(d==="margin")e+=parseFloat(c.css(a,
"margin"+this))||0;else e-=parseFloat(c.css(a,"border"+this+"Width"))||0});return e}function da(a,b,d,e){if(c.isArray(b)&&b.length)c.each(b,function(f,h){d||Ra.test(a)?e(a,h):da(a+"["+(typeof h==="object"||c.isArray(h)?f:"")+"]",h,d,e)});else if(!d&&b!=null&&typeof b==="object")c.isEmptyObject(b)?e(a,""):c.each(b,function(f,h){da(a+"["+f+"]",h,d,e)});else e(a,b)}function S(a,b){var d={};c.each(pa.concat.apply([],pa.slice(0,b)),function(){d[this]=a});return d}function qa(a){if(!ea[a]){var b=c("<"+
a+">").appendTo("body"),d=b.css("display");b.remove();if(d==="none"||d==="")d="block";ea[a]=d}return ea[a]}function fa(a){return c.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:false}var t=E.document,c=function(){function a(){if(!b.isReady){try{t.documentElement.doScroll("left")}catch(j){setTimeout(a,1);return}b.ready()}}var b=function(j,s){return new b.fn.init(j,s)},d=E.jQuery,e=E.$,f,h=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]+)$)/,l=/\S/,k=/^\s+/,o=/\s+$/,x=/\W/,r=/\d/,A=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,
C=/^[\],:{}\s]*$/,J=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,w=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,I=/(?:^|:|,)(?:\s*\[)+/g,L=/(webkit)[ \/]([\w.]+)/,g=/(opera)(?:.*version)?[ \/]([\w.]+)/,i=/(msie) ([\w.]+)/,n=/(mozilla)(?:.*? rv:([\w.]+))?/,m=navigator.userAgent,p=false,q=[],u,y=Object.prototype.toString,F=Object.prototype.hasOwnProperty,M=Array.prototype.push,N=Array.prototype.slice,O=String.prototype.trim,D=Array.prototype.indexOf,R={};b.fn=b.prototype={init:function(j,
s){var v,z,H;if(!j)return this;if(j.nodeType){this.context=this[0]=j;this.length=1;return this}if(j==="body"&&!s&&t.body){this.context=t;this[0]=t.body;this.selector="body";this.length=1;return this}if(typeof j==="string")if((v=h.exec(j))&&(v[1]||!s))if(v[1]){H=s?s.ownerDocument||s:t;if(z=A.exec(j))if(b.isPlainObject(s)){j=[t.createElement(z[1])];b.fn.attr.call(j,s,true)}else j=[H.createElement(z[1])];else{z=b.buildFragment([v[1]],[H]);j=(z.cacheable?z.fragment.cloneNode(true):z.fragment).childNodes}return b.merge(this,
j)}else{if((z=t.getElementById(v[2]))&&z.parentNode){if(z.id!==v[2])return f.find(j);this.length=1;this[0]=z}this.context=t;this.selector=j;return this}else if(!s&&!x.test(j)){this.selector=j;this.context=t;j=t.getElementsByTagName(j);return b.merge(this,j)}else return!s||s.jquery?(s||f).find(j):b(s).find(j);else if(b.isFunction(j))return f.ready(j);if(j.selector!==B){this.selector=j.selector;this.context=j.context}return b.makeArray(j,this)},selector:"",jquery:"1.4.4",length:0,size:function(){return this.length},
toArray:function(){return N.call(this,0)},get:function(j){return j==null?this.toArray():j<0?this.slice(j)[0]:this[j]},pushStack:function(j,s,v){var z=b();b.isArray(j)?M.apply(z,j):b.merge(z,j);z.prevObject=this;z.context=this.context;if(s==="find")z.selector=this.selector+(this.selector?" ":"")+v;else if(s)z.selector=this.selector+"."+s+"("+v+")";return z},each:function(j,s){return b.each(this,j,s)},ready:function(j){b.bindReady();if(b.isReady)j.call(t,b);else q&&q.push(j);return this},eq:function(j){return j===
-1?this.slice(j):this.slice(j,+j+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(N.apply(this,arguments),"slice",N.call(arguments).join(","))},map:function(j){return this.pushStack(b.map(this,function(s,v){return j.call(s,v,s)}))},end:function(){return this.prevObject||b(null)},push:M,sort:[].sort,splice:[].splice};b.fn.init.prototype=b.fn;b.extend=b.fn.extend=function(){var j,s,v,z,H,G=arguments[0]||{},K=1,Q=arguments.length,ga=false;
if(typeof G==="boolean"){ga=G;G=arguments[1]||{};K=2}if(typeof G!=="object"&&!b.isFunction(G))G={};if(Q===K){G=this;--K}for(;K<Q;K++)if((j=arguments[K])!=null)for(s in j){v=G[s];z=j[s];if(G!==z)if(ga&&z&&(b.isPlainObject(z)||(H=b.isArray(z)))){if(H){H=false;v=v&&b.isArray(v)?v:[]}else v=v&&b.isPlainObject(v)?v:{};G[s]=b.extend(ga,v,z)}else if(z!==B)G[s]=z}return G};b.extend({noConflict:function(j){E.$=e;if(j)E.jQuery=d;return b},isReady:false,readyWait:1,ready:function(j){j===true&&b.readyWait--;
if(!b.readyWait||j!==true&&!b.isReady){if(!t.body)return setTimeout(b.ready,1);b.isReady=true;if(!(j!==true&&--b.readyWait>0))if(q){var s=0,v=q;for(q=null;j=v[s++];)j.call(t,b);b.fn.trigger&&b(t).trigger("ready").unbind("ready")}}},bindReady:function(){if(!p){p=true;if(t.readyState==="complete")return setTimeout(b.ready,1);if(t.addEventListener){t.addEventListener("DOMContentLoaded",u,false);E.addEventListener("load",b.ready,false)}else if(t.attachEvent){t.attachEvent("onreadystatechange",u);E.attachEvent("onload",
b.ready);var j=false;try{j=E.frameElement==null}catch(s){}t.documentElement.doScroll&&j&&a()}}},isFunction:function(j){return b.type(j)==="function"},isArray:Array.isArray||function(j){return b.type(j)==="array"},isWindow:function(j){return j&&typeof j==="object"&&"setInterval"in j},isNaN:function(j){return j==null||!r.test(j)||isNaN(j)},type:function(j){return j==null?String(j):R[y.call(j)]||"object"},isPlainObject:function(j){if(!j||b.type(j)!=="object"||j.nodeType||b.isWindow(j))return false;if(j.constructor&&
!F.call(j,"constructor")&&!F.call(j.constructor.prototype,"isPrototypeOf"))return false;for(var s in j);return s===B||F.call(j,s)},isEmptyObject:function(j){for(var s in j)return false;return true},error:function(j){throw j;},parseJSON:function(j){if(typeof j!=="string"||!j)return null;j=b.trim(j);if(C.test(j.replace(J,"@").replace(w,"]").replace(I,"")))return E.JSON&&E.JSON.parse?E.JSON.parse(j):(new Function("return "+j))();else b.error("Invalid JSON: "+j)},noop:function(){},globalEval:function(j){if(j&&
l.test(j)){var s=t.getElementsByTagName("head")[0]||t.documentElement,v=t.createElement("script");v.type="text/javascript";if(b.support.scriptEval)v.appendChild(t.createTextNode(j));else v.text=j;s.insertBefore(v,s.firstChild);s.removeChild(v)}},nodeName:function(j,s){return j.nodeName&&j.nodeName.toUpperCase()===s.toUpperCase()},each:function(j,s,v){var z,H=0,G=j.length,K=G===B||b.isFunction(j);if(v)if(K)for(z in j){if(s.apply(j[z],v)===false)break}else for(;H<G;){if(s.apply(j[H++],v)===false)break}else if(K)for(z in j){if(s.call(j[z],
z,j[z])===false)break}else for(v=j[0];H<G&&s.call(v,H,v)!==false;v=j[++H]);return j},trim:O?function(j){return j==null?"":O.call(j)}:function(j){return j==null?"":j.toString().replace(k,"").replace(o,"")},makeArray:function(j,s){var v=s||[];if(j!=null){var z=b.type(j);j.length==null||z==="string"||z==="function"||z==="regexp"||b.isWindow(j)?M.call(v,j):b.merge(v,j)}return v},inArray:function(j,s){if(s.indexOf)return s.indexOf(j);for(var v=0,z=s.length;v<z;v++)if(s[v]===j)return v;return-1},merge:function(j,
s){var v=j.length,z=0;if(typeof s.length==="number")for(var H=s.length;z<H;z++)j[v++]=s[z];else for(;s[z]!==B;)j[v++]=s[z++];j.length=v;return j},grep:function(j,s,v){var z=[],H;v=!!v;for(var G=0,K=j.length;G<K;G++){H=!!s(j[G],G);v!==H&&z.push(j[G])}return z},map:function(j,s,v){for(var z=[],H,G=0,K=j.length;G<K;G++){H=s(j[G],G,v);if(H!=null)z[z.length]=H}return z.concat.apply([],z)},guid:1,proxy:function(j,s,v){if(arguments.length===2)if(typeof s==="string"){v=j;j=v[s];s=B}else if(s&&!b.isFunction(s)){v=
s;s=B}if(!s&&j)s=function(){return j.apply(v||this,arguments)};if(j)s.guid=j.guid=j.guid||s.guid||b.guid++;return s},access:function(j,s,v,z,H,G){var K=j.length;if(typeof s==="object"){for(var Q in s)b.access(j,Q,s[Q],z,H,v);return j}if(v!==B){z=!G&&z&&b.isFunction(v);for(Q=0;Q<K;Q++)H(j[Q],s,z?v.call(j[Q],Q,H(j[Q],s)):v,G);return j}return K?H(j[0],s):B},now:function(){return(new Date).getTime()},uaMatch:function(j){j=j.toLowerCase();j=L.exec(j)||g.exec(j)||i.exec(j)||j.indexOf("compatible")<0&&n.exec(j)||
[];return{browser:j[1]||"",version:j[2]||"0"}},browser:{}});b.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(j,s){R["[object "+s+"]"]=s.toLowerCase()});m=b.uaMatch(m);if(m.browser){b.browser[m.browser]=true;b.browser.version=m.version}if(b.browser.webkit)b.browser.safari=true;if(D)b.inArray=function(j,s){return D.call(s,j)};if(!/\s/.test("\u00a0")){k=/^[\s\xA0]+/;o=/[\s\xA0]+$/}f=b(t);if(t.addEventListener)u=function(){t.removeEventListener("DOMContentLoaded",u,
false);b.ready()};else if(t.attachEvent)u=function(){if(t.readyState==="complete"){t.detachEvent("onreadystatechange",u);b.ready()}};return E.jQuery=E.$=b}();(function(){c.support={};var a=t.documentElement,b=t.createElement("script"),d=t.createElement("div"),e="script"+c.now();d.style.display="none";d.innerHTML=" <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";var f=d.getElementsByTagName("*"),h=d.getElementsByTagName("a")[0],l=t.createElement("select"),
k=l.appendChild(t.createElement("option"));if(!(!f||!f.length||!h)){c.support={leadingWhitespace:d.firstChild.nodeType===3,tbody:!d.getElementsByTagName("tbody").length,htmlSerialize:!!d.getElementsByTagName("link").length,style:/red/.test(h.getAttribute("style")),hrefNormalized:h.getAttribute("href")==="/a",opacity:/^0.55$/.test(h.style.opacity),cssFloat:!!h.style.cssFloat,checkOn:d.getElementsByTagName("input")[0].value==="on",optSelected:k.selected,deleteExpando:true,optDisabled:false,checkClone:false,
scriptEval:false,noCloneEvent:true,boxModel:null,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableHiddenOffsets:true};l.disabled=true;c.support.optDisabled=!k.disabled;b.type="text/javascript";try{b.appendChild(t.createTextNode("window."+e+"=1;"))}catch(o){}a.insertBefore(b,a.firstChild);if(E[e]){c.support.scriptEval=true;delete E[e]}try{delete b.test}catch(x){c.support.deleteExpando=false}a.removeChild(b);if(d.attachEvent&&d.fireEvent){d.attachEvent("onclick",function r(){c.support.noCloneEvent=
false;d.detachEvent("onclick",r)});d.cloneNode(true).fireEvent("onclick")}d=t.createElement("div");d.innerHTML="<input type='radio' name='radiotest' checked='checked'/>";a=t.createDocumentFragment();a.appendChild(d.firstChild);c.support.checkClone=a.cloneNode(true).cloneNode(true).lastChild.checked;c(function(){var r=t.createElement("div");r.style.width=r.style.paddingLeft="1px";t.body.appendChild(r);c.boxModel=c.support.boxModel=r.offsetWidth===2;if("zoom"in r.style){r.style.display="inline";r.style.zoom=
1;c.support.inlineBlockNeedsLayout=r.offsetWidth===2;r.style.display="";r.innerHTML="<div style='width:4px;'></div>";c.support.shrinkWrapBlocks=r.offsetWidth!==2}r.innerHTML="<table><tr><td style='padding:0;display:none'></td><td>t</td></tr></table>";var A=r.getElementsByTagName("td");c.support.reliableHiddenOffsets=A[0].offsetHeight===0;A[0].style.display="";A[1].style.display="none";c.support.reliableHiddenOffsets=c.support.reliableHiddenOffsets&&A[0].offsetHeight===0;r.innerHTML="";t.body.removeChild(r).style.display=
"none"});a=function(r){var A=t.createElement("div");r="on"+r;var C=r in A;if(!C){A.setAttribute(r,"return;");C=typeof A[r]==="function"}return C};c.support.submitBubbles=a("submit");c.support.changeBubbles=a("change");a=b=d=f=h=null}})();var ra={},Ja=/^(?:\{.*\}|\[.*\])$/;c.extend({cache:{},uuid:0,expando:"jQuery"+c.now(),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},data:function(a,b,d){if(c.acceptData(a)){a=a==E?ra:a;var e=a.nodeType,f=e?a[c.expando]:null,h=
c.cache;if(!(e&&!f&&typeof b==="string"&&d===B)){if(e)f||(a[c.expando]=f=++c.uuid);else h=a;if(typeof b==="object")if(e)h[f]=c.extend(h[f],b);else c.extend(h,b);else if(e&&!h[f])h[f]={};a=e?h[f]:h;if(d!==B)a[b]=d;return typeof b==="string"?a[b]:a}}},removeData:function(a,b){if(c.acceptData(a)){a=a==E?ra:a;var d=a.nodeType,e=d?a[c.expando]:a,f=c.cache,h=d?f[e]:e;if(b){if(h){delete h[b];d&&c.isEmptyObject(h)&&c.removeData(a)}}else if(d&&c.support.deleteExpando)delete a[c.expando];else if(a.removeAttribute)a.removeAttribute(c.expando);
else if(d)delete f[e];else for(var l in a)delete a[l]}},acceptData:function(a){if(a.nodeName){var b=c.noData[a.nodeName.toLowerCase()];if(b)return!(b===true||a.getAttribute("classid")!==b)}return true}});c.fn.extend({data:function(a,b){var d=null;if(typeof a==="undefined"){if(this.length){var e=this[0].attributes,f;d=c.data(this[0]);for(var h=0,l=e.length;h<l;h++){f=e[h].name;if(f.indexOf("data-")===0){f=f.substr(5);ka(this[0],f,d[f])}}}return d}else if(typeof a==="object")return this.each(function(){c.data(this,
a)});var k=a.split(".");k[1]=k[1]?"."+k[1]:"";if(b===B){d=this.triggerHandler("getData"+k[1]+"!",[k[0]]);if(d===B&&this.length){d=c.data(this[0],a);d=ka(this[0],a,d)}return d===B&&k[1]?this.data(k[0]):d}else return this.each(function(){var o=c(this),x=[k[0],b];o.triggerHandler("setData"+k[1]+"!",x);c.data(this,a,b);o.triggerHandler("changeData"+k[1]+"!",x)})},removeData:function(a){return this.each(function(){c.removeData(this,a)})}});c.extend({queue:function(a,b,d){if(a){b=(b||"fx")+"queue";var e=
c.data(a,b);if(!d)return e||[];if(!e||c.isArray(d))e=c.data(a,b,c.makeArray(d));else e.push(d);return e}},dequeue:function(a,b){b=b||"fx";var d=c.queue(a,b),e=d.shift();if(e==="inprogress")e=d.shift();if(e){b==="fx"&&d.unshift("inprogress");e.call(a,function(){c.dequeue(a,b)})}}});c.fn.extend({queue:function(a,b){if(typeof a!=="string"){b=a;a="fx"}if(b===B)return c.queue(this[0],a);return this.each(function(){var d=c.queue(this,a,b);a==="fx"&&d[0]!=="inprogress"&&c.dequeue(this,a)})},dequeue:function(a){return this.each(function(){c.dequeue(this,
a)})},delay:function(a,b){a=c.fx?c.fx.speeds[a]||a:a;b=b||"fx";return this.queue(b,function(){var d=this;setTimeout(function(){c.dequeue(d,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])}});var sa=/[\n\t]/g,ha=/\s+/,Sa=/\r/g,Ta=/^(?:href|src|style)$/,Ua=/^(?:button|input)$/i,Va=/^(?:button|input|object|select|textarea)$/i,Wa=/^a(?:rea)?$/i,ta=/^(?:radio|checkbox)$/i;c.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",
colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"};c.fn.extend({attr:function(a,b){return c.access(this,a,b,true,c.attr)},removeAttr:function(a){return this.each(function(){c.attr(this,a,"");this.nodeType===1&&this.removeAttribute(a)})},addClass:function(a){if(c.isFunction(a))return this.each(function(x){var r=c(this);r.addClass(a.call(this,x,r.attr("class")))});if(a&&typeof a==="string")for(var b=(a||"").split(ha),d=0,e=this.length;d<e;d++){var f=this[d];if(f.nodeType===
1)if(f.className){for(var h=" "+f.className+" ",l=f.className,k=0,o=b.length;k<o;k++)if(h.indexOf(" "+b[k]+" ")<0)l+=" "+b[k];f.className=c.trim(l)}else f.className=a}return this},removeClass:function(a){if(c.isFunction(a))return this.each(function(o){var x=c(this);x.removeClass(a.call(this,o,x.attr("class")))});if(a&&typeof a==="string"||a===B)for(var b=(a||"").split(ha),d=0,e=this.length;d<e;d++){var f=this[d];if(f.nodeType===1&&f.className)if(a){for(var h=(" "+f.className+" ").replace(sa," "),
l=0,k=b.length;l<k;l++)h=h.replace(" "+b[l]+" "," ");f.className=c.trim(h)}else f.className=""}return this},toggleClass:function(a,b){var d=typeof a,e=typeof b==="boolean";if(c.isFunction(a))return this.each(function(f){var h=c(this);h.toggleClass(a.call(this,f,h.attr("class"),b),b)});return this.each(function(){if(d==="string")for(var f,h=0,l=c(this),k=b,o=a.split(ha);f=o[h++];){k=e?k:!l.hasClass(f);l[k?"addClass":"removeClass"](f)}else if(d==="undefined"||d==="boolean"){this.className&&c.data(this,
"__className__",this.className);this.className=this.className||a===false?"":c.data(this,"__className__")||""}})},hasClass:function(a){a=" "+a+" ";for(var b=0,d=this.length;b<d;b++)if((" "+this[b].className+" ").replace(sa," ").indexOf(a)>-1)return true;return false},val:function(a){if(!arguments.length){var b=this[0];if(b){if(c.nodeName(b,"option")){var d=b.attributes.value;return!d||d.specified?b.value:b.text}if(c.nodeName(b,"select")){var e=b.selectedIndex;d=[];var f=b.options;b=b.type==="select-one";
if(e<0)return null;var h=b?e:0;for(e=b?e+1:f.length;h<e;h++){var l=f[h];if(l.selected&&(c.support.optDisabled?!l.disabled:l.getAttribute("disabled")===null)&&(!l.parentNode.disabled||!c.nodeName(l.parentNode,"optgroup"))){a=c(l).val();if(b)return a;d.push(a)}}return d}if(ta.test(b.type)&&!c.support.checkOn)return b.getAttribute("value")===null?"on":b.value;return(b.value||"").replace(Sa,"")}return B}var k=c.isFunction(a);return this.each(function(o){var x=c(this),r=a;if(this.nodeType===1){if(k)r=
a.call(this,o,x.val());if(r==null)r="";else if(typeof r==="number")r+="";else if(c.isArray(r))r=c.map(r,function(C){return C==null?"":C+""});if(c.isArray(r)&&ta.test(this.type))this.checked=c.inArray(x.val(),r)>=0;else if(c.nodeName(this,"select")){var A=c.makeArray(r);c("option",this).each(function(){this.selected=c.inArray(c(this).val(),A)>=0});if(!A.length)this.selectedIndex=-1}else this.value=r}})}});c.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},
attr:function(a,b,d,e){if(!a||a.nodeType===3||a.nodeType===8)return B;if(e&&b in c.attrFn)return c(a)[b](d);e=a.nodeType!==1||!c.isXMLDoc(a);var f=d!==B;b=e&&c.props[b]||b;var h=Ta.test(b);if((b in a||a[b]!==B)&&e&&!h){if(f){b==="type"&&Ua.test(a.nodeName)&&a.parentNode&&c.error("type property can't be changed");if(d===null)a.nodeType===1&&a.removeAttribute(b);else a[b]=d}if(c.nodeName(a,"form")&&a.getAttributeNode(b))return a.getAttributeNode(b).nodeValue;if(b==="tabIndex")return(b=a.getAttributeNode("tabIndex"))&&
b.specified?b.value:Va.test(a.nodeName)||Wa.test(a.nodeName)&&a.href?0:B;return a[b]}if(!c.support.style&&e&&b==="style"){if(f)a.style.cssText=""+d;return a.style.cssText}f&&a.setAttribute(b,""+d);if(!a.attributes[b]&&a.hasAttribute&&!a.hasAttribute(b))return B;a=!c.support.hrefNormalized&&e&&h?a.getAttribute(b,2):a.getAttribute(b);return a===null?B:a}});var X=/\.(.*)$/,ia=/^(?:textarea|input|select)$/i,La=/\./g,Ma=/ /g,Xa=/[^\w\s.|`]/g,Ya=function(a){return a.replace(Xa,"\\$&")},ua={focusin:0,focusout:0};
c.event={add:function(a,b,d,e){if(!(a.nodeType===3||a.nodeType===8)){if(c.isWindow(a)&&a!==E&&!a.frameElement)a=E;if(d===false)d=U;else if(!d)return;var f,h;if(d.handler){f=d;d=f.handler}if(!d.guid)d.guid=c.guid++;if(h=c.data(a)){var l=a.nodeType?"events":"__events__",k=h[l],o=h.handle;if(typeof k==="function"){o=k.handle;k=k.events}else if(!k){a.nodeType||(h[l]=h=function(){});h.events=k={}}if(!o)h.handle=o=function(){return typeof c!=="undefined"&&!c.event.triggered?c.event.handle.apply(o.elem,
arguments):B};o.elem=a;b=b.split(" ");for(var x=0,r;l=b[x++];){h=f?c.extend({},f):{handler:d,data:e};if(l.indexOf(".")>-1){r=l.split(".");l=r.shift();h.namespace=r.slice(0).sort().join(".")}else{r=[];h.namespace=""}h.type=l;if(!h.guid)h.guid=d.guid;var A=k[l],C=c.event.special[l]||{};if(!A){A=k[l]=[];if(!C.setup||C.setup.call(a,e,r,o)===false)if(a.addEventListener)a.addEventListener(l,o,false);else a.attachEvent&&a.attachEvent("on"+l,o)}if(C.add){C.add.call(a,h);if(!h.handler.guid)h.handler.guid=
d.guid}A.push(h);c.event.global[l]=true}a=null}}},global:{},remove:function(a,b,d,e){if(!(a.nodeType===3||a.nodeType===8)){if(d===false)d=U;var f,h,l=0,k,o,x,r,A,C,J=a.nodeType?"events":"__events__",w=c.data(a),I=w&&w[J];if(w&&I){if(typeof I==="function"){w=I;I=I.events}if(b&&b.type){d=b.handler;b=b.type}if(!b||typeof b==="string"&&b.charAt(0)==="."){b=b||"";for(f in I)c.event.remove(a,f+b)}else{for(b=b.split(" ");f=b[l++];){r=f;k=f.indexOf(".")<0;o=[];if(!k){o=f.split(".");f=o.shift();x=RegExp("(^|\\.)"+
c.map(o.slice(0).sort(),Ya).join("\\.(?:.*\\.)?")+"(\\.|$)")}if(A=I[f])if(d){r=c.event.special[f]||{};for(h=e||0;h<A.length;h++){C=A[h];if(d.guid===C.guid){if(k||x.test(C.namespace)){e==null&&A.splice(h--,1);r.remove&&r.remove.call(a,C)}if(e!=null)break}}if(A.length===0||e!=null&&A.length===1){if(!r.teardown||r.teardown.call(a,o)===false)c.removeEvent(a,f,w.handle);delete I[f]}}else for(h=0;h<A.length;h++){C=A[h];if(k||x.test(C.namespace)){c.event.remove(a,r,C.handler,h);A.splice(h--,1)}}}if(c.isEmptyObject(I)){if(b=
w.handle)b.elem=null;delete w.events;delete w.handle;if(typeof w==="function")c.removeData(a,J);else c.isEmptyObject(w)&&c.removeData(a)}}}}},trigger:function(a,b,d,e){var f=a.type||a;if(!e){a=typeof a==="object"?a[c.expando]?a:c.extend(c.Event(f),a):c.Event(f);if(f.indexOf("!")>=0){a.type=f=f.slice(0,-1);a.exclusive=true}if(!d){a.stopPropagation();c.event.global[f]&&c.each(c.cache,function(){this.events&&this.events[f]&&c.event.trigger(a,b,this.handle.elem)})}if(!d||d.nodeType===3||d.nodeType===
8)return B;a.result=B;a.target=d;b=c.makeArray(b);b.unshift(a)}a.currentTarget=d;(e=d.nodeType?c.data(d,"handle"):(c.data(d,"__events__")||{}).handle)&&e.apply(d,b);e=d.parentNode||d.ownerDocument;try{if(!(d&&d.nodeName&&c.noData[d.nodeName.toLowerCase()]))if(d["on"+f]&&d["on"+f].apply(d,b)===false){a.result=false;a.preventDefault()}}catch(h){}if(!a.isPropagationStopped()&&e)c.event.trigger(a,b,e,true);else if(!a.isDefaultPrevented()){var l;e=a.target;var k=f.replace(X,""),o=c.nodeName(e,"a")&&k===
"click",x=c.event.special[k]||{};if((!x._default||x._default.call(d,a)===false)&&!o&&!(e&&e.nodeName&&c.noData[e.nodeName.toLowerCase()])){try{if(e[k]){if(l=e["on"+k])e["on"+k]=null;c.event.triggered=true;e[k]()}}catch(r){}if(l)e["on"+k]=l;c.event.triggered=false}}},handle:function(a){var b,d,e,f;d=[];var h=c.makeArray(arguments);a=h[0]=c.event.fix(a||E.event);a.currentTarget=this;b=a.type.indexOf(".")<0&&!a.exclusive;if(!b){e=a.type.split(".");a.type=e.shift();d=e.slice(0).sort();e=RegExp("(^|\\.)"+
d.join("\\.(?:.*\\.)?")+"(\\.|$)")}a.namespace=a.namespace||d.join(".");f=c.data(this,this.nodeType?"events":"__events__");if(typeof f==="function")f=f.events;d=(f||{})[a.type];if(f&&d){d=d.slice(0);f=0;for(var l=d.length;f<l;f++){var k=d[f];if(b||e.test(k.namespace)){a.handler=k.handler;a.data=k.data;a.handleObj=k;k=k.handler.apply(this,h);if(k!==B){a.result=k;if(k===false){a.preventDefault();a.stopPropagation()}}if(a.isImmediatePropagationStopped())break}}}return a.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),
fix:function(a){if(a[c.expando])return a;var b=a;a=c.Event(b);for(var d=this.props.length,e;d;){e=this.props[--d];a[e]=b[e]}if(!a.target)a.target=a.srcElement||t;if(a.target.nodeType===3)a.target=a.target.parentNode;if(!a.relatedTarget&&a.fromElement)a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement;if(a.pageX==null&&a.clientX!=null){b=t.documentElement;d=t.body;a.pageX=a.clientX+(b&&b.scrollLeft||d&&d.scrollLeft||0)-(b&&b.clientLeft||d&&d.clientLeft||0);a.pageY=a.clientY+(b&&b.scrollTop||
d&&d.scrollTop||0)-(b&&b.clientTop||d&&d.clientTop||0)}if(a.which==null&&(a.charCode!=null||a.keyCode!=null))a.which=a.charCode!=null?a.charCode:a.keyCode;if(!a.metaKey&&a.ctrlKey)a.metaKey=a.ctrlKey;if(!a.which&&a.button!==B)a.which=a.button&1?1:a.button&2?3:a.button&4?2:0;return a},guid:1E8,proxy:c.proxy,special:{ready:{setup:c.bindReady,teardown:c.noop},live:{add:function(a){c.event.add(this,Y(a.origType,a.selector),c.extend({},a,{handler:Ka,guid:a.handler.guid}))},remove:function(a){c.event.remove(this,
Y(a.origType,a.selector),a)}},beforeunload:{setup:function(a,b,d){if(c.isWindow(this))this.onbeforeunload=d},teardown:function(a,b){if(this.onbeforeunload===b)this.onbeforeunload=null}}}};c.removeEvent=t.removeEventListener?function(a,b,d){a.removeEventListener&&a.removeEventListener(b,d,false)}:function(a,b,d){a.detachEvent&&a.detachEvent("on"+b,d)};c.Event=function(a){if(!this.preventDefault)return new c.Event(a);if(a&&a.type){this.originalEvent=a;this.type=a.type}else this.type=a;this.timeStamp=
c.now();this[c.expando]=true};c.Event.prototype={preventDefault:function(){this.isDefaultPrevented=ca;var a=this.originalEvent;if(a)if(a.preventDefault)a.preventDefault();else a.returnValue=false},stopPropagation:function(){this.isPropagationStopped=ca;var a=this.originalEvent;if(a){a.stopPropagation&&a.stopPropagation();a.cancelBubble=true}},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=ca;this.stopPropagation()},isDefaultPrevented:U,isPropagationStopped:U,isImmediatePropagationStopped:U};
var va=function(a){var b=a.relatedTarget;try{for(;b&&b!==this;)b=b.parentNode;if(b!==this){a.type=a.data;c.event.handle.apply(this,arguments)}}catch(d){}},wa=function(a){a.type=a.data;c.event.handle.apply(this,arguments)};c.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){c.event.special[a]={setup:function(d){c.event.add(this,b,d&&d.selector?wa:va,a)},teardown:function(d){c.event.remove(this,b,d&&d.selector?wa:va)}}});if(!c.support.submitBubbles)c.event.special.submit={setup:function(){if(this.nodeName.toLowerCase()!==
"form"){c.event.add(this,"click.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="submit"||d==="image")&&c(b).closest("form").length){a.liveFired=B;return la("submit",this,arguments)}});c.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="text"||d==="password")&&c(b).closest("form").length&&a.keyCode===13){a.liveFired=B;return la("submit",this,arguments)}})}else return false},teardown:function(){c.event.remove(this,".specialSubmit")}};if(!c.support.changeBubbles){var V,
xa=function(a){var b=a.type,d=a.value;if(b==="radio"||b==="checkbox")d=a.checked;else if(b==="select-multiple")d=a.selectedIndex>-1?c.map(a.options,function(e){return e.selected}).join("-"):"";else if(a.nodeName.toLowerCase()==="select")d=a.selectedIndex;return d},Z=function(a,b){var d=a.target,e,f;if(!(!ia.test(d.nodeName)||d.readOnly)){e=c.data(d,"_change_data");f=xa(d);if(a.type!=="focusout"||d.type!=="radio")c.data(d,"_change_data",f);if(!(e===B||f===e))if(e!=null||f){a.type="change";a.liveFired=
B;return c.event.trigger(a,b,d)}}};c.event.special.change={filters:{focusout:Z,beforedeactivate:Z,click:function(a){var b=a.target,d=b.type;if(d==="radio"||d==="checkbox"||b.nodeName.toLowerCase()==="select")return Z.call(this,a)},keydown:function(a){var b=a.target,d=b.type;if(a.keyCode===13&&b.nodeName.toLowerCase()!=="textarea"||a.keyCode===32&&(d==="checkbox"||d==="radio")||d==="select-multiple")return Z.call(this,a)},beforeactivate:function(a){a=a.target;c.data(a,"_change_data",xa(a))}},setup:function(){if(this.type===
"file")return false;for(var a in V)c.event.add(this,a+".specialChange",V[a]);return ia.test(this.nodeName)},teardown:function(){c.event.remove(this,".specialChange");return ia.test(this.nodeName)}};V=c.event.special.change.filters;V.focus=V.beforeactivate}t.addEventListener&&c.each({focus:"focusin",blur:"focusout"},function(a,b){function d(e){e=c.event.fix(e);e.type=b;return c.event.trigger(e,null,e.target)}c.event.special[b]={setup:function(){ua[b]++===0&&t.addEventListener(a,d,true)},teardown:function(){--ua[b]===
0&&t.removeEventListener(a,d,true)}}});c.each(["bind","one"],function(a,b){c.fn[b]=function(d,e,f){if(typeof d==="object"){for(var h in d)this[b](h,e,d[h],f);return this}if(c.isFunction(e)||e===false){f=e;e=B}var l=b==="one"?c.proxy(f,function(o){c(this).unbind(o,l);return f.apply(this,arguments)}):f;if(d==="unload"&&b!=="one")this.one(d,e,f);else{h=0;for(var k=this.length;h<k;h++)c.event.add(this[h],d,l,e)}return this}});c.fn.extend({unbind:function(a,b){if(typeof a==="object"&&!a.preventDefault)for(var d in a)this.unbind(d,
a[d]);else{d=0;for(var e=this.length;d<e;d++)c.event.remove(this[d],a,b)}return this},delegate:function(a,b,d,e){return this.live(b,d,e,a)},undelegate:function(a,b,d){return arguments.length===0?this.unbind("live"):this.die(b,null,d,a)},trigger:function(a,b){return this.each(function(){c.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0]){var d=c.Event(a);d.preventDefault();d.stopPropagation();c.event.trigger(d,b,this[0]);return d.result}},toggle:function(a){for(var b=arguments,d=
1;d<b.length;)c.proxy(a,b[d++]);return this.click(c.proxy(a,function(e){var f=(c.data(this,"lastToggle"+a.guid)||0)%d;c.data(this,"lastToggle"+a.guid,f+1);e.preventDefault();return b[f].apply(this,arguments)||false}))},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var ya={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};c.each(["live","die"],function(a,b){c.fn[b]=function(d,e,f,h){var l,k=0,o,x,r=h||this.selector;h=h?this:c(this.context);if(typeof d===
"object"&&!d.preventDefault){for(l in d)h[b](l,e,d[l],r);return this}if(c.isFunction(e)){f=e;e=B}for(d=(d||"").split(" ");(l=d[k++])!=null;){o=X.exec(l);x="";if(o){x=o[0];l=l.replace(X,"")}if(l==="hover")d.push("mouseenter"+x,"mouseleave"+x);else{o=l;if(l==="focus"||l==="blur"){d.push(ya[l]+x);l+=x}else l=(ya[l]||l)+x;if(b==="live"){x=0;for(var A=h.length;x<A;x++)c.event.add(h[x],"live."+Y(l,r),{data:e,selector:r,handler:f,origType:l,origHandler:f,preType:o})}else h.unbind("live."+Y(l,r),f)}}return this}});
c.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),function(a,b){c.fn[b]=function(d,e){if(e==null){e=d;d=null}return arguments.length>0?this.bind(b,d,e):this.trigger(b)};if(c.attrFn)c.attrFn[b]=true});E.attachEvent&&!E.addEventListener&&c(E).bind("unload",function(){for(var a in c.cache)if(c.cache[a].handle)try{c.event.remove(c.cache[a].handle.elem)}catch(b){}});
(function(){function a(g,i,n,m,p,q){p=0;for(var u=m.length;p<u;p++){var y=m[p];if(y){var F=false;for(y=y[g];y;){if(y.sizcache===n){F=m[y.sizset];break}if(y.nodeType===1&&!q){y.sizcache=n;y.sizset=p}if(y.nodeName.toLowerCase()===i){F=y;break}y=y[g]}m[p]=F}}}function b(g,i,n,m,p,q){p=0;for(var u=m.length;p<u;p++){var y=m[p];if(y){var F=false;for(y=y[g];y;){if(y.sizcache===n){F=m[y.sizset];break}if(y.nodeType===1){if(!q){y.sizcache=n;y.sizset=p}if(typeof i!=="string"){if(y===i){F=true;break}}else if(k.filter(i,
[y]).length>0){F=y;break}}y=y[g]}m[p]=F}}}var d=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,e=0,f=Object.prototype.toString,h=false,l=true;[0,0].sort(function(){l=false;return 0});var k=function(g,i,n,m){n=n||[];var p=i=i||t;if(i.nodeType!==1&&i.nodeType!==9)return[];if(!g||typeof g!=="string")return n;var q,u,y,F,M,N=true,O=k.isXML(i),D=[],R=g;do{d.exec("");if(q=d.exec(R)){R=q[3];D.push(q[1]);if(q[2]){F=q[3];
break}}}while(q);if(D.length>1&&x.exec(g))if(D.length===2&&o.relative[D[0]])u=L(D[0]+D[1],i);else for(u=o.relative[D[0]]?[i]:k(D.shift(),i);D.length;){g=D.shift();if(o.relative[g])g+=D.shift();u=L(g,u)}else{if(!m&&D.length>1&&i.nodeType===9&&!O&&o.match.ID.test(D[0])&&!o.match.ID.test(D[D.length-1])){q=k.find(D.shift(),i,O);i=q.expr?k.filter(q.expr,q.set)[0]:q.set[0]}if(i){q=m?{expr:D.pop(),set:C(m)}:k.find(D.pop(),D.length===1&&(D[0]==="~"||D[0]==="+")&&i.parentNode?i.parentNode:i,O);u=q.expr?k.filter(q.expr,
q.set):q.set;if(D.length>0)y=C(u);else N=false;for(;D.length;){q=M=D.pop();if(o.relative[M])q=D.pop();else M="";if(q==null)q=i;o.relative[M](y,q,O)}}else y=[]}y||(y=u);y||k.error(M||g);if(f.call(y)==="[object Array]")if(N)if(i&&i.nodeType===1)for(g=0;y[g]!=null;g++){if(y[g]&&(y[g]===true||y[g].nodeType===1&&k.contains(i,y[g])))n.push(u[g])}else for(g=0;y[g]!=null;g++)y[g]&&y[g].nodeType===1&&n.push(u[g]);else n.push.apply(n,y);else C(y,n);if(F){k(F,p,n,m);k.uniqueSort(n)}return n};k.uniqueSort=function(g){if(w){h=
l;g.sort(w);if(h)for(var i=1;i<g.length;i++)g[i]===g[i-1]&&g.splice(i--,1)}return g};k.matches=function(g,i){return k(g,null,null,i)};k.matchesSelector=function(g,i){return k(i,null,null,[g]).length>0};k.find=function(g,i,n){var m;if(!g)return[];for(var p=0,q=o.order.length;p<q;p++){var u,y=o.order[p];if(u=o.leftMatch[y].exec(g)){var F=u[1];u.splice(1,1);if(F.substr(F.length-1)!=="\\"){u[1]=(u[1]||"").replace(/\\/g,"");m=o.find[y](u,i,n);if(m!=null){g=g.replace(o.match[y],"");break}}}}m||(m=i.getElementsByTagName("*"));
return{set:m,expr:g}};k.filter=function(g,i,n,m){for(var p,q,u=g,y=[],F=i,M=i&&i[0]&&k.isXML(i[0]);g&&i.length;){for(var N in o.filter)if((p=o.leftMatch[N].exec(g))!=null&&p[2]){var O,D,R=o.filter[N];D=p[1];q=false;p.splice(1,1);if(D.substr(D.length-1)!=="\\"){if(F===y)y=[];if(o.preFilter[N])if(p=o.preFilter[N](p,F,n,y,m,M)){if(p===true)continue}else q=O=true;if(p)for(var j=0;(D=F[j])!=null;j++)if(D){O=R(D,p,j,F);var s=m^!!O;if(n&&O!=null)if(s)q=true;else F[j]=false;else if(s){y.push(D);q=true}}if(O!==
B){n||(F=y);g=g.replace(o.match[N],"");if(!q)return[];break}}}if(g===u)if(q==null)k.error(g);else break;u=g}return F};k.error=function(g){throw"Syntax error, unrecognized expression: "+g;};var o=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+\-]*)\))?/,
POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(g){return g.getAttribute("href")}},relative:{"+":function(g,i){var n=typeof i==="string",m=n&&!/\W/.test(i);n=n&&!m;if(m)i=i.toLowerCase();m=0;for(var p=g.length,q;m<p;m++)if(q=g[m]){for(;(q=q.previousSibling)&&q.nodeType!==1;);g[m]=n||q&&q.nodeName.toLowerCase()===
i?q||false:q===i}n&&k.filter(i,g,true)},">":function(g,i){var n,m=typeof i==="string",p=0,q=g.length;if(m&&!/\W/.test(i))for(i=i.toLowerCase();p<q;p++){if(n=g[p]){n=n.parentNode;g[p]=n.nodeName.toLowerCase()===i?n:false}}else{for(;p<q;p++)if(n=g[p])g[p]=m?n.parentNode:n.parentNode===i;m&&k.filter(i,g,true)}},"":function(g,i,n){var m,p=e++,q=b;if(typeof i==="string"&&!/\W/.test(i)){m=i=i.toLowerCase();q=a}q("parentNode",i,p,g,m,n)},"~":function(g,i,n){var m,p=e++,q=b;if(typeof i==="string"&&!/\W/.test(i)){m=
i=i.toLowerCase();q=a}q("previousSibling",i,p,g,m,n)}},find:{ID:function(g,i,n){if(typeof i.getElementById!=="undefined"&&!n)return(g=i.getElementById(g[1]))&&g.parentNode?[g]:[]},NAME:function(g,i){if(typeof i.getElementsByName!=="undefined"){for(var n=[],m=i.getElementsByName(g[1]),p=0,q=m.length;p<q;p++)m[p].getAttribute("name")===g[1]&&n.push(m[p]);return n.length===0?null:n}},TAG:function(g,i){return i.getElementsByTagName(g[1])}},preFilter:{CLASS:function(g,i,n,m,p,q){g=" "+g[1].replace(/\\/g,
"")+" ";if(q)return g;q=0;for(var u;(u=i[q])!=null;q++)if(u)if(p^(u.className&&(" "+u.className+" ").replace(/[\t\n]/g," ").indexOf(g)>=0))n||m.push(u);else if(n)i[q]=false;return false},ID:function(g){return g[1].replace(/\\/g,"")},TAG:function(g){return g[1].toLowerCase()},CHILD:function(g){if(g[1]==="nth"){var i=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(g[2]==="even"&&"2n"||g[2]==="odd"&&"2n+1"||!/\D/.test(g[2])&&"0n+"+g[2]||g[2]);g[2]=i[1]+(i[2]||1)-0;g[3]=i[3]-0}g[0]=e++;return g},ATTR:function(g,i,n,
m,p,q){i=g[1].replace(/\\/g,"");if(!q&&o.attrMap[i])g[1]=o.attrMap[i];if(g[2]==="~=")g[4]=" "+g[4]+" ";return g},PSEUDO:function(g,i,n,m,p){if(g[1]==="not")if((d.exec(g[3])||"").length>1||/^\w/.test(g[3]))g[3]=k(g[3],null,null,i);else{g=k.filter(g[3],i,n,true^p);n||m.push.apply(m,g);return false}else if(o.match.POS.test(g[0])||o.match.CHILD.test(g[0]))return true;return g},POS:function(g){g.unshift(true);return g}},filters:{enabled:function(g){return g.disabled===false&&g.type!=="hidden"},disabled:function(g){return g.disabled===
true},checked:function(g){return g.checked===true},selected:function(g){return g.selected===true},parent:function(g){return!!g.firstChild},empty:function(g){return!g.firstChild},has:function(g,i,n){return!!k(n[3],g).length},header:function(g){return/h\d/i.test(g.nodeName)},text:function(g){return"text"===g.type},radio:function(g){return"radio"===g.type},checkbox:function(g){return"checkbox"===g.type},file:function(g){return"file"===g.type},password:function(g){return"password"===g.type},submit:function(g){return"submit"===
g.type},image:function(g){return"image"===g.type},reset:function(g){return"reset"===g.type},button:function(g){return"button"===g.type||g.nodeName.toLowerCase()==="button"},input:function(g){return/input|select|textarea|button/i.test(g.nodeName)}},setFilters:{first:function(g,i){return i===0},last:function(g,i,n,m){return i===m.length-1},even:function(g,i){return i%2===0},odd:function(g,i){return i%2===1},lt:function(g,i,n){return i<n[3]-0},gt:function(g,i,n){return i>n[3]-0},nth:function(g,i,n){return n[3]-
0===i},eq:function(g,i,n){return n[3]-0===i}},filter:{PSEUDO:function(g,i,n,m){var p=i[1],q=o.filters[p];if(q)return q(g,n,i,m);else if(p==="contains")return(g.textContent||g.innerText||k.getText([g])||"").indexOf(i[3])>=0;else if(p==="not"){i=i[3];n=0;for(m=i.length;n<m;n++)if(i[n]===g)return false;return true}else k.error("Syntax error, unrecognized expression: "+p)},CHILD:function(g,i){var n=i[1],m=g;switch(n){case "only":case "first":for(;m=m.previousSibling;)if(m.nodeType===1)return false;if(n===
"first")return true;m=g;case "last":for(;m=m.nextSibling;)if(m.nodeType===1)return false;return true;case "nth":n=i[2];var p=i[3];if(n===1&&p===0)return true;var q=i[0],u=g.parentNode;if(u&&(u.sizcache!==q||!g.nodeIndex)){var y=0;for(m=u.firstChild;m;m=m.nextSibling)if(m.nodeType===1)m.nodeIndex=++y;u.sizcache=q}m=g.nodeIndex-p;return n===0?m===0:m%n===0&&m/n>=0}},ID:function(g,i){return g.nodeType===1&&g.getAttribute("id")===i},TAG:function(g,i){return i==="*"&&g.nodeType===1||g.nodeName.toLowerCase()===
i},CLASS:function(g,i){return(" "+(g.className||g.getAttribute("class"))+" ").indexOf(i)>-1},ATTR:function(g,i){var n=i[1];n=o.attrHandle[n]?o.attrHandle[n](g):g[n]!=null?g[n]:g.getAttribute(n);var m=n+"",p=i[2],q=i[4];return n==null?p==="!=":p==="="?m===q:p==="*="?m.indexOf(q)>=0:p==="~="?(" "+m+" ").indexOf(q)>=0:!q?m&&n!==false:p==="!="?m!==q:p==="^="?m.indexOf(q)===0:p==="$="?m.substr(m.length-q.length)===q:p==="|="?m===q||m.substr(0,q.length+1)===q+"-":false},POS:function(g,i,n,m){var p=o.setFilters[i[2]];
if(p)return p(g,n,i,m)}}},x=o.match.POS,r=function(g,i){return"\\"+(i-0+1)},A;for(A in o.match){o.match[A]=RegExp(o.match[A].source+/(?![^\[]*\])(?![^\(]*\))/.source);o.leftMatch[A]=RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[A].source.replace(/\\(\d+)/g,r))}var C=function(g,i){g=Array.prototype.slice.call(g,0);if(i){i.push.apply(i,g);return i}return g};try{Array.prototype.slice.call(t.documentElement.childNodes,0)}catch(J){C=function(g,i){var n=0,m=i||[];if(f.call(g)==="[object Array]")Array.prototype.push.apply(m,
g);else if(typeof g.length==="number")for(var p=g.length;n<p;n++)m.push(g[n]);else for(;g[n];n++)m.push(g[n]);return m}}var w,I;if(t.documentElement.compareDocumentPosition)w=function(g,i){if(g===i){h=true;return 0}if(!g.compareDocumentPosition||!i.compareDocumentPosition)return g.compareDocumentPosition?-1:1;return g.compareDocumentPosition(i)&4?-1:1};else{w=function(g,i){var n,m,p=[],q=[];n=g.parentNode;m=i.parentNode;var u=n;if(g===i){h=true;return 0}else if(n===m)return I(g,i);else if(n){if(!m)return 1}else return-1;
for(;u;){p.unshift(u);u=u.parentNode}for(u=m;u;){q.unshift(u);u=u.parentNode}n=p.length;m=q.length;for(u=0;u<n&&u<m;u++)if(p[u]!==q[u])return I(p[u],q[u]);return u===n?I(g,q[u],-1):I(p[u],i,1)};I=function(g,i,n){if(g===i)return n;for(g=g.nextSibling;g;){if(g===i)return-1;g=g.nextSibling}return 1}}k.getText=function(g){for(var i="",n,m=0;g[m];m++){n=g[m];if(n.nodeType===3||n.nodeType===4)i+=n.nodeValue;else if(n.nodeType!==8)i+=k.getText(n.childNodes)}return i};(function(){var g=t.createElement("div"),
i="script"+(new Date).getTime(),n=t.documentElement;g.innerHTML="<a name='"+i+"'/>";n.insertBefore(g,n.firstChild);if(t.getElementById(i)){o.find.ID=function(m,p,q){if(typeof p.getElementById!=="undefined"&&!q)return(p=p.getElementById(m[1]))?p.id===m[1]||typeof p.getAttributeNode!=="undefined"&&p.getAttributeNode("id").nodeValue===m[1]?[p]:B:[]};o.filter.ID=function(m,p){var q=typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id");return m.nodeType===1&&q&&q.nodeValue===p}}n.removeChild(g);
n=g=null})();(function(){var g=t.createElement("div");g.appendChild(t.createComment(""));if(g.getElementsByTagName("*").length>0)o.find.TAG=function(i,n){var m=n.getElementsByTagName(i[1]);if(i[1]==="*"){for(var p=[],q=0;m[q];q++)m[q].nodeType===1&&p.push(m[q]);m=p}return m};g.innerHTML="<a href='#'></a>";if(g.firstChild&&typeof g.firstChild.getAttribute!=="undefined"&&g.firstChild.getAttribute("href")!=="#")o.attrHandle.href=function(i){return i.getAttribute("href",2)};g=null})();t.querySelectorAll&&
function(){var g=k,i=t.createElement("div");i.innerHTML="<p class='TEST'></p>";if(!(i.querySelectorAll&&i.querySelectorAll(".TEST").length===0)){k=function(m,p,q,u){p=p||t;m=m.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!u&&!k.isXML(p))if(p.nodeType===9)try{return C(p.querySelectorAll(m),q)}catch(y){}else if(p.nodeType===1&&p.nodeName.toLowerCase()!=="object"){var F=p.getAttribute("id"),M=F||"__sizzle__";F||p.setAttribute("id",M);try{return C(p.querySelectorAll("#"+M+" "+m),q)}catch(N){}finally{F||
p.removeAttribute("id")}}return g(m,p,q,u)};for(var n in g)k[n]=g[n];i=null}}();(function(){var g=t.documentElement,i=g.matchesSelector||g.mozMatchesSelector||g.webkitMatchesSelector||g.msMatchesSelector,n=false;try{i.call(t.documentElement,"[test!='']:sizzle")}catch(m){n=true}if(i)k.matchesSelector=function(p,q){q=q.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!k.isXML(p))try{if(n||!o.match.PSEUDO.test(q)&&!/!=/.test(q))return i.call(p,q)}catch(u){}return k(q,null,null,[p]).length>0}})();(function(){var g=
t.createElement("div");g.innerHTML="<div class='test e'></div><div class='test'></div>";if(!(!g.getElementsByClassName||g.getElementsByClassName("e").length===0)){g.lastChild.className="e";if(g.getElementsByClassName("e").length!==1){o.order.splice(1,0,"CLASS");o.find.CLASS=function(i,n,m){if(typeof n.getElementsByClassName!=="undefined"&&!m)return n.getElementsByClassName(i[1])};g=null}}})();k.contains=t.documentElement.contains?function(g,i){return g!==i&&(g.contains?g.contains(i):true)}:t.documentElement.compareDocumentPosition?
function(g,i){return!!(g.compareDocumentPosition(i)&16)}:function(){return false};k.isXML=function(g){return(g=(g?g.ownerDocument||g:0).documentElement)?g.nodeName!=="HTML":false};var L=function(g,i){for(var n,m=[],p="",q=i.nodeType?[i]:i;n=o.match.PSEUDO.exec(g);){p+=n[0];g=g.replace(o.match.PSEUDO,"")}g=o.relative[g]?g+"*":g;n=0;for(var u=q.length;n<u;n++)k(g,q[n],m);return k.filter(p,m)};c.find=k;c.expr=k.selectors;c.expr[":"]=c.expr.filters;c.unique=k.uniqueSort;c.text=k.getText;c.isXMLDoc=k.isXML;
c.contains=k.contains})();var Za=/Until$/,$a=/^(?:parents|prevUntil|prevAll)/,ab=/,/,Na=/^.[^:#\[\.,]*$/,bb=Array.prototype.slice,cb=c.expr.match.POS;c.fn.extend({find:function(a){for(var b=this.pushStack("","find",a),d=0,e=0,f=this.length;e<f;e++){d=b.length;c.find(a,this[e],b);if(e>0)for(var h=d;h<b.length;h++)for(var l=0;l<d;l++)if(b[l]===b[h]){b.splice(h--,1);break}}return b},has:function(a){var b=c(a);return this.filter(function(){for(var d=0,e=b.length;d<e;d++)if(c.contains(this,b[d]))return true})},
not:function(a){return this.pushStack(ma(this,a,false),"not",a)},filter:function(a){return this.pushStack(ma(this,a,true),"filter",a)},is:function(a){return!!a&&c.filter(a,this).length>0},closest:function(a,b){var d=[],e,f,h=this[0];if(c.isArray(a)){var l,k={},o=1;if(h&&a.length){e=0;for(f=a.length;e<f;e++){l=a[e];k[l]||(k[l]=c.expr.match.POS.test(l)?c(l,b||this.context):l)}for(;h&&h.ownerDocument&&h!==b;){for(l in k){e=k[l];if(e.jquery?e.index(h)>-1:c(h).is(e))d.push({selector:l,elem:h,level:o})}h=
h.parentNode;o++}}return d}l=cb.test(a)?c(a,b||this.context):null;e=0;for(f=this.length;e<f;e++)for(h=this[e];h;)if(l?l.index(h)>-1:c.find.matchesSelector(h,a)){d.push(h);break}else{h=h.parentNode;if(!h||!h.ownerDocument||h===b)break}d=d.length>1?c.unique(d):d;return this.pushStack(d,"closest",a)},index:function(a){if(!a||typeof a==="string")return c.inArray(this[0],a?c(a):this.parent().children());return c.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var d=typeof a==="string"?c(a,b||this.context):
c.makeArray(a),e=c.merge(this.get(),d);return this.pushStack(!d[0]||!d[0].parentNode||d[0].parentNode.nodeType===11||!e[0]||!e[0].parentNode||e[0].parentNode.nodeType===11?e:c.unique(e))},andSelf:function(){return this.add(this.prevObject)}});c.each({parent:function(a){return(a=a.parentNode)&&a.nodeType!==11?a:null},parents:function(a){return c.dir(a,"parentNode")},parentsUntil:function(a,b,d){return c.dir(a,"parentNode",d)},next:function(a){return c.nth(a,2,"nextSibling")},prev:function(a){return c.nth(a,
2,"previousSibling")},nextAll:function(a){return c.dir(a,"nextSibling")},prevAll:function(a){return c.dir(a,"previousSibling")},nextUntil:function(a,b,d){return c.dir(a,"nextSibling",d)},prevUntil:function(a,b,d){return c.dir(a,"previousSibling",d)},siblings:function(a){return c.sibling(a.parentNode.firstChild,a)},children:function(a){return c.sibling(a.firstChild)},contents:function(a){return c.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:c.makeArray(a.childNodes)}},function(a,
b){c.fn[a]=function(d,e){var f=c.map(this,b,d);Za.test(a)||(e=d);if(e&&typeof e==="string")f=c.filter(e,f);f=this.length>1?c.unique(f):f;if((this.length>1||ab.test(e))&&$a.test(a))f=f.reverse();return this.pushStack(f,a,bb.call(arguments).join(","))}});c.extend({filter:function(a,b,d){if(d)a=":not("+a+")";return b.length===1?c.find.matchesSelector(b[0],a)?[b[0]]:[]:c.find.matches(a,b)},dir:function(a,b,d){var e=[];for(a=a[b];a&&a.nodeType!==9&&(d===B||a.nodeType!==1||!c(a).is(d));){a.nodeType===1&&
e.push(a);a=a[b]}return e},nth:function(a,b,d){b=b||1;for(var e=0;a;a=a[d])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){for(var d=[];a;a=a.nextSibling)a.nodeType===1&&a!==b&&d.push(a);return d}});var za=/ jQuery\d+="(?:\d+|null)"/g,$=/^\s+/,Aa=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Ba=/<([\w:]+)/,db=/<tbody/i,eb=/<|&#?\w+;/,Ca=/<(?:script|object|embed|option|style)/i,Da=/checked\s*(?:[^=]|=\s*.checked.)/i,fb=/\=([^="'>\s]+\/)>/g,P={option:[1,
"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};P.optgroup=P.option;P.tbody=P.tfoot=P.colgroup=P.caption=P.thead;P.th=P.td;if(!c.support.htmlSerialize)P._default=[1,"div<div>","</div>"];c.fn.extend({text:function(a){if(c.isFunction(a))return this.each(function(b){var d=
c(this);d.text(a.call(this,b,d.text()))});if(typeof a!=="object"&&a!==B)return this.empty().append((this[0]&&this[0].ownerDocument||t).createTextNode(a));return c.text(this)},wrapAll:function(a){if(c.isFunction(a))return this.each(function(d){c(this).wrapAll(a.call(this,d))});if(this[0]){var b=c(a,this[0].ownerDocument).eq(0).clone(true);this[0].parentNode&&b.insertBefore(this[0]);b.map(function(){for(var d=this;d.firstChild&&d.firstChild.nodeType===1;)d=d.firstChild;return d}).append(this)}return this},
wrapInner:function(a){if(c.isFunction(a))return this.each(function(b){c(this).wrapInner(a.call(this,b))});return this.each(function(){var b=c(this),d=b.contents();d.length?d.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){c(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){c.nodeName(this,"body")||c(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.appendChild(a)})},
prepend:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this)});else if(arguments.length){var a=c(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,
this.nextSibling)});else if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,c(arguments[0]).toArray());return a}},remove:function(a,b){for(var d=0,e;(e=this[d])!=null;d++)if(!a||c.filter(a,[e]).length){if(!b&&e.nodeType===1){c.cleanData(e.getElementsByTagName("*"));c.cleanData([e])}e.parentNode&&e.parentNode.removeChild(e)}return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++)for(b.nodeType===1&&c.cleanData(b.getElementsByTagName("*"));b.firstChild;)b.removeChild(b.firstChild);
return this},clone:function(a){var b=this.map(function(){if(!c.support.noCloneEvent&&!c.isXMLDoc(this)){var d=this.outerHTML,e=this.ownerDocument;if(!d){d=e.createElement("div");d.appendChild(this.cloneNode(true));d=d.innerHTML}return c.clean([d.replace(za,"").replace(fb,'="$1">').replace($,"")],e)[0]}else return this.cloneNode(true)});if(a===true){na(this,b);na(this.find("*"),b.find("*"))}return b},html:function(a){if(a===B)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(za,""):null;
else if(typeof a==="string"&&!Ca.test(a)&&(c.support.leadingWhitespace||!$.test(a))&&!P[(Ba.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Aa,"<$1></$2>");try{for(var b=0,d=this.length;b<d;b++)if(this[b].nodeType===1){c.cleanData(this[b].getElementsByTagName("*"));this[b].innerHTML=a}}catch(e){this.empty().append(a)}}else c.isFunction(a)?this.each(function(f){var h=c(this);h.html(a.call(this,f,h.html()))}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(c.isFunction(a))return this.each(function(b){var d=
c(this),e=d.html();d.replaceWith(a.call(this,b,e))});if(typeof a!=="string")a=c(a).detach();return this.each(function(){var b=this.nextSibling,d=this.parentNode;c(this).remove();b?c(b).before(a):c(d).append(a)})}else return this.pushStack(c(c.isFunction(a)?a():a),"replaceWith",a)},detach:function(a){return this.remove(a,true)},domManip:function(a,b,d){var e,f,h,l=a[0],k=[];if(!c.support.checkClone&&arguments.length===3&&typeof l==="string"&&Da.test(l))return this.each(function(){c(this).domManip(a,
b,d,true)});if(c.isFunction(l))return this.each(function(x){var r=c(this);a[0]=l.call(this,x,b?r.html():B);r.domManip(a,b,d)});if(this[0]){e=l&&l.parentNode;e=c.support.parentNode&&e&&e.nodeType===11&&e.childNodes.length===this.length?{fragment:e}:c.buildFragment(a,this,k);h=e.fragment;if(f=h.childNodes.length===1?h=h.firstChild:h.firstChild){b=b&&c.nodeName(f,"tr");f=0;for(var o=this.length;f<o;f++)d.call(b?c.nodeName(this[f],"table")?this[f].getElementsByTagName("tbody")[0]||this[f].appendChild(this[f].ownerDocument.createElement("tbody")):
this[f]:this[f],f>0||e.cacheable||this.length>1?h.cloneNode(true):h)}k.length&&c.each(k,Oa)}return this}});c.buildFragment=function(a,b,d){var e,f,h;b=b&&b[0]?b[0].ownerDocument||b[0]:t;if(a.length===1&&typeof a[0]==="string"&&a[0].length<512&&b===t&&!Ca.test(a[0])&&(c.support.checkClone||!Da.test(a[0]))){f=true;if(h=c.fragments[a[0]])if(h!==1)e=h}if(!e){e=b.createDocumentFragment();c.clean(a,b,e,d)}if(f)c.fragments[a[0]]=h?e:1;return{fragment:e,cacheable:f}};c.fragments={};c.each({appendTo:"append",
prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){c.fn[a]=function(d){var e=[];d=c(d);var f=this.length===1&&this[0].parentNode;if(f&&f.nodeType===11&&f.childNodes.length===1&&d.length===1){d[b](this[0]);return this}else{f=0;for(var h=d.length;f<h;f++){var l=(f>0?this.clone(true):this).get();c(d[f])[b](l);e=e.concat(l)}return this.pushStack(e,a,d.selector)}}});c.extend({clean:function(a,b,d,e){b=b||t;if(typeof b.createElement==="undefined")b=b.ownerDocument||
b[0]&&b[0].ownerDocument||t;for(var f=[],h=0,l;(l=a[h])!=null;h++){if(typeof l==="number")l+="";if(l){if(typeof l==="string"&&!eb.test(l))l=b.createTextNode(l);else if(typeof l==="string"){l=l.replace(Aa,"<$1></$2>");var k=(Ba.exec(l)||["",""])[1].toLowerCase(),o=P[k]||P._default,x=o[0],r=b.createElement("div");for(r.innerHTML=o[1]+l+o[2];x--;)r=r.lastChild;if(!c.support.tbody){x=db.test(l);k=k==="table"&&!x?r.firstChild&&r.firstChild.childNodes:o[1]==="<table>"&&!x?r.childNodes:[];for(o=k.length-
1;o>=0;--o)c.nodeName(k[o],"tbody")&&!k[o].childNodes.length&&k[o].parentNode.removeChild(k[o])}!c.support.leadingWhitespace&&$.test(l)&&r.insertBefore(b.createTextNode($.exec(l)[0]),r.firstChild);l=r.childNodes}if(l.nodeType)f.push(l);else f=c.merge(f,l)}}if(d)for(h=0;f[h];h++)if(e&&c.nodeName(f[h],"script")&&(!f[h].type||f[h].type.toLowerCase()==="text/javascript"))e.push(f[h].parentNode?f[h].parentNode.removeChild(f[h]):f[h]);else{f[h].nodeType===1&&f.splice.apply(f,[h+1,0].concat(c.makeArray(f[h].getElementsByTagName("script"))));
d.appendChild(f[h])}return f},cleanData:function(a){for(var b,d,e=c.cache,f=c.event.special,h=c.support.deleteExpando,l=0,k;(k=a[l])!=null;l++)if(!(k.nodeName&&c.noData[k.nodeName.toLowerCase()]))if(d=k[c.expando]){if((b=e[d])&&b.events)for(var o in b.events)f[o]?c.event.remove(k,o):c.removeEvent(k,o,b.handle);if(h)delete k[c.expando];else k.removeAttribute&&k.removeAttribute(c.expando);delete e[d]}}});var Ea=/alpha\([^)]*\)/i,gb=/opacity=([^)]*)/,hb=/-([a-z])/ig,ib=/([A-Z])/g,Fa=/^-?\d+(?:px)?$/i,
jb=/^-?\d/,kb={position:"absolute",visibility:"hidden",display:"block"},Pa=["Left","Right"],Qa=["Top","Bottom"],W,Ga,aa,lb=function(a,b){return b.toUpperCase()};c.fn.css=function(a,b){if(arguments.length===2&&b===B)return this;return c.access(this,a,b,true,function(d,e,f){return f!==B?c.style(d,e,f):c.css(d,e)})};c.extend({cssHooks:{opacity:{get:function(a,b){if(b){var d=W(a,"opacity","opacity");return d===""?"1":d}else return a.style.opacity}}},cssNumber:{zIndex:true,fontWeight:true,opacity:true,
zoom:true,lineHeight:true},cssProps:{"float":c.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,b,d,e){if(!(!a||a.nodeType===3||a.nodeType===8||!a.style)){var f,h=c.camelCase(b),l=a.style,k=c.cssHooks[h];b=c.cssProps[h]||h;if(d!==B){if(!(typeof d==="number"&&isNaN(d)||d==null)){if(typeof d==="number"&&!c.cssNumber[h])d+="px";if(!k||!("set"in k)||(d=k.set(a,d))!==B)try{l[b]=d}catch(o){}}}else{if(k&&"get"in k&&(f=k.get(a,false,e))!==B)return f;return l[b]}}},css:function(a,b,d){var e,f=c.camelCase(b),
h=c.cssHooks[f];b=c.cssProps[f]||f;if(h&&"get"in h&&(e=h.get(a,true,d))!==B)return e;else if(W)return W(a,b,f)},swap:function(a,b,d){var e={},f;for(f in b){e[f]=a.style[f];a.style[f]=b[f]}d.call(a);for(f in b)a.style[f]=e[f]},camelCase:function(a){return a.replace(hb,lb)}});c.curCSS=c.css;c.each(["height","width"],function(a,b){c.cssHooks[b]={get:function(d,e,f){var h;if(e){if(d.offsetWidth!==0)h=oa(d,b,f);else c.swap(d,kb,function(){h=oa(d,b,f)});if(h<=0){h=W(d,b,b);if(h==="0px"&&aa)h=aa(d,b,b);
if(h!=null)return h===""||h==="auto"?"0px":h}if(h<0||h==null){h=d.style[b];return h===""||h==="auto"?"0px":h}return typeof h==="string"?h:h+"px"}},set:function(d,e){if(Fa.test(e)){e=parseFloat(e);if(e>=0)return e+"px"}else return e}}});if(!c.support.opacity)c.cssHooks.opacity={get:function(a,b){return gb.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var d=a.style;d.zoom=1;var e=c.isNaN(b)?"":"alpha(opacity="+b*100+")",f=
d.filter||"";d.filter=Ea.test(f)?f.replace(Ea,e):d.filter+" "+e}};if(t.defaultView&&t.defaultView.getComputedStyle)Ga=function(a,b,d){var e;d=d.replace(ib,"-$1").toLowerCase();if(!(b=a.ownerDocument.defaultView))return B;if(b=b.getComputedStyle(a,null)){e=b.getPropertyValue(d);if(e===""&&!c.contains(a.ownerDocument.documentElement,a))e=c.style(a,d)}return e};if(t.documentElement.currentStyle)aa=function(a,b){var d,e,f=a.currentStyle&&a.currentStyle[b],h=a.style;if(!Fa.test(f)&&jb.test(f)){d=h.left;
e=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;h.left=b==="fontSize"?"1em":f||0;f=h.pixelLeft+"px";h.left=d;a.runtimeStyle.left=e}return f===""?"auto":f};W=Ga||aa;if(c.expr&&c.expr.filters){c.expr.filters.hidden=function(a){var b=a.offsetHeight;return a.offsetWidth===0&&b===0||!c.support.reliableHiddenOffsets&&(a.style.display||c.css(a,"display"))==="none"};c.expr.filters.visible=function(a){return!c.expr.filters.hidden(a)}}var mb=c.now(),nb=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,
ob=/^(?:select|textarea)/i,pb=/^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,qb=/^(?:GET|HEAD)$/,Ra=/\[\]$/,T=/\=\?(&|$)/,ja=/\?/,rb=/([?&])_=[^&]*/,sb=/^(\w+:)?\/\/([^\/?#]+)/,tb=/%20/g,ub=/#.*$/,Ha=c.fn.load;c.fn.extend({load:function(a,b,d){if(typeof a!=="string"&&Ha)return Ha.apply(this,arguments);else if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var f=a.slice(e,a.length);a=a.slice(0,e)}e="GET";if(b)if(c.isFunction(b)){d=b;b=null}else if(typeof b===
"object"){b=c.param(b,c.ajaxSettings.traditional);e="POST"}var h=this;c.ajax({url:a,type:e,dataType:"html",data:b,complete:function(l,k){if(k==="success"||k==="notmodified")h.html(f?c("<div>").append(l.responseText.replace(nb,"")).find(f):l.responseText);d&&h.each(d,[l.responseText,k,l])}});return this},serialize:function(){return c.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?c.makeArray(this.elements):this}).filter(function(){return this.name&&
!this.disabled&&(this.checked||ob.test(this.nodeName)||pb.test(this.type))}).map(function(a,b){var d=c(this).val();return d==null?null:c.isArray(d)?c.map(d,function(e){return{name:b.name,value:e}}):{name:b.name,value:d}}).get()}});c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){c.fn[b]=function(d){return this.bind(b,d)}});c.extend({get:function(a,b,d,e){if(c.isFunction(b)){e=e||d;d=b;b=null}return c.ajax({type:"GET",url:a,data:b,success:d,dataType:e})},
getScript:function(a,b){return c.get(a,null,b,"script")},getJSON:function(a,b,d){return c.get(a,b,d,"json")},post:function(a,b,d,e){if(c.isFunction(b)){e=e||d;d=b;b={}}return c.ajax({type:"POST",url:a,data:b,success:d,dataType:e})},ajaxSetup:function(a){c.extend(c.ajaxSettings,a)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return new E.XMLHttpRequest},accepts:{xml:"application/xml, text/xml",html:"text/html",
script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},ajax:function(a){var b=c.extend(true,{},c.ajaxSettings,a),d,e,f,h=b.type.toUpperCase(),l=qb.test(h);b.url=b.url.replace(ub,"");b.context=a&&a.context!=null?a.context:b;if(b.data&&b.processData&&typeof b.data!=="string")b.data=c.param(b.data,b.traditional);if(b.dataType==="jsonp"){if(h==="GET")T.test(b.url)||(b.url+=(ja.test(b.url)?"&":"?")+(b.jsonp||"callback")+"=?");else if(!b.data||
!T.test(b.data))b.data=(b.data?b.data+"&":"")+(b.jsonp||"callback")+"=?";b.dataType="json"}if(b.dataType==="json"&&(b.data&&T.test(b.data)||T.test(b.url))){d=b.jsonpCallback||"jsonp"+mb++;if(b.data)b.data=(b.data+"").replace(T,"="+d+"$1");b.url=b.url.replace(T,"="+d+"$1");b.dataType="script";var k=E[d];E[d]=function(m){if(c.isFunction(k))k(m);else{E[d]=B;try{delete E[d]}catch(p){}}f=m;c.handleSuccess(b,w,e,f);c.handleComplete(b,w,e,f);r&&r.removeChild(A)}}if(b.dataType==="script"&&b.cache===null)b.cache=
false;if(b.cache===false&&l){var o=c.now(),x=b.url.replace(rb,"$1_="+o);b.url=x+(x===b.url?(ja.test(b.url)?"&":"?")+"_="+o:"")}if(b.data&&l)b.url+=(ja.test(b.url)?"&":"?")+b.data;b.global&&c.active++===0&&c.event.trigger("ajaxStart");o=(o=sb.exec(b.url))&&(o[1]&&o[1].toLowerCase()!==location.protocol||o[2].toLowerCase()!==location.host);if(b.dataType==="script"&&h==="GET"&&o){var r=t.getElementsByTagName("head")[0]||t.documentElement,A=t.createElement("script");if(b.scriptCharset)A.charset=b.scriptCharset;
A.src=b.url;if(!d){var C=false;A.onload=A.onreadystatechange=function(){if(!C&&(!this.readyState||this.readyState==="loaded"||this.readyState==="complete")){C=true;c.handleSuccess(b,w,e,f);c.handleComplete(b,w,e,f);A.onload=A.onreadystatechange=null;r&&A.parentNode&&r.removeChild(A)}}}r.insertBefore(A,r.firstChild);return B}var J=false,w=b.xhr();if(w){b.username?w.open(h,b.url,b.async,b.username,b.password):w.open(h,b.url,b.async);try{if(b.data!=null&&!l||a&&a.contentType)w.setRequestHeader("Content-Type",
b.contentType);if(b.ifModified){c.lastModified[b.url]&&w.setRequestHeader("If-Modified-Since",c.lastModified[b.url]);c.etag[b.url]&&w.setRequestHeader("If-None-Match",c.etag[b.url])}o||w.setRequestHeader("X-Requested-With","XMLHttpRequest");w.setRequestHeader("Accept",b.dataType&&b.accepts[b.dataType]?b.accepts[b.dataType]+", */*; q=0.01":b.accepts._default)}catch(I){}if(b.beforeSend&&b.beforeSend.call(b.context,w,b)===false){b.global&&c.active--===1&&c.event.trigger("ajaxStop");w.abort();return false}b.global&&
c.triggerGlobal(b,"ajaxSend",[w,b]);var L=w.onreadystatechange=function(m){if(!w||w.readyState===0||m==="abort"){J||c.handleComplete(b,w,e,f);J=true;if(w)w.onreadystatechange=c.noop}else if(!J&&w&&(w.readyState===4||m==="timeout")){J=true;w.onreadystatechange=c.noop;e=m==="timeout"?"timeout":!c.httpSuccess(w)?"error":b.ifModified&&c.httpNotModified(w,b.url)?"notmodified":"success";var p;if(e==="success")try{f=c.httpData(w,b.dataType,b)}catch(q){e="parsererror";p=q}if(e==="success"||e==="notmodified")d||
c.handleSuccess(b,w,e,f);else c.handleError(b,w,e,p);d||c.handleComplete(b,w,e,f);m==="timeout"&&w.abort();if(b.async)w=null}};try{var g=w.abort;w.abort=function(){w&&Function.prototype.call.call(g,w);L("abort")}}catch(i){}b.async&&b.timeout>0&&setTimeout(function(){w&&!J&&L("timeout")},b.timeout);try{w.send(l||b.data==null?null:b.data)}catch(n){c.handleError(b,w,null,n);c.handleComplete(b,w,e,f)}b.async||L();return w}},param:function(a,b){var d=[],e=function(h,l){l=c.isFunction(l)?l():l;d[d.length]=
encodeURIComponent(h)+"="+encodeURIComponent(l)};if(b===B)b=c.ajaxSettings.traditional;if(c.isArray(a)||a.jquery)c.each(a,function(){e(this.name,this.value)});else for(var f in a)da(f,a[f],b,e);return d.join("&").replace(tb,"+")}});c.extend({active:0,lastModified:{},etag:{},handleError:function(a,b,d,e){a.error&&a.error.call(a.context,b,d,e);a.global&&c.triggerGlobal(a,"ajaxError",[b,a,e])},handleSuccess:function(a,b,d,e){a.success&&a.success.call(a.context,e,d,b);a.global&&c.triggerGlobal(a,"ajaxSuccess",
[b,a])},handleComplete:function(a,b,d){a.complete&&a.complete.call(a.context,b,d);a.global&&c.triggerGlobal(a,"ajaxComplete",[b,a]);a.global&&c.active--===1&&c.event.trigger("ajaxStop")},triggerGlobal:function(a,b,d){(a.context&&a.context.url==null?c(a.context):c.event).trigger(b,d)},httpSuccess:function(a){try{return!a.status&&location.protocol==="file:"||a.status>=200&&a.status<300||a.status===304||a.status===1223}catch(b){}return false},httpNotModified:function(a,b){var d=a.getResponseHeader("Last-Modified"),
e=a.getResponseHeader("Etag");if(d)c.lastModified[b]=d;if(e)c.etag[b]=e;return a.status===304},httpData:function(a,b,d){var e=a.getResponseHeader("content-type")||"",f=b==="xml"||!b&&e.indexOf("xml")>=0;a=f?a.responseXML:a.responseText;f&&a.documentElement.nodeName==="parsererror"&&c.error("parsererror");if(d&&d.dataFilter)a=d.dataFilter(a,b);if(typeof a==="string")if(b==="json"||!b&&e.indexOf("json")>=0)a=c.parseJSON(a);else if(b==="script"||!b&&e.indexOf("javascript")>=0)c.globalEval(a);return a}});
if(E.ActiveXObject)c.ajaxSettings.xhr=function(){if(E.location.protocol!=="file:")try{return new E.XMLHttpRequest}catch(a){}try{return new E.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}};c.support.ajax=!!c.ajaxSettings.xhr();var ea={},vb=/^(?:toggle|show|hide)$/,wb=/^([+\-]=)?([\d+.\-]+)(.*)$/,ba,pa=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];c.fn.extend({show:function(a,b,d){if(a||a===0)return this.animate(S("show",
3),a,b,d);else{d=0;for(var e=this.length;d<e;d++){a=this[d];b=a.style.display;if(!c.data(a,"olddisplay")&&b==="none")b=a.style.display="";b===""&&c.css(a,"display")==="none"&&c.data(a,"olddisplay",qa(a.nodeName))}for(d=0;d<e;d++){a=this[d];b=a.style.display;if(b===""||b==="none")a.style.display=c.data(a,"olddisplay")||""}return this}},hide:function(a,b,d){if(a||a===0)return this.animate(S("hide",3),a,b,d);else{a=0;for(b=this.length;a<b;a++){d=c.css(this[a],"display");d!=="none"&&c.data(this[a],"olddisplay",
d)}for(a=0;a<b;a++)this[a].style.display="none";return this}},_toggle:c.fn.toggle,toggle:function(a,b,d){var e=typeof a==="boolean";if(c.isFunction(a)&&c.isFunction(b))this._toggle.apply(this,arguments);else a==null||e?this.each(function(){var f=e?a:c(this).is(":hidden");c(this)[f?"show":"hide"]()}):this.animate(S("toggle",3),a,b,d);return this},fadeTo:function(a,b,d,e){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,d,e)},animate:function(a,b,d,e){var f=c.speed(b,
d,e);if(c.isEmptyObject(a))return this.each(f.complete);return this[f.queue===false?"each":"queue"](function(){var h=c.extend({},f),l,k=this.nodeType===1,o=k&&c(this).is(":hidden"),x=this;for(l in a){var r=c.camelCase(l);if(l!==r){a[r]=a[l];delete a[l];l=r}if(a[l]==="hide"&&o||a[l]==="show"&&!o)return h.complete.call(this);if(k&&(l==="height"||l==="width")){h.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY];if(c.css(this,"display")==="inline"&&c.css(this,"float")==="none")if(c.support.inlineBlockNeedsLayout)if(qa(this.nodeName)===
"inline")this.style.display="inline-block";else{this.style.display="inline";this.style.zoom=1}else this.style.display="inline-block"}if(c.isArray(a[l])){(h.specialEasing=h.specialEasing||{})[l]=a[l][1];a[l]=a[l][0]}}if(h.overflow!=null)this.style.overflow="hidden";h.curAnim=c.extend({},a);c.each(a,function(A,C){var J=new c.fx(x,h,A);if(vb.test(C))J[C==="toggle"?o?"show":"hide":C](a);else{var w=wb.exec(C),I=J.cur()||0;if(w){var L=parseFloat(w[2]),g=w[3]||"px";if(g!=="px"){c.style(x,A,(L||1)+g);I=(L||
1)/J.cur()*I;c.style(x,A,I+g)}if(w[1])L=(w[1]==="-="?-1:1)*L+I;J.custom(I,L,g)}else J.custom(I,C,"")}});return true})},stop:function(a,b){var d=c.timers;a&&this.queue([]);this.each(function(){for(var e=d.length-1;e>=0;e--)if(d[e].elem===this){b&&d[e](true);d.splice(e,1)}});b||this.dequeue();return this}});c.each({slideDown:S("show",1),slideUp:S("hide",1),slideToggle:S("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){c.fn[a]=function(d,e,f){return this.animate(b,
d,e,f)}});c.extend({speed:function(a,b,d){var e=a&&typeof a==="object"?c.extend({},a):{complete:d||!d&&b||c.isFunction(a)&&a,duration:a,easing:d&&b||b&&!c.isFunction(b)&&b};e.duration=c.fx.off?0:typeof e.duration==="number"?e.duration:e.duration in c.fx.speeds?c.fx.speeds[e.duration]:c.fx.speeds._default;e.old=e.complete;e.complete=function(){e.queue!==false&&c(this).dequeue();c.isFunction(e.old)&&e.old.call(this)};return e},easing:{linear:function(a,b,d,e){return d+e*a},swing:function(a,b,d,e){return(-Math.cos(a*
Math.PI)/2+0.5)*e+d}},timers:[],fx:function(a,b,d){this.options=b;this.elem=a;this.prop=d;if(!b.orig)b.orig={}}});c.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this);(c.fx.step[this.prop]||c.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a=parseFloat(c.css(this.elem,this.prop));return a&&a>-1E4?a:0},custom:function(a,b,d){function e(l){return f.step(l)}
var f=this,h=c.fx;this.startTime=c.now();this.start=a;this.end=b;this.unit=d||this.unit||"px";this.now=this.start;this.pos=this.state=0;e.elem=this.elem;if(e()&&c.timers.push(e)&&!ba)ba=setInterval(h.tick,h.interval)},show:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.show=true;this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur());c(this.elem).show()},hide:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.hide=true;
this.custom(this.cur(),0)},step:function(a){var b=c.now(),d=true;if(a||b>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;for(var e in this.options.curAnim)if(this.options.curAnim[e]!==true)d=false;if(d){if(this.options.overflow!=null&&!c.support.shrinkWrapBlocks){var f=this.elem,h=this.options;c.each(["","X","Y"],function(k,o){f.style["overflow"+o]=h.overflow[k]})}this.options.hide&&c(this.elem).hide();if(this.options.hide||
this.options.show)for(var l in this.options.curAnim)c.style(this.elem,l,this.options.orig[l]);this.options.complete.call(this.elem)}return false}else{a=b-this.startTime;this.state=a/this.options.duration;b=this.options.easing||(c.easing.swing?"swing":"linear");this.pos=c.easing[this.options.specialEasing&&this.options.specialEasing[this.prop]||b](this.state,a,0,1,this.options.duration);this.now=this.start+(this.end-this.start)*this.pos;this.update()}return true}};c.extend(c.fx,{tick:function(){for(var a=
c.timers,b=0;b<a.length;b++)a[b]()||a.splice(b--,1);a.length||c.fx.stop()},interval:13,stop:function(){clearInterval(ba);ba=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){c.style(a.elem,"opacity",a.now)},_default:function(a){if(a.elem.style&&a.elem.style[a.prop]!=null)a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit;else a.elem[a.prop]=a.now}}});if(c.expr&&c.expr.filters)c.expr.filters.animated=function(a){return c.grep(c.timers,function(b){return a===
b.elem}).length};var xb=/^t(?:able|d|h)$/i,Ia=/^(?:body|html)$/i;c.fn.offset="getBoundingClientRect"in t.documentElement?function(a){var b=this[0],d;if(a)return this.each(function(l){c.offset.setOffset(this,a,l)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);try{d=b.getBoundingClientRect()}catch(e){}var f=b.ownerDocument,h=f.documentElement;if(!d||!c.contains(h,b))return d||{top:0,left:0};b=f.body;f=fa(f);return{top:d.top+(f.pageYOffset||c.support.boxModel&&
h.scrollTop||b.scrollTop)-(h.clientTop||b.clientTop||0),left:d.left+(f.pageXOffset||c.support.boxModel&&h.scrollLeft||b.scrollLeft)-(h.clientLeft||b.clientLeft||0)}}:function(a){var b=this[0];if(a)return this.each(function(x){c.offset.setOffset(this,a,x)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);c.offset.initialize();var d,e=b.offsetParent,f=b.ownerDocument,h=f.documentElement,l=f.body;d=(f=f.defaultView)?f.getComputedStyle(b,null):b.currentStyle;
for(var k=b.offsetTop,o=b.offsetLeft;(b=b.parentNode)&&b!==l&&b!==h;){if(c.offset.supportsFixedPosition&&d.position==="fixed")break;d=f?f.getComputedStyle(b,null):b.currentStyle;k-=b.scrollTop;o-=b.scrollLeft;if(b===e){k+=b.offsetTop;o+=b.offsetLeft;if(c.offset.doesNotAddBorder&&!(c.offset.doesAddBorderForTableAndCells&&xb.test(b.nodeName))){k+=parseFloat(d.borderTopWidth)||0;o+=parseFloat(d.borderLeftWidth)||0}e=b.offsetParent}if(c.offset.subtractsBorderForOverflowNotVisible&&d.overflow!=="visible"){k+=
parseFloat(d.borderTopWidth)||0;o+=parseFloat(d.borderLeftWidth)||0}d=d}if(d.position==="relative"||d.position==="static"){k+=l.offsetTop;o+=l.offsetLeft}if(c.offset.supportsFixedPosition&&d.position==="fixed"){k+=Math.max(h.scrollTop,l.scrollTop);o+=Math.max(h.scrollLeft,l.scrollLeft)}return{top:k,left:o}};c.offset={initialize:function(){var a=t.body,b=t.createElement("div"),d,e,f,h=parseFloat(c.css(a,"marginTop"))||0;c.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",
height:"1px",visibility:"hidden"});b.innerHTML="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";a.insertBefore(b,a.firstChild);d=b.firstChild;e=d.firstChild;f=d.nextSibling.firstChild.firstChild;this.doesNotAddBorder=e.offsetTop!==5;this.doesAddBorderForTableAndCells=
f.offsetTop===5;e.style.position="fixed";e.style.top="20px";this.supportsFixedPosition=e.offsetTop===20||e.offsetTop===15;e.style.position=e.style.top="";d.style.overflow="hidden";d.style.position="relative";this.subtractsBorderForOverflowNotVisible=e.offsetTop===-5;this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==h;a.removeChild(b);c.offset.initialize=c.noop},bodyOffset:function(a){var b=a.offsetTop,d=a.offsetLeft;c.offset.initialize();if(c.offset.doesNotIncludeMarginInBodyOffset){b+=parseFloat(c.css(a,
"marginTop"))||0;d+=parseFloat(c.css(a,"marginLeft"))||0}return{top:b,left:d}},setOffset:function(a,b,d){var e=c.css(a,"position");if(e==="static")a.style.position="relative";var f=c(a),h=f.offset(),l=c.css(a,"top"),k=c.css(a,"left"),o=e==="absolute"&&c.inArray("auto",[l,k])>-1;e={};var x={};if(o)x=f.position();l=o?x.top:parseInt(l,10)||0;k=o?x.left:parseInt(k,10)||0;if(c.isFunction(b))b=b.call(a,d,h);if(b.top!=null)e.top=b.top-h.top+l;if(b.left!=null)e.left=b.left-h.left+k;"using"in b?b.using.call(a,
e):f.css(e)}};c.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),d=this.offset(),e=Ia.test(b[0].nodeName)?{top:0,left:0}:b.offset();d.top-=parseFloat(c.css(a,"marginTop"))||0;d.left-=parseFloat(c.css(a,"marginLeft"))||0;e.top+=parseFloat(c.css(b[0],"borderTopWidth"))||0;e.left+=parseFloat(c.css(b[0],"borderLeftWidth"))||0;return{top:d.top-e.top,left:d.left-e.left}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||t.body;a&&!Ia.test(a.nodeName)&&
c.css(a,"position")==="static";)a=a.offsetParent;return a})}});c.each(["Left","Top"],function(a,b){var d="scroll"+b;c.fn[d]=function(e){var f=this[0],h;if(!f)return null;if(e!==B)return this.each(function(){if(h=fa(this))h.scrollTo(!a?e:c(h).scrollLeft(),a?e:c(h).scrollTop());else this[d]=e});else return(h=fa(f))?"pageXOffset"in h?h[a?"pageYOffset":"pageXOffset"]:c.support.boxModel&&h.document.documentElement[d]||h.document.body[d]:f[d]}});c.each(["Height","Width"],function(a,b){var d=b.toLowerCase();
c.fn["inner"+b]=function(){return this[0]?parseFloat(c.css(this[0],d,"padding")):null};c.fn["outer"+b]=function(e){return this[0]?parseFloat(c.css(this[0],d,e?"margin":"border")):null};c.fn[d]=function(e){var f=this[0];if(!f)return e==null?null:this;if(c.isFunction(e))return this.each(function(l){var k=c(this);k[d](e.call(this,l,k[d]()))});if(c.isWindow(f))return f.document.compatMode==="CSS1Compat"&&f.document.documentElement["client"+b]||f.document.body["client"+b];else if(f.nodeType===9)return Math.max(f.documentElement["client"+
b],f.body["scroll"+b],f.documentElement["scroll"+b],f.body["offset"+b],f.documentElement["offset"+b]);else if(e===B){f=c.css(f,d);var h=parseFloat(f);return c.isNaN(h)?f:h}else return this.css(d,typeof e==="string"?e:e+"px")}})})(window);

View File

@@ -0,0 +1,67 @@
function RandomNum(min, max) {
return Math.floor(Math.random() * (max - min) + min);
}
// 水平滚动插件
(function ($) {
$.fn.extend({
Scroll: function (opt, callback) {
//参数初始化
if (!opt) var opt = {};
var _btnRight = $("#" + opt.right); //Shawphy:向右按钮
var _btnLeft = $("#" + opt.left); //Shawphy:向左按钮
var timerID;
var _this = this.eq(0).find("ul:first");
var lineW = _this.find("li:first").width(), //获取列表宽度
line = opt.line ? parseInt(opt.line, 10) : parseInt(this.width() / lineW, 10), //每次滚动的行数,默认为一屏,即父容器高度
speed = opt.speed ? parseInt(opt.speed, 10) : 500; //卷动速度,数值越大,速度越慢(毫秒)
timer = opt.timer //?parseInt(opt.timer,10):3000; //滚动的时间间隔(毫秒)
if (line == 0) line = 1;
var rightWidth = 0 - line * lineW;
//滚动函数
var scrollRight = function () {
_btnRight.unbind("click", scrollRight);
_this.animate({
marginLeft: rightWidth
}, speed, function () {
for (i = 1; i <= line; i++) {
_this.find("li:first").appendTo(_this);
}
_this.css({ marginLeft: 0 });
_btnRight.bind("click", scrollRight);
});
}
//Shawphy:向左翻页函数
var scrollLeft = function () {
_btnLeft.unbind("click", scrollLeft);
for (i = 1; i <= line; i++) {
_this.find("li:last").show().prependTo(_this);
}
_this.css({ marginLeft: rightWidth });
_this.animate({
marginLeft: 0
}, speed, function () {
_btnLeft.bind("click", scrollLeft);
});
}
//Shawphy:自动播放
var autoPlay = function () {
if (timer) timerID = window.setInterval(scrollRight, timer);
};
var autoStop = function () {
if (timer) window.clearInterval(timerID);
};
//鼠标事件绑定
_this.hover(autoStop, autoPlay);
autoPlay();
var i = 0;
var rd = RandomNum(0, 10);
while (i++ < rd) {
scrollRight();
}
_btnRight.css("cursor", "pointer").click(scrollRight).hover(autoStop, autoPlay);
_btnLeft.css("cursor", "pointer").click(scrollLeft).hover(autoStop, autoPlay);
}
})
})(jQuery);

View File

@@ -0,0 +1,38 @@
/*文章中的插入代码*/
$(document).ready(function () {
$(".article_content pre").each(function () {
var $this = $(this);
if ($this.attr("class").indexOf("brush:") != -1) {
var lang = $this.attr("class").split(';')[0].split(':')[1];
$this.attr('name', 'code');
$this.attr('class', lang);
}
if ($this.attr("class")) {
$this.attr('name', 'code');
}
});
dp.SyntaxHighlighter.HighlightAll('code');
/*如果浏览器不支持访问剪切板就用flash实现*/
if (!window.clipboardData) {
setTimeout("setCopyBtn()", 1000);
}
});
/*使用flash实现复制到剪切板*/
function setCopyBtn() {
$('.CopyToClipboard').each(function () {
var clip = new ZeroClipboard.Client();
clip.setHandCursor(true);
clip.addEventListener('load', function (client) { });
clip.addEventListener('mouseOver', function (client) {
var _c_ode = client.movie.parentNode.parentNode.parentNode.parentNode.nextSibling.innerHTML;
_c_ode = _c_ode.replace(/&lt;/g, "<").replace(/&gt;/g, ">").replace(/&amp;/g, "&");
client.setText(_c_ode);
});
clip.addEventListener('complete', function (client, text) {
alert("代码已经复制到你的剪贴板。");
});
clip.glue(this, this.parentNode);
});
}

View File

@@ -0,0 +1,399 @@
$(document).ready(function () {
if (islock) {
$("#comment_form").html("<div class='notice'>该文章已被禁止评论!</div>");
} else if (currentUserName) {
var html = '<a name="commentbox"></a><a name="reply"></a><a name="quote"></a><form action="/' + username + '/comment/submit?id=' + fileName + '" method="post">' +
'<div class="commentform"><div class="panel_head">发表评论' +
'</div>' +
'<ul><li class="left">用 户 名:</li><li class="right">' + currentUserName + '</li></ul>' +
'<ul><li class="left">评论内容:</li><li class="right" style="position:relative;">' +
'<div id="ubbtools">' +
//'<a href="#insertcode" code="code">插入代码</a>'+
'<a href="#insertcode" code="code"><img src="' + static_host + '/images/ubb/code.gif" border="0" alt="插入代码" title="插入代码"/></a>' +
'</div>' +
'<div id="lang_list" style="display:none; position:absolute;top:25px; left:0px;"></div>' +
'<textarea class="comment_content" name="comment_content" id="comment_content" style="width: 400px; height: 200px;"></textarea>' +
'</li></ul>' +
//'<ul id="panel_verifycode" style="display:none;"><li class="left">验 证 码:</li>'+
//'<li class="right"><span></span> <a id="a_verifycode" href="#verifycode">看不清,换一张</a><br />'+
//'<input type="text" id="comment_verifycode" id="comment_verifycode" style="width: 60px;" /></li></ul>'+
'<ul><input type="hidden" id="comment_replyId" name="comment_replyId" />' +
'<input type="hidden" id="comment_userId" name="comment_userId" value="521203" />' +
'<input type="hidden" id="commentId" name="commentId" value="" />' +
'<input type="submit" class="comment_btn" value="提交" />&nbsp;&nbsp;<span id="tip_comment" style="color: Red; display: none;"></span>' +
'</ul></div></form>';
$("#comment_form").html(html);
} else {
var curl = encodeURIComponent(location.href);
$("#comment_form").html('<div class="guest_link">您还没有登录,请' +
'<a href="http://passport.csdn.net/account/login?from=' + curl + '">[登录]</a>或' +
'<a href="http://passport.csdn.net/account/register?from=' + curl + '">[注册]</a></div>');
}
var editorId = "#comment_content";
editor = $(editorId);
var verifycodeId = "#img_verifycode";
var editor_inter = null;
if (editor.length > 0) {
var v = ["html", "javascript", "css", "php", "csharp", "cpp", "java", "python", "ruby", "vb", "delphi", "sql", "plain"];
var k = ["HTML/XML", "JavaScript", "CSS", "PHP", "C#", "C++", "Java", "Python", "Ruby", "Visual Basic", "Delphi", "SQL", "其它"];
for (var i = 0; i < v.length; i++) {
$("#lang_list").append('<a href="#' + v[i] + '">' + k[i] + '</a>')
}
editor.focus(function () {
editor_inter = setInterval(function () {
commentTip("还能输入" + (1000 - editor.val().length) + "个字符");
}, 200);
}).blur(function () {
if (editor_inter) clearInterval(editor_inter);
});
}
//加载列表
var listId = "#comment_list";
loadList();
function noComments() {
$(listId).html('<br />&nbsp;&nbsp;暂无评论<br /><br /><div class="clear"></div>');
}
function loadList(pageIndex) {
if (commentscount == 0) {
noComments();
return;
}
pageIndex = parseInt(pageIndex) || 1;
$("#comments_bar").html("正在加载评论...")
$.get("../../comment/list/" + fileName + "?page=" + (pageIndex || 1) + "&_" + Math.random(), function (json) {
if (json == "") {
noComments();
return;
}
var data = eval("(" + json + ")");
var list = data.list;
var listHtml = '';
//构造主题
var topics = getTopics(list);
//组装HTM
for (var i = 0; i < topics.length; i++) {
var comment = topics[i];
var layer = data.page.RecordCount > 0 ? (data.page.RecordCount - (pageIndex - 1) * data.page.PageSize - i) : topics.length - i;
listHtml += getItemHtml(comment, layer);
};
//输出列表
listHtml += '<div class="clear"></div>';
if (pageIndex == 1) {
$(listId).html(listHtml);
} else {
$(listId).append(listHtml);
}
dp.SyntaxHighlighter.HighlightAll('code2');
//分页处理
if (data.page.RecordCount == 0 || (data.page.RecordCount > 0 && data.page.PageSize != topics.length)) {
$("#comment_bar").html("").hide();
} else {
$("#comment_bar").html('<div id="load_comments" page="' + (pageIndex + 1) + '">查看更多评论</div>')
//$(listId).append(getPageHtml(data.page.PageIndex, data.page.PageSize, data.page.RecordCount));
//setPageAction();
}
$("#load_comments").click(function () {
var page = $(this).attr("page");
loadList(page);
});
//评论按钮点击
$(".comment_head a").click(function () {
var action = $(this).attr("href");
action = action.substring(action.lastIndexOf('#'));
var commentId = $(this).parent().attr("commentid");
switch (action) {
case "#reply":
if (currentUserName) {
commentId = $(".comment_manage", $(this).parent()).attr("commentid");
replyComment(commentId, list);
editor.focus();
}
return true;
case "#quote":
if (currentUserName) {
quoteComment(commentId, list);
editor.focus();
}
return true;
case "#report":
reportComment(commentId, this);
break;
case "#delete":
deleteComment(commentId);
break;
default:
return true;
}
return false;
});
$(".comment_item").mouseover(function () {
$(".comment_manage", $(this)).eq(0).show();
}).mouseout(function () {
$(".comment_manage", $(this)).eq(0).hide();
});
});
};
//获取评论主题
function getTopics(list) {
var topics = [];
for (var i = 0; i < list.length; i++) {
var t = list[i];
if (t.ParentId === 0) {
t.Replies = getReplies(t, list);
topics.push(t);
}
}
return topics;
}
//获取评论回复
function getReplies(topic, list) {
var replies = [];
for (var i = 0; i < list.length; i++) {
var r = list[i];
if (r.ParentId == topic.CommentId) {
r.Replies = getReplies(r, list);
replies.push(r);
}
}
return replies;
}
//获取评论的HTML
function getItemHtml(comment, index, floor) {
var html = '<dl class="comment_item comment_' + (comment.ParentId > 0 ? "reply" : "topic") + '" id="comment_item_{id}">' +
'<dt class="comment_head" floor=' + (floor || index) + '>' + (comment.ParentId > 0 ? "Re:" : /*'<a name="comment'+comment.CommentId+'">'+*/index + '楼') + ' <span class="user">';
if (comment.UserName != null && comment.UserName != '')
html += '<a class="username" href="/' + comment.UserName + '" target="_blank">' + comment.UserName + '</a>';
else
html += '[游客]';
html += " <span class='ptime'>" + comment.PostTime + "发表</span> ";
html += ' <a href="#reply" class="cmt_btn reply" title="回复">[回复]</a> <span class="comment_manage" style="display:none;" commentid={id} username={username}> <a href="#quote" class="cmt_btn quote" title="引用">[引用]</a> <a href="#report" class="cmt_btn report" title="举报">[举报]</a>';
if (username == currentUserName || comment.UserName == currentUserName) html += ' <a href="#delete" class="cmt_btn delete" title="删除">[删除]</a>';
html += '</span></dt>';
html += '<dd class="comment_userface"><a href="/' + comment.UserName + '" target="_blank"><img src="' + comment.Userface + '" width="40" height="40" /></a></dd>';
html += '<dd class="comment_body">' + replaceUBBToHTML(comment) + '</dd>';
html = html.replace(/\{id\}/g, comment.CommentId).replace(/\{username\}/g, comment.UserName);
if (comment.Replies != null) {
for (var j = 0; j < comment.Replies.length; j++) {
html += getItemHtml(comment.Replies[j], j + 1, index);
}
}
html += "</dl>";
return html;
}
//获取评论对象
function getComment(commentId, list) {
for (var i = 0; i < list.length; i++) {
var comment = list[i];
if (comment.CommentId == commentId)
return comment;
}
return null;
}
//引用评论
function quoteComment(commentId, list) {
var comment = getComment(commentId, list);
var content = comment.Content;
if (comment.Content.length > 50) {
content = comment.Content.substring(0, 50) + "...";
}
editor.val("[quote=" + (comment.UserName == null ? "游客" : comment.UserName) + "]" + content + "[/quote]\r\n");
}
//回复评论
function replyComment(commentId, list) {
var comment = getComment(commentId, list);
editor.val('[reply]' + comment.UserName + "[/reply]\r\n");
$("#comment_replyId").val(commentId);
}
//举报评论
function reportComment(commentId, e) {
report(commentId, 3, e);
}
//删除评论
function deleteComment(commentId) {
if (!confirm("你确定要删除这篇评论吗?")) return;
$.get(blog_address + "/comment/delete?commentid=" + commentId + "&filename=" + fileName, function (data) {
if (data.result == 1) {
$("#comment_item_" + commentId).hide().remove();
}
else {
alert("你没有删除该评论的权限!");
}
});
}
//替换评论的UBB代码
function replaceUBBToHTML(comment) {
var content = $.trim(comment.Content);
var re = /\[code=([\w#\.]+)\]([\s\S]*?)\[\/code\]/ig;
var codelist = [];
while ((mc = re.exec(content)) != null) {
codelist.push(mc[0]);
content = content.replace(mc[0], "--code--");
}
content = replaceQuote(content);
content = content.replace(/\[e(\d+)\]/g, "<img src=\"" + static_host + "/images/emotions/e$1.gif\"\/>");
//var emotions = ["顶","砸","棒","大笑","愤怒","大哭","疑问","汗","呕吐","送花"];
//content = content.replace(/\[e(\d+)\]/g, function(m0,m1){return "["+emotions[parseInt(m1)+1]+"]"});
//content = content.replace(/\[reply]([\s\S]*?)\[\/reply\]/gi, '<p><a href="#comment'+comment.ParentId+'">@@</a>$1:<br /></p>');
content = content.replace(/\[reply]([\s\S]*?)\[\/reply\](\n)?/gi, "回复$1");
content = content.replace(/\[url=([^\]]+)]([\s\S]*?)\[\/url\]/gi, '<a href="$1" target="_blank">$2</a>');
content = content.replace(/\[img(=([^\]]+))?]([\s\S]*?)\[\/img\]/gi, '<img src="$3" style="max-width:400px;max-height:200px;" border="0" title="$2" />');
content = content.replace(/\[(\/?)(b|i|u|p)\]/ig, "<$1$2>");
content = content.replace(/\n/ig, "<br />");
if (codelist.length > 0) {
var re1 = /--code--/ig;
var i = 0;
while ((mc = re1.exec(content)) != null) {
content = content.replace(mc[0], codelist[i]);
i++;
}
}
content = content.replace(/\[code=([\w#\.]+)\]([\s\S]*?)\[\/code\]/ig, function (m0, m1, m2) { if ($.trim(m2) == "") return ''; return '<pre name="code2" class="' + m1 + '">' + m2 + '</pre>' });
return content;
}
//替换评论的引用
function replaceQuote(str) {
var m = /\[quote=([^\]]+)]([\s\S]*)\[\/quote\]/gi.exec(str);
if (m) {
return str.replace(m[0], '<fieldset><legend>引用“' + m[1] + '”的评论:</legend>' + replaceQuote(m[2]) + '</fieldset>');
} else {
return str;
}
}
//加载编辑器
//激活验证码
//editor.focus(function(){
// loadVerifyCode();
//});
//更换验证码
//$("#a_verifycode").unbind("click").click(refreshVerifyCode);
//添加表情
/*$("#emotions img").click(function () {
appendToEditor("[" + $(this).attr("code") + "]");
});*/
//ubb按钮事件
$("#ubbtools").children().click(function () {
var selectedValue = editor.selection();
editor.focus();
var code = $(this).attr("code");
switch (code) {
/*case "indent":
editor.val("\t" + selectedValue);
break;
case "url":
var title = prompt("链接标题:","");
var link = prompt("链接地址:", "http://");
editor.val("[url=" + link + "]" + title + "[/url]");
break;*/
case "code":
var lang_list = $("#lang_list");
lang_list.show();
lang_list.children().each(function () {
$(this).unbind("click").click(function () {
editor.val("[code=" + $.trim(this.href.split('#')[1]) + "]\n" + selectedValue + "\n[/code]");
lang_list.hide();
});
});
editor.click(function (e) {
lang_list.hide();
});
break;
default:
editor.val("[" + code + "]" + selectedValue + "[/" + code + "]");
break;
}
return false;
});
//提交事件
var c_doing = false;
$("#comment_form > form").submit(function () {
if (c_doing) return false;
var content = $.trim($(editorId).val());
if (content == "") {
commentTip("评论内容没有填写!");
return false;
} else if (content.length > 1000) {
commentTip("评论内容太长了不能超过1000个字符");
return false;
}
/*if($(verifycodeId).length == 0)
{
loadVerifyCode();
return false;
}*/
var commentId = $("#commentId").val();
commentTip("正在发表评论...");
var beginTime = new Date();
$(editorId).attr("disabled", true);
$("button[type=submit]", this).attr("disabled", true);
c_doing = true;
$.ajax({
type: "POST",
url: $(this).attr("action"),
data: {
"commentid": commentId,
"content": content,
"replyId": $("#comment_replyId").val()
//"VerifyCode": $("#comment_verifycode").val()
},
success: function (data) {
c_doing = false;
commentTip(data.content);
if (data.result) {
$(editorId).val('');
$("#comment_replyId,#comment_verifycode").val('');
//refreshVerifyCode();
commentscount++;
loadList();
$(editorId).attr("disabled", false);
$("button[type=submit]", this).attr("disabled", false);
commentTip("发表成功!评论耗时:" + (new Date() - beginTime) + "毫秒")
}
}
});
return false;
});
//操作提示
var t;
function commentTip(message) {
$("#tip_comment").html(message).show();
clearTimeout(t);
t = setTimeout(function () {
$("#tip_comment").hide();
}, 10000);
}
/*function loadVerifyCode() {
$("#panel_verifycode").show();
var img = $(verifycodeId);
if(img.length == 0){
$("#panel_verifycode span").html('<img id="img_verifycode" border="0" />');
refreshVerifyCode();
}
}
function refreshVerifyCode(){
$(verifycodeId).attr('src',blog_address + "/common/verifycode?r=" + Math.random())
}*/
});

View File

@@ -0,0 +1,192 @@
$(document).ready(function () {
$("#btnSubmit").click(function () {
var key = $("#inputSearch").val();
if (key == "") {
alert("请输入搜索关键字");
$("#inputSearch").focus();
return false;
}
$("#inputQ").val('blog:' + username + ' ' + key);
return true;
});
initDigg();
initArchives();
initShareButtons();
function initArchives() {
var shortlist = '';
var hidelist = '';
var list = $("#archive_list");
list.children().each(function (i) {
if (i < 5)
shortlist += "<li>" + $(this).html() + "</li>";
else
hidelist += "<li>" + $(this).html() + "</li>";
});
if (hidelist == '') return;
hidelist = '<span class="hidelist" style="display:none;">' + hidelist + '</span>';
list.html(shortlist + hidelist + '<div id="archive_list_button" class="list_closed">展开</div>');
$("#archive_list_button").toggle(function () {
$(this).html("收起");
$(this).removeClass("list_closed").addClass("list_opended");
$(".hidelist", list).show();
}, function () {
$(this).html("展开");
$(this).removeClass("list_opended").addClass("list_closed");
$(".hidelist", list).hide();
});
}
function initShareButtons() {
var panel = $("#sharePanel");
if (panel.length == 0) return;
var url = encodeURIComponent(document.location);
var title = encodeURIComponent(document.title);
var shareto = {
"sina": function () {
var _u = 'http://v.t.sina.com.cn/share/share.php?url=' + url + '&title=' + title;
var imgs = $(".article_content img");
if (imgs.length > 0) {
_u += "&pic=" + encodeURIComponent(imgs[0].src);
}
openWindow(_u);
},
"qq": function () {
var _site = 'http://blog.csdn.net';
var _u = 'http://v.t.qq.com/share/share.php?url=' + url + '&site=' + _site + '&title=' + title;
var imgs = $(".article_content img");
if (imgs.length > 0) {
_u += "&pic=" + encodeURIComponent(imgs[0].src);
}
openWindow(_u);
}
};
$("#sharePanel").html('<span>分享到:</span> <a name="sina" class="share_sina" title="分享到新浪微博"></a><a name="qq" class="share_qq" title="分享到腾讯微博"></a>');
$("#sharePanel a").each(function () {
var name = $(this).attr("name");
if (!name) return;
$(this).click(function () {
shareto[name]();
return false;
});
});
}
function initDigg() {
var diggdiv = $("#digg");
if (diggdiv.length > 0) {
var articleId = diggdiv.attr("ArticleId");
$("#btnDigg,#btnBury").click(function () {
var me = $(this);
var className = me.attr("class").replace("digg digg_", "");
if (className == "enable") {
var id = me.attr("id");
var action = id == "btnDigg" ? "digg" : "bury";
$.get(blog_address + "/article/" + action + "?ArticleId=" + articleId, function () {
$("#btnDigg,#btnBury").unbind("click").removeClass("digg_enable").addClass("digg_disable");
var val = parseInt($.trim($("dd", me).html()));
val++;
$("dd", me).html(val);
var digged = [];
var tmp = $.cookie("digged");
if (tmp) { digged = tmp.split(','); }
digged.push(articleId);
$.cookie("digged", digged.join());
});
} else {
$(this).unbind("click");
}
});
}
}
function initBodyHeight() {
var siderHeight = $("#sider").height();
var mainHeight = $("#main").height();
if (siderHeight > mainHeight) {
$("#body").height(siderHeight);
}
else {
$("#body").height(mainHeight + 100);
}
}
});
function collectArticle(title, fileName) {
openWindow("http://wz.csdn.net/storeit.aspx?t=" + encodeURIComponent(title) + "&u=" + blog_address + "/article/details/" + fileName, title);
}
function untopArticle(articleId) {
if (!confirm("你确定要取消置顶这篇文章吗?")) return;
$.get(blog_address + "/article/untop?articleId=" + articleId, function (txt) {
var data = eval("(" + txt + ")");
if (data.result) {
alert("文章已取消置顶!");
location.reload();
} else {
if (data.content)
alert(data.content);
else
alert("无法取消置顶,请到后台操作!");
}
});
}
function deleteArticle(articleId) {
if(!confirm("你确定要删除这篇文章吗?")) return;
$.get(blog_address + "/article/delete?articleId=" + articleId, function (txt) {
var data = eval("(" + txt + ")");
if (data.result) {
alert("文章已删除!");
location.reload();
} else {
if (data.content)
alert(data.content);
else
alert("无法删除,请到后台删除!");
}
});
}
function openWindow(url, title) {
var _t = title || encodeURI(document.title);
var _u = url || encodeURIComponent(document.location);
var f = function(){
var left = (screen.width - 600)/2;
var top = (screen.height - 450)/2;
if(!window.open(url,'','toolbar=0,resizable=1,scrollbars=yes,status=1,width=600,height=400'))
location.href = url;
}
if(/Firefox/.test(navigator.userAgent)) setTimeout(f,0); else f();
}
function report(id, t, e) {
//创建遮罩
$.createMask();
//加载对话框
var url = blog_address + "/common/report?id=" + id + "&t=" + t;
if (t == 3) {
var floor = e.parentNode.parentNode.parentNode.getAttribute('floor');
url += "&floor=" + floor;
}
var top = (document.documentElement.clientHeight - 400) / 2 + (document.documentElement.scrollTop || document.body.scrollTop);
var left = (document.documentElement.clientWidth - 400) / 2;
$("#report_dialog").load(url).css({ "top": top + "px", "left": left }).show();
}
function getCalendar(time) {
$("#calendar").load(blog_address + "/Article/Calendar?time=" + time + "&.calendar");
return false;
};

View File

@@ -0,0 +1 @@
document.write('<script type="text/javascript" charset="UTF-8" src="http://message.csdn.net/msg.popup.js"><'+'/script>');

View File

@@ -0,0 +1,112 @@
.dp-highlighter { font-family: "Consolas" , "Courier New" , Courier, mono, serif; font-size: 12px; background-color: #E7E5DC; width: 99%; overflow: auto; margin: 18px 0 18px 0 !important; padding-top: 1px; /* adds a little border on top when controls are hidden */ }
/* clear styles */
.dp-highlighter ol, .dp-highlighter ol li, .dp-highlighter ol li span { margin: 0; padding: 0; border: none; }
.dp-highlighter a, .dp-highlighter a:hover { background: none; border: none; padding: 0; margin: 0; }
.dp-highlighter .bar { padding-left: 45px; }
.dp-highlighter.collapsed .bar, .dp-highlighter.nogutter .bar { padding-left: 0px; }
.dp-highlighter ol { list-style: decimal; /* for ie */ background-color: #fff; margin: 0px 0px 1px 45px !important; /* 1px bottom margin seems to fix occasional Firefox scrolling */ padding: 0px; color: #5C5C5C; }
.dp-highlighter.nogutter ol, .dp-highlighter.nogutter ol li { list-style: none !important; margin-left: 0px !important; }
.dp-highlighter ol li, .dp-highlighter .columns div { list-style: decimal-leading-zero; /* better look for others, override cascade from OL */ list-style-position: outside !important; border-left: 3px solid #6CE26C; background-color: #F8F8F8; color: #5C5C5C; padding: 0 3px 0 10px !important; margin: 0 !important; line-height: 150%; }
.dp-highlighter.nogutter ol li, .dp-highlighter.nogutter .columns div { border: 0; }
.dp-highlighter .columns { background-color: #F8F8F8; color: gray; overflow: hidden; width: 100%; }
.dp-highlighter .columns div { padding-bottom: 5px; }
.dp-highlighter ol li.alt { background-color: #FFF; color: inherit; }
.dp-highlighter ol li span { color: black; background-color: inherit; }
/* Adjust some properties when collapsed */
.dp-highlighter.collapsed ol { margin: 0px; }
.dp-highlighter.collapsed ol li { display: none; }
/* Additional modifications when in print-view */
.dp-highlighter.printing { border: none; }
.dp-highlighter.printing .tools { display: none !important; }
.dp-highlighter.printing li { display: list-item !important; }
/* Styles for the tools */
.dp-highlighter .tools { padding: 3px 8px 3px 10px; font: 9px Verdana, Geneva, Arial, Helvetica, sans-serif; color: silver; background-color: #f8f8f8; padding-bottom: 10px; border-left: 3px solid #6CE26C; }
.dp-highlighter.nogutter .tools { border-left: 0; }
.dp-highlighter.collapsed .tools { border-bottom: 0; }
.dp-highlighter .tools a { font-size: 9px; color: #a0a0a0; background-color: inherit; text-decoration: none; margin-right: 10px; }
.dp-highlighter .tools a:hover { color: red; background-color: inherit; text-decoration: underline; }
/* About dialog styles */
.dp-about { background-color: #fff; color: #333; margin: 0px; padding: 0px; }
.dp-about table { width: 100%; height: 100%; font-size: 11px; font-family: Tahoma, Verdana, Arial, sans-serif !important; }
.dp-about td { padding: 10px; vertical-align: top; }
.dp-about .copy { border-bottom: 1px solid #ACA899; height: 95%; }
.dp-about .title { color: red; background-color: inherit; font-weight: bold; }
.dp-about .para { margin: 0 0 4px 0; }
.dp-about .footer { background-color: #ECEADB; color: #333; border-top: 1px solid #fff; text-align: right; }
.dp-about .close { font-size: 11px; font-family: Tahoma, Verdana, Arial, sans-serif !important; background-color: #ECEADB; color: #333; width: 60px; height: 22px; }
/* Language specific styles */
.dp-highlighter .comment, .dp-highlighter .comments { color: #008200; background-color: inherit; }
.dp-highlighter .string { color: blue; background-color: inherit; }
.dp-highlighter .keyword { color: #069; font-weight: bold; background-color: inherit; }
.dp-highlighter .preprocessor { color: gray; background-color: inherit; }
/*xml*/
.dp-xml .cdata { color: #ff1493; }
.dp-xml .tag, .dp-xml .tag-name { color: #993300; font-weight: bold; }
.dp-xml .attribute { color: red; }
.dp-xml .attribute-value { color: blue; }
/*sql*/
.dp-sql .func { color: #ff1493; }
.dp-sql .op { color: #808080; }
/*ruby*/
.dp-rb .symbol { color: #a70; }
.dp-rb .variable { color: #a70; font-weight: bold; }
/*python*/
.dp-py .builtins { color: #ff1493; }
.dp-py .magicmethods { color: #808080; }
.dp-py .exceptions { color: brown; }
.dp-py .types { color: brown; font-style: italic; }
.dp-py .commonlibs { color: #8A2BE2; font-style: italic; }
/*java*/
.dp-j .annotation { color: #646464; }
.dp-j .number { color: #C00000; }
/*delphi*/
.dp-delphi .number { color: blue; }
.dp-delphi .directive { color: #008284; }
.dp-delphi .vars { color: #000; }
/*css*/
.dp-css .value { color: black; }
.dp-css .important { color: red; }
/*csharp*/
.dp-c .vars { color: #d00; }
/*cpp*/
.dp-cpp .datatypes { color: #2E8B57; font-weight: bold; }
/*tools image*/
.dp-highlighter .bar a { background-repeat:no-repeat; background-position:left top; display:inline-block; width:16px; height:16px; padding:1px; text-indent:-2000px; _width:0px; _overflow:hidden; _padding-left:16px; _text-indent:0px; }
.dp-highlighter .bar a:hover { border:solid 1px #ccc; text-decoration:none; padding:0px; background-repeat:no-repeat;_padding-left:16px;}
.dp-highlighter .bar a.ExpandSource {}
.dp-highlighter .bar a.ViewSource { background-image:url(images/default/ico_plain.gif); }
.dp-highlighter .bar a.CopyToClipboard { background-image:url(images/default/ico_copy.gif);}
.dp-highlighter .bar a.PrintSource { display:none; }
.dp-highlighter .bar a.About { display:none;}

View File

@@ -0,0 +1,60 @@
(function(){var g=void 0,i=!0,j=null,k=!1,aa=encodeURIComponent,ba=Infinity,fa=setTimeout,ga=decodeURIComponent,l=Math;function ha(a,b){return a.name=b}
var m="push",ia="test",ja="slice",o="replace",ka="load",la="floor",ma="charAt",na="value",q="indexOf",oa="match",pa="port",qa="createElement",ra="path",r="name",t="host",u="toString",v="length",w="prototype",sa="clientWidth",x="split",ta="stopPropagation",ua="scope",y="location",va="search",z="protocol",wa="clientHeight",xa="href",A="substring",ya="apply",za="navigator",B="join",C="toLowerCase",D;function Aa(a,b){switch(b){case 0:return""+a;case 1:return 1*a;case 2:return!!a;case 3:return 1E3*a}return a}function Ba(a){return"function"==typeof a}function Ca(a){return a!=g&&-1<(a.constructor+"")[q]("String")}function E(a,b){return g==a||"-"==a&&!b||""==a}function Da(a){if(!a||""==a)return"";for(;a&&-1<" \n\r\t"[q](a[ma](0));)a=a[A](1);for(;a&&-1<" \n\r\t"[q](a[ma](a[v]-1));)a=a[A](0,a[v]-1);return a}
function F(a){var b=1,c=0,d;if(!E(a)){b=0;for(d=a[v]-1;0<=d;d--)c=a.charCodeAt(d),b=(b<<6&268435455)+c+(c<<14),c=b&266338304,b=0!=c?b^c>>21:b}return b}function Ea(){return l.round(2147483647*l.random())}function Fa(){}function G(a,b){if(aa instanceof Function)return b?encodeURI(a):aa(a);H(68);return escape(a)}function I(a){a=a[x]("+")[B](" ");if(ga instanceof Function)try{return ga(a)}catch(b){H(17)}else H(68);return unescape(a)}
var Ga=function(a,b,c,d){a.addEventListener?a.addEventListener(b,c,!!d):a.attachEvent&&a.attachEvent("on"+b,c)},Ha=function(a,b,c,d){a.removeEventListener?a.removeEventListener(b,c,!!d):a.detachEvent&&a.detachEvent("on"+b,c)};function Ia(a,b){if(a){var c=J[qa]("script");c.type="text/javascript";c.async=i;c.src=a;c.id=b;var d=J.getElementsByTagName("script")[0];d.parentNode.insertBefore(c,d);return c}}function K(a){return a&&0<a[v]?a[0]:""}function Ja(a){var b=a?a[v]:0;return 0<b?a[b-1]:""}
var Ka=function(){this.prefix="ga.";this.R={}};Ka[w].set=function(a,b){this.R[this.prefix+a]=b};Ka[w].get=function(a){return this.R[this.prefix+a]};Ka[w].contains=function(a){return this.get(a)!==g};function La(a){0==a[q]("www.")&&(a=a[A](4));return a[C]()}function Ma(a,b){var c,d={url:a,protocol:"http",host:"",path:"",d:new Ka,anchor:""};if(!a)return d;c=a[q]("://");0<=c&&(d.protocol=a[A](0,c),a=a[A](c+3));c=a[va]("/|\\?|#");if(0<=c)d.host=a[A](0,c)[C](),a=a[A](c);else return d.host=a[C](),d;c=a[q]("#");0<=c&&(d.anchor=a[A](c+1),a=a[A](0,c));c=a[q]("?");0<=c&&(Na(d.d,a[A](c+1)),a=a[A](0,c));d.anchor&&b&&Na(d.d,d.anchor);a&&"/"==a[ma](0)&&(a=a[A](1));d.path=a;return d}
function Oa(a,b){function c(a){var b=(a.hostname||"")[x](":")[0][C](),c=(a[z]||"")[C](),c=1*a[pa]||("http:"==c?80:"https:"==c?443:""),a=a.pathname||"";0==a[q]("/")||(a="/"+a);return[b,""+c,a]}var d=b||J[qa]("a");d.href=J[y][xa];var e=(d[z]||"")[C](),f=c(d),h=d[va]||"",n=e+"//"+f[0]+(f[1]?":"+f[1]:"");0==a[q]("//")?a=e+a:0==a[q]("/")?a=n+a:!a||0==a[q]("?")?a=n+f[2]+(a||h):0>a[x]("/")[0][q](":")&&(a=n+f[2][A](0,f[2].lastIndexOf("/"))+"/"+a);d.href=a;e=c(d);return{protocol:(d[z]||"")[C](),host:e[0],
port:e[1],path:e[2],Na:d[va]||"",url:a||""}}function Na(a,b){function c(b,c){a.contains(b)||a.set(b,[]);a.get(b)[m](c)}for(var d=Da(b)[x]("&"),e=0;e<d[v];e++)if(d[e]){var f=d[e][q]("=");0>f?c(d[e],"1"):c(d[e][A](0,f),d[e][A](f+1))}}function Pa(a,b){if(E(a)||"["==a[ma](0)&&"]"==a[ma](a[v]-1))return"-";var c=J.domain;return a[q](c+(b&&"/"!=b?b:""))==(0==a[q]("http://")?7:0==a[q]("https://")?8:0)?"0":a};var Qa=0;function Ra(a,b,c){!(1<=Qa)&&!(1<=100*l.random())&&(a=["utmt=error","utmerr="+a,"utmwv=5.3.3","utmn="+Ea(),"utmsp=1"],b&&a[m]("api="+b),c&&a[m]("msg="+G(c[A](0,100))),L.w&&a[m]("aip=1"),Ta(a[B]("&")),Qa++)};var Ua=0,Va={};function M(a){return Wa("x"+Ua++,a)}function Wa(a,b){Va[a]=!!b;return a}
var N=M(),Xa=M(),Ya=M(),Za=M(),$a=M(),O=M(),P=M(),ab=M(),bb=M(),cb=M(),db=M(),eb=M(),fb=M(),gb=M(),hb=M(),ib=M(),jb=M(),kb=M(),lb=M(),mb=M(),nb=M(),ob=M(),pb=M(),qb=M(),rb=M(),sb=M(),tb=M(),ub=M(),vb=M(),wb=M(),xb=M(),yb=M(),zb=M(),Ab=M(),Bb=M(),Q=M(i),Cb=Wa("currencyCode"),Db=Wa("page"),Eb=Wa("title"),Fb=M(),Gb=M(),Hb=M(),Ib=M(),Jb=M(),Kb=M(),Lb=M(),Mb=M(),Nb=M(),R=M(i),Ob=M(i),Rb=M(i),Sb=M(i),Tb=M(i),Ub=M(i),Vb=M(i),Wb=M(i),Xb=M(i),Yb=M(i),Zb=M(i),S=M(i),$b=M(i),ac=M(i),bc=M(i),cc=M(i),dc=M(i),
ec=M(i),fc=M(i),gc=M(i),hc=M(i),ic=M(i),jc=M(i),kc=M(i),lc=M(i),mc=Wa("campaignParams"),nc=M(),oc=Wa("hitCallback"),pc=M();M();var qc=M(),rc=M(),sc=M(),tc=M(),uc=M(),vc=M(),wc=M(),xc=M(),yc=M(),zc=M(),Dc=M(),Ec=M();M();var Fc=M(),Gc=M(),Hc=M();function Ic(a){var b=this.plugins_;if(b)return b.get(a)}var T=function(a,b,c,d){a[b]=function(){try{return d!=g&&H(d),c[ya](this,arguments)}catch(a){throw Ra("exc",b,a&&a[r]),a;}}},Jc=function(a,b,c,d){U[w][a]=function(){try{return H(c),Aa(this.a.get(b),d)}catch(e){throw Ra("exc",a,e&&e[r]),e;}}},V=function(a,b,c,d,e){U[w][a]=function(f){try{H(c),e==g?this.a.set(b,Aa(f,d)):this.a.set(b,e)}catch(h){throw Ra("exc",a,h&&h[r]),h;}}};var Kc=RegExp(/(^|\.)doubleclick\.net$/i),Lc=function(a,b){return Kc[ia](J[y].hostname)?i:"/"!==b?k:(0==a[q]("www.google.")||0==a[q](".google.")||0==a[q]("google."))&&!(-1<a[q]("google.org"))?i:k},Mc=function(a){var b=a.get($a),c=a.c(P,"/");Lc(b,c)&&a[ta]()};var Rc=function(){var a={},b={},c=new Nc;this.i=function(a,b){c.add(a,b)};var d=new Nc;this.e=function(a,b){d.add(a,b)};var e=k,f=k,h=i;this.T=function(){e=i};this.j=function(a){this[ka]();this.set(nc,a,i);a=new Oc(this);e=k;d.execute(this);e=i;b={};this.n();a.Ia()};this.load=function(){e&&(e=k,this.Ja(),Pc(this),f||(f=i,c.execute(this),Qc(this),Pc(this)),e=i)};this.n=function(){if(e)if(f)e=k,Qc(this),e=i;else this[ka]()};this.get=function(c){Va[c]&&this[ka]();return b[c]!==g?b[c]:a[c]};this.set=
function(c,d,e){Va[c]&&this[ka]();e?b[c]=d:a[c]=d;Va[c]&&this.n()};this.z=function(b){a[b]=this.b(b,0)+1};this.b=function(a,b){var c=this.get(a);return c==g||""===c?b:1*c};this.c=function(a,b){var c=this.get(a);return c==g?b:c+""};this.Ja=function(){if(h){var b=this.c($a,""),c=this.c(P,"/");Lc(b,c)||(a[O]=a[fb]&&""!=b?F(b):1,h=k)}}};Rc[w].stopPropagation=function(){throw"aborted";};
var Oc=function(a){var b=this;this.q=0;var c=a.get(oc);this.Ta=function(){0<b.q&&c&&(b.q--,b.q||c())};this.Ia=function(){!b.q&&c&&fa(c,10)};a.set(pc,b,i)};function Sc(a,b){for(var b=b||[],c=0;c<b[v];c++){var d=b[c];if(""+a==d||0==d[q](a+"."))return d}return"-"}
var Uc=function(a,b,c){c=c?"":a.c(O,"1");b=b[x](".");if(6!==b[v]||Tc(b[0],c))return k;var c=1*b[1],d=1*b[2],e=1*b[3],f=1*b[4],b=1*b[5];if(!(0<=c&&0<d&&0<e&&0<f&&0<=b))return H(110),k;a.set(R,c);a.set(Tb,d);a.set(Ub,e);a.set(Vb,f);a.set(Wb,b);return i},Vc=function(a){var b=a.get(R),c=a.get(Tb),d=a.get(Ub),e=a.get(Vb),f=a.b(Wb,1);b==g?H(113):NaN==b&&H(114);0<=b&&0<c&&0<d&&0<e&&0<=f||H(115);return[a.b(O,1),b!=g?b:"-",c||"-",d||"-",e||"-",f][B](".")},Wc=function(a){return[a.b(O,1),a.b(Zb,0),a.b(S,1),
a.b($b,0)][B](".")},Xc=function(a,b,c){var c=c?"":a.c(O,"1"),d=b[x](".");if(4!==d[v]||Tc(d[0],c))d=j;a.set(Zb,d?1*d[1]:0);a.set(S,d?1*d[2]:10);a.set($b,d?1*d[3]:a.get(Za));return d!=j||!Tc(b,c)},Yc=function(a,b){var c=G(a.c(Rb,"")),d=[],e=a.get(Q);if(!b&&e){for(var f=0;f<e[v];f++){var h=e[f];h&&1==h[ua]&&d[m](f+"="+G(h[r])+"="+G(h[na])+"=1")}0<d[v]&&(c+="|"+d[B]("^"))}return c?a.b(O,1)+"."+c:j},Zc=function(a,b,c){c=c?"":a.c(O,"1");b=b[x](".");if(2>b[v]||Tc(b[0],c))return k;b=b[ja](1)[B](".")[x]("|");
0<b[v]&&a.set(Rb,I(b[0]));if(1>=b[v])return i;b=b[1][x](-1==b[1][q](",")?"^":",");for(c=0;c<b[v];c++){var d=b[c][x]("=");if(4==d[v]){var e={};ha(e,I(d[1]));e.value=I(d[2]);e.scope=1;a.get(Q)[d[0]]=e}}return i},$c=function(a){var b;b=function(b,e){if(!E(a.get(b))){var f=a.c(b,""),f=f[x](" ")[B]("%20"),f=f[x]("+")[B]("%20");c[m](e+"="+f)}};var c=[];b(ec,"utmcid");b(ic,"utmcsr");b(gc,"utmgclid");b(hc,"utmdclid");b(fc,"utmccn");b(jc,"utmcmd");b(kc,"utmctr");b(lc,"utmcct");return(b=c[B]("|"))?[a.b(O,1),
a.b(ac,0),a.b(bc,1),a.b(cc,1),b][B]("."):""},ad=function(a,b,c){c=c?"":a.c(O,"1");b=b[x](".");if(5>b[v]||Tc(b[0],c))return a.set(ac,g),a.set(bc,g),a.set(cc,g),a.set(ec,g),a.set(fc,g),a.set(ic,g),a.set(jc,g),a.set(kc,g),a.set(lc,g),a.set(gc,g),a.set(hc,g),k;a.set(ac,1*b[1]);a.set(bc,1*b[2]);a.set(cc,1*b[3]);var d=b[ja](4)[B]("."),b=function(a){return(a=d[oa](a+"=(.*?)(?:\\|utm|$)"))&&2==a[v]?a[1]:g},c=function(b,c){c&&(c=e?I(c):c[x]("%20")[B](" "),a.set(b,c))};-1==d[q]("=")&&(d=I(d));var e="2"==b("utmcvr");
c(ec,b("utmcid"));c(fc,b("utmccn"));c(ic,b("utmcsr"));c(jc,b("utmcmd"));c(kc,b("utmctr"));c(lc,b("utmcct"));c(gc,b("utmgclid"));c(hc,b("utmdclid"));return i},Tc=function(a,b){return b?a!=b:!/^\d+$/[ia](a)};var Nc=function(){this.B=[]};Nc[w].add=function(a,b){this.B[m]({name:a,s:b})};Nc[w].execute=function(a){try{for(var b=0;b<this.B[v];b++)this.B[b].s.call(W,a)}catch(c){}};function bd(a){100!=a.get(sb)&&a.get(R)%1E4>=100*a.get(sb)&&a[ta]()}function cd(a){dd(a.get(N))&&a[ta]()}function ed(a){"file:"==J[y][z]&&a[ta]()}function fd(a){a.get(Eb)||a.set(Eb,J.title,i);a.get(Db)||a.set(Db,J[y].pathname+J[y][va],i)};var gd=new function(){var a=[];this.set=function(b){a[b]=i};this.Wa=function(){for(var b=[],c=0;c<a[v];c++)a[c]&&(b[l[la](c/6)]=b[l[la](c/6)]^1<<c%6);for(c=0;c<b[v];c++)b[c]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"[ma](b[c]||0);return b[B]("")+"~"}};function H(a){gd.set(a)};var W=window,J=document,dd=function(a){var b=W._gaUserPrefs;return b&&b.ioo&&b.ioo()||!!a&&W["ga-disable-"+a]===i},hd=function(a){for(var b=[],c=J.cookie[x](";"),a=RegExp("^\\s*"+a+"=\\s*(.*?)\\s*$"),d=0;d<c[v];d++){var e=c[d][oa](a);e&&b[m](e[1])}return b},X=function(a,b,c,d,e,f){e=dd(e)?k:Lc(d,c)?k:i;if(e){if(b&&0<=W[za].userAgent[q]("Firefox"))for(var b=b[o](/\n|\r/g," "),e=0,h=b[v];e<h;++e){var n=b.charCodeAt(e)&255;if(10==n||13==n)b=b[A](0,e)+"?"+b[A](e+1)}b&&2E3<b[v]&&(b=b[A](0,2E3),H(69));
a=a+"="+b+"; path="+c+"; ";f&&(a+="expires="+(new Date((new Date).getTime()+f)).toGMTString()+"; ");d&&(a+="domain="+d+";");J.cookie=a}};var id,jd,kd=function(){if(!id){var a={},b=W[za],c=W.screen;a.Q=c?c.width+"x"+c.height:"-";a.P=c?c.colorDepth+"-bit":"-";a.language=(b&&(b.language||b.browserLanguage)||"-")[C]();a.javaEnabled=b&&b.javaEnabled()?1:0;a.characterSet=J.characterSet||J.charset||"-";try{var d=J.documentElement,e=J.body,f=e&&e[sa]&&e[wa],b=[];d&&(d[sa]&&d[wa])&&("CSS1Compat"===J.compatMode||!f)?b=[d[sa],d[wa]]:f&&(b=[e[sa],e[wa]]);a.Va=b[B]("x")}catch(h){H(135)}id=a}},ld=function(){kd();for(var a=id,b=W[za],a=b.appName+
b.version+a.language+b.platform+b.userAgent+a.javaEnabled+a.Q+a.P+(J.cookie?J.cookie:"")+(J.referrer?J.referrer:""),b=a[v],c=W.history[v];0<c;)a+=c--^b++;return F(a)},md=function(a){kd();var b=id;a.set(Hb,b.Q);a.set(Ib,b.P);a.set(Lb,b.language);a.set(Mb,b.characterSet);a.set(Jb,b.javaEnabled);a.set(Nb,b.Va);if(a.get(gb)&&a.get(hb)){if(!(b=jd)){var c,d,e;d="ShockwaveFlash";if((b=(b=W[za])?b.plugins:g)&&0<b[v])for(c=0;c<b[v]&&!e;c++)d=b[c],-1<d[r][q]("Shockwave Flash")&&(e=d.description[x]("Shockwave Flash ")[1]);
else{d=d+"."+d;try{c=new ActiveXObject(d+".7"),e=c.GetVariable("$version")}catch(f){}if(!e)try{c=new ActiveXObject(d+".6"),e="WIN 6,0,21,0",c.AllowScriptAccess="always",e=c.GetVariable("$version")}catch(h){}if(!e)try{c=new ActiveXObject(d),e=c.GetVariable("$version")}catch(n){}e&&(e=e[x](" ")[1][x](","),e=e[0]+"."+e[1]+" r"+e[2])}b=e?e:"-"}jd=b;a.set(Kb,jd)}else a.set(Kb,"-")};var nd=function(a){if(Ba(a))this.s=a;else{var b=a[0],c=b.lastIndexOf(":"),d=b.lastIndexOf(".");this.g=this.h=this.l="";-1==c&&-1==d?this.g=b:-1==c&&-1!=d?(this.h=b[A](0,d),this.g=b[A](d+1)):-1!=c&&-1==d?(this.l=b[A](0,c),this.g=b[A](c+1)):c>d?(this.h=b[A](0,d),this.l=b[A](d+1,c),this.g=b[A](c+1)):(this.h=b[A](0,d),this.g=b[A](d+1));this.k=a[ja](1);this.Ka=!this.l&&"_require"==this.g;this.J=!this.h&&!this.l&&"_provide"==this.g}},Y=function(){T(Y[w],"push",Y[w][m],5);T(Y[w],"_getPlugin",Ic,121);T(Y[w],
"_createAsyncTracker",Y[w].Ra,33);T(Y[w],"_getAsyncTracker",Y[w].Sa,34);this.I=new Ka;this.p=[]};D=Y[w];D.Ma=function(a,b,c){var d=this.I.get(a);if(!Ba(d))return k;b.plugins_=b.plugins_||new Ka;b.plugins_.set(a,new d(b,c||{}));return i};D.push=function(a){var b=Z.Ua[ya](this,arguments),b=Z.p.concat(b);for(Z.p=[];0<b[v]&&!Z.O(b[0])&&!(b.shift(),0<Z.p[v]););Z.p=Z.p.concat(b);return 0};D.Ua=function(a){for(var b=[],c=0;c<arguments[v];c++)try{var d=new nd(arguments[c]);d.J?this.O(d):b[m](d)}catch(e){}return b};
D.O=function(a){try{if(a.s)a.s[ya](W);else if(a.J)this.I.set(a.k[0],a.k[1]);else{var b="_gat"==a.h?L:"_gaq"==a.h?Z:L.u(a.h);if(a.Ka){if(!this.Ma(a.k[0],b,a.k[2])){if(!a.Oa){var c=Oa(""+a.k[1]);var d=c[z],e=J[y][z];var f;if(f="https:"==d||d==e?i:"http:"!=d?k:"http:"==e){var h;a:{var n=Oa(J[y][xa]);if(!(c.Na||0<=c.url[q]("?")||0<=c[ra][q]("://")||c[t]==n[t]&&c[pa]==n[pa]))for(var p="http:"==c[z]?80:443,s=L.S,b=0;b<s[v];b++)if(c[t]==s[b][0]&&(c[pa]||p)==(s[b][1]||p)&&0==c[ra][q](s[b][2])){h=i;break a}h=
k}f=h&&!dd()}f&&(a.Oa=Ia(c.url))}return i}}else a.l&&(b=b.plugins_.get(a.l)),b[a.g][ya](b,a.k)}}catch(Sa){}};D.Ra=function(a,b){return L.r(a,b||"")};D.Sa=function(a){return L.u(a)};var qd=function(){function a(a,b,c,d){g==f[a]&&(f[a]={});g==f[a][b]&&(f[a][b]=[]);f[a][b][c]=d}function b(a,b,c){if(g!=f[a]&&g!=f[a][b])return f[a][b][c]}function c(a,b){if(g!=f[a]&&g!=f[a][b]){f[a][b]=g;var c=i,d;for(d=0;d<h[v];d++)if(g!=f[a][h[d]]){c=k;break}c&&(f[a]=g)}}function d(a){var b="",c=k,d,e;for(d=0;d<h[v];d++)if(e=a[h[d]],g!=e){c&&(b+=h[d]);for(var c=[],f=g,da=g,da=0;da<e[v];da++)if(g!=e[da]){f="";da!=Pb&&g==e[da-1]&&(f+=da[u]()+Sa);for(var vd=e[da],Ac="",Qb=g,Bc=g,Cc=g,Qb=0;Qb<vd[v];Qb++)Bc=
vd[ma](Qb),Cc=ea[Bc],Ac+=g!=Cc?Cc:Bc;f+=Ac;c[m](f)}b+=n+c[B](s)+p;c=k}else c=i;return b}var e=this,f=[],h=["k","v"],n="(",p=")",s="*",Sa="!",ea={"'":"'0"};ea[p]="'1";ea[s]="'2";ea[Sa]="'3";var Pb=1;e.Qa=function(a){return g!=f[a]};e.A=function(){for(var a="",b=0;b<f[v];b++)g!=f[b]&&(a+=b[u]()+d(f[b]));return a};e.Pa=function(a){if(a==g)return e.A();for(var b=a.A(),c=0;c<f[v];c++)g!=f[c]&&!a.Qa(c)&&(b+=c[u]()+d(f[c]));return b};e.f=function(b,c,d){if(!od(d))return k;a(b,"k",c,d);return i};e.o=function(b,
c,d){if(!pd(d))return k;a(b,"v",c,d[u]());return i};e.getKey=function(a,c){return b(a,"k",c)};e.N=function(a,c){return b(a,"v",c)};e.L=function(a){c(a,"k")};e.M=function(a){c(a,"v")};T(e,"_setKey",e.f,89);T(e,"_setValue",e.o,90);T(e,"_getKey",e.getKey,87);T(e,"_getValue",e.N,88);T(e,"_clearKey",e.L,85);T(e,"_clearValue",e.M,86)};function od(a){return"string"==typeof a}function pd(a){return"number"!=typeof a&&(g==Number||!(a instanceof Number))||l.round(a)!=a||NaN==a||a==ba?k:i};var rd=function(a){var b=W.gaGlobal;a&&!b&&(W.gaGlobal=b={});return b},sd=function(){var a=rd(i).hid;a==j&&(a=Ea(),rd(i).hid=a);return a},td=function(a){a.set(Gb,sd());var b=rd();if(b&&b.dh==a.get(O)){var c=b.sid;c&&("0"==c&&H(112),a.set(Vb,c),a.get(Ob)&&a.set(Ub,c));b=b.vid;a.get(Ob)&&b&&(b=b[x]("."),1*b[1]||H(112),a.set(R,1*b[0]),a.set(Tb,1*b[1]))}};var wd,xd=function(a,b,c){var d=a.c($a,""),e=a.c(P,"/"),f=a.b(ab,0),a=a.c(N,"");X(b,c,e,d,a,f)},Qc=function(a){var b=a.c($a,"");a.b(O,1);var c=a.c(P,"/"),d=a.c(N,"");X("__utma",Vc(a),c,b,d,a.get(ab));X("__utmb",Wc(a),c,b,d,a.get(bb));X("__utmc",""+a.b(O,1),c,b,d);var e=$c(a,i);e?X("__utmz",e,c,b,d,a.get(cb)):X("__utmz","",c,b,"",-1);(e=Yc(a,k))?X("__utmv",e,c,b,d,a.get(ab)):X("__utmv","",c,b,"",-1)},Pc=function(a){var b=a.b(O,1);if(!Uc(a,Sc(b,hd("__utma"))))return a.set(Sb,i),k;var c=!Xc(a,Sc(b,hd("__utmb")));
a.set(Yb,c);ad(a,Sc(b,hd("__utmz")));Zc(a,Sc(b,hd("__utmv")));wd=!c;return i},yd=function(a){!wd&&!(0<hd("__utmb")[v])&&(X("__utmd","1",a.c(P,"/"),a.c($a,""),a.c(N,""),1E4),0==hd("__utmd")[v]&&a[ta]())};var Bd=function(a){a.get(R)==g?zd(a):a.get(Sb)&&!a.get(Fc)?zd(a):a.get(Yb)&&Ad(a)},Cd=function(a){a.get(dc)&&!a.get(Xb)&&(Ad(a),a.set(bc,a.get(Wb)))},zd=function(a){var b=a.get(Za);a.set(Ob,i);a.set(R,Ea()^ld(a)&2147483647);a.set(Rb,"");a.set(Tb,b);a.set(Ub,b);a.set(Vb,b);a.set(Wb,1);a.set(Xb,i);a.set(Zb,0);a.set(S,10);a.set($b,b);a.set(Q,[]);a.set(Sb,k);a.set(Yb,k)},Ad=function(a){a.set(Ub,a.get(Vb));a.set(Vb,a.get(Za));a.z(Wb);a.set(Xb,i);a.set(Zb,0);a.set(S,10);a.set($b,a.get(Za));a.set(Yb,k)};var Dd="daum:q eniro:search_word naver:query pchome:q images.google:q google:q yahoo:p yahoo:q msn:q bing:q aol:query aol:q lycos:q lycos:query ask:q netscape:query cnn:query about:terms mamma:q voila:rdata virgilio:qs live:q baidu:wd alice:qs yandex:text najdi:q seznam:q rakuten:qt biglobe:q goo.ne:MT wp:szukaj onet:qt yam:k kvasir:q ozu:q terra:query rambler:query conduit:q babylon:q search-results:q avg:q comcast:q incredimail:q startsiden:q go.mail.ru:q search.centrum.cz:q".split(" "),Kd=function(a){if(a.get(ib)&&
!a.get(Fc)){for(var b=!E(a.get(ec))||!E(a.get(ic))||!E(a.get(gc))||!E(a.get(hc)),c={},d=0;d<Ed[v];d++){var e=Ed[d];c[e]=a.get(e)}(d=a.get(mc))?(H(149),e=new Ka,Na(e,d),d=e):d=Ma(J[y][xa],a.get(eb)).d;if(!("1"==Ja(d.get(a.get(rb)))&&b)){var f=d,h=function(b,c){var c=c||"-",d=Ja(f.get(a.get(b)));return d&&d!="-"?I(d):c},d=Ja(f.get(a.get(kb)))||"-",e=Ja(f.get(a.get(nb)))||"-",n=Ja(f.get(a.get(mb)))||"-",p=Ja(f.get("dclid"))||"-",s=h(lb,"(not set)"),Sa=h(ob,"(not set)"),ea=h(pb),h=h(qb);if(E(d)&&E(n)&&
E(p)&&E(e))d=k;else{var Pb=!E(p)&&E(e),ud=E(ea);if(Pb||ud){var ca=Fd(a),ca=Ma(ca,i);if((ca=Gd(a,ca))&&!E(ca[1]&&!ca[2]))Pb&&(e=ca[0]),ud&&(ea=ca[1])}Hd(a,d,e,n,p,s,Sa,ea,h);d=i}d=d||Id(a);!d&&(!b&&a.get(Xb))&&(Hd(a,g,"(direct)",g,g,"(direct)","(none)",g,g),d=i);if(d&&(a.set(dc,Jd(a,c)),b="(direct)"==a.get(ic)&&"(direct)"==a.get(fc)&&"(none)"==a.get(jc),a.get(dc)||a.get(Xb)&&!b))a.set(ac,a.get(Za)),a.set(bc,a.get(Wb)),a.z(cc)}}},Id=function(a){var b=Fd(a),c=Ma(b,i);if(!(b!=g&&b!=j&&""!=b&&"0"!=b&&
"-"!=b&&0<=b[q]("://"))||c&&-1<c[t][q]("google")&&c.d.contains("q")&&"cse"==c[ra])return k;if((b=Gd(a,c))&&!b[2])return Hd(a,g,b[0],g,g,"(organic)","organic",b[1],g),i;if(b||!a.get(Xb))return k;a:{for(var b=a.get(yb),d=La(c[t]),e=0;e<b[v];++e)if(-1<d[q](b[e])){a=k;break a}Hd(a,g,d,g,g,"(referral)","referral",g,"/"+c[ra]);a=i}return a},Gd=function(a,b){for(var c=a.get(wb),d=0;d<c[v];++d){var e=c[d][x](":");if(-1<b[t][q](e[0][C]())){var f=b.d.get(e[1]);if(f&&(f=K(f),!f&&-1<b[t][q]("google.")&&(f="(not provided)"),
!e[3]||-1<b.url[q](e[3]))){a:{for(var c=f,d=a.get(xb),c=I(c)[C](),h=0;h<d[v];++h)if(c==d[h]){c=i;break a}c=k}return[e[2]||e[0],f,c]}}}return j},Hd=function(a,b,c,d,e,f,h,n,p){a.set(ec,b);a.set(ic,c);a.set(gc,d);a.set(hc,e);a.set(fc,f);a.set(jc,h);a.set(kc,n);a.set(lc,p)},Ed=[fc,ec,gc,hc,ic,jc,kc,lc],Jd=function(a,b){function c(a){a=(""+a)[x]("+")[B]("%20");return a=a[x](" ")[B]("%20")}function d(c){var d=""+(a.get(c)||""),c=""+(b[c]||"");return 0<d[v]&&d==c}if(d(gc)||d(hc))return H(131),k;for(var e=
0;e<Ed[v];e++){var f=Ed[e],h=b[f]||"-",f=a.get(f)||"-";if(c(h)!=c(f))return i}return k},Ld=RegExp(/^https:\/\/(www\.)?google(\.com?)?(\.[a-z]{2}t?)?\/?$/i),Fd=function(a){a=Pa(a.get(Fb),a.get(P));try{if(Ld[ia](a))return H(136),a+"?q="}catch(b){H(145)}return a};var Nd=function(a){Md(a,J[y][xa])?(a.set(Fc,i),H(12)):a.set(Fc,k)},Md=function(a,b){if(!a.get(db))return k;var c=Ma(b,a.get(eb)),d=K(c.d.get("__utma")),e=K(c.d.get("__utmb")),f=K(c.d.get("__utmc")),h=K(c.d.get("__utmx")),n=K(c.d.get("__utmz")),p=K(c.d.get("__utmv")),c=K(c.d.get("__utmk"));if(F(""+d+e+f+h+n+p)!=c){d=I(d);e=I(e);f=I(f);h=I(h);f=Od(d+e+f+h,n,p,c);if(!f)return k;n=f[0];p=f[1]}if(!Uc(a,d,i))return k;Xc(a,e,i);ad(a,n,i);Zc(a,p,i);Pd(a,h,i);return i},Rd=function(a,b,c){var d;d=Vc(a)||"-";
var e=Wc(a)||"-",f=""+a.b(O,1)||"-",h=Qd(a)||"-",n=$c(a,k)||"-",a=Yc(a,k)||"-",p=F(""+d+e+f+h+n+a),s=[];s[m]("__utma="+d);s[m]("__utmb="+e);s[m]("__utmc="+f);s[m]("__utmx="+h);s[m]("__utmz="+n);s[m]("__utmv="+a);s[m]("__utmk="+p);d=s[B]("&");if(!d)return b;e=b[q]("#");if(c)return 0>e?b+"#"+d:b+"&"+d;c="";f=b[q]("?");0<e&&(c=b[A](e),b=b[A](0,e));return 0>f?b+"?"+d+c:b+"&"+d+c},Od=function(a,b,c,d){for(var e=0;3>e;e++){for(var f=0;3>f;f++){if(d==F(a+b+c))return H(127),[b,c];var h=b[o](/ /g,"%20"),n=
c[o](/ /g,"%20");if(d==F(a+h+n))return H(128),[h,n];h=h[o](/\+/g,"%20");n=n[o](/\+/g,"%20");if(d==F(a+h+n))return H(129),[h,n];try{var p=b[oa]("utmctr=(.*?)(?:\\|utm|$)");if(p&&2==p[v]&&(h=b[o](p[1],G(I(p[1]))),d==F(a+h+c)))return H(139),[h,c]}catch(s){}b=I(b)}c=I(c)}};var Sd="|",Ud=function(a,b,c,d,e,f,h,n,p){var s=Td(a,b);s||(s={},a.get(zb)[m](s));s.id_=b;s.affiliation_=c;s.total_=d;s.tax_=e;s.shipping_=f;s.city_=h;s.state_=n;s.country_=p;s.items_=s.items_||[];return s},Vd=function(a,b,c,d,e,f,h){var a=Td(a,b)||Ud(a,b,"",0,0,0,"","",""),n;a:{if(a&&a.items_){n=a.items_;for(var p=0;p<n[v];p++)if(n[p].sku_==c){n=n[p];break a}}n=j}p=n||{};p.transId_=b;p.sku_=c;p.name_=d;p.category_=e;p.price_=f;p.quantity_=h;n||a.items_[m](p);return p},Td=function(a,b){for(var c=
a.get(zb),d=0;d<c[v];d++)if(c[d].id_==b)return c[d];return j};var Wd,Xd=function(a){if(!Wd){var b;b=J[y].hash;var c=W[r],d=/^#?gaso=([^&]*)/;if(c=(b=(b=b&&b[oa](d)||c&&c[oa](d))?b[1]:K(hd("GASO")))&&b[oa](/^(?:[|!]([-0-9a-z.]{1,40})[|!])?([-.\w]{10,1200})$/i))xd(a,"GASO",""+b),L._gasoDomain=a.get($a),L._gasoCPath=a.get(P),a=c[1],Ia("https://www.google.com/analytics/web/inpage/pub/inpage.js?"+(a?"prefix="+a+"&":"")+Ea(),"_gasojs");Wd=i}};var Pd=function(a,b,c){c&&(b=I(b));c=a.b(O,1);b=b[x](".");!(2>b[v])&&/^\d+$/[ia](b[0])&&(b[0]=""+c,xd(a,"__utmx",b[B](".")))},Qd=function(a,b){var c=Sc(a.get(O),hd("__utmx"));"-"==c&&(c="");return b?G(c):c};var Zd=function(a,b){var c=l.min(a.b(yc,0),100);if(a.b(R,0)%100>=c)return k;var d;if(c=(c=W.performance||W.webkitPerformance)&&c.timing){var e=c.navigationStart;0==e?H(133):d=[c.loadEventStart-e,c.domainLookupEnd-c.domainLookupStart,c.connectEnd-c.connectStart,c.responseStart-c.requestStart,c.responseEnd-c.responseStart,c.fetchStart-e]}d||(W.top!=W?d=g:(c=(d=W.external)&&d.onloadT,d&&!d.isValidLoadTime&&(c=g),2147483648<c&&(c=g),0<c&&d.setPageReadyTime(),d=c==g?g:[c]));if(d==g)return k;c=d[0];if(c==
g||c==ba||isNaN(c))return k;if(0<c){a:{for(c=1;c<d[v];c++)if(isNaN(d[c])||d[c]==ba||0>d[c]){c=k;break a}c=i}c?b(Yd(d)):b(Yd(d[ja](0,1)))}else Ga(W,"load",function(){Zd(a,b)},k);return i},ae=function(a,b,c,d){var e=new qd;e.f(14,90,b[A](0,64));e.f(14,91,a[A](0,64));e.f(14,92,""+$d(c));d!=g&&e.f(14,93,d[A](0,64));e.o(14,90,c);return e},$d=function(a){return isNaN(a)||0>a?0:5E3>a?10*l[la](a/10):5E4>a?100*l[la](a/100):41E5>a?1E3*l[la](a/1E3):41E5},Yd=function(a){for(var b=new qd,c=0;c<a[v];c++)b.f(14,
c+1,""+$d(a[c])),b.o(14,c+1,a[c]);return b};var U=function(a,b,c){function d(a){return function(b){if((b=b.get(Gc)[a])&&b[v])for(var c={type:a,target:e,stopPropagation:function(){throw"aborted";}},d=0;d<b[v];d++)b[d].call(e,c)}}var e=this;this.a=new Rc;this.get=function(a){return this.a.get(a)};this.set=function(a,b,c){this.a.set(a,b,c)};this.set(N,b||"UA-XXXXX-X");this.set(Ya,a||"");this.set(Xa,c||"");this.set(Za,l.round((new Date).getTime()/1E3));this.set(P,"/");this.set(ab,63072E6);this.set(cb,15768E6);this.set(bb,18E5);this.set(db,k);this.set(vb,
50);this.set(eb,k);this.set(fb,i);this.set(gb,i);this.set(hb,i);this.set(ib,i);this.set(jb,i);this.set(lb,"utm_campaign");this.set(kb,"utm_id");this.set(mb,"gclid");this.set(nb,"utm_source");this.set(ob,"utm_medium");this.set(pb,"utm_term");this.set(qb,"utm_content");this.set(rb,"utm_nooverride");this.set(sb,100);this.set(yc,1);this.set(zc,k);this.set(tb,"/__utm.gif");this.set(ub,1);this.set(zb,[]);this.set(Q,[]);this.set(wb,Dd[ja](0));this.set(xb,[]);this.set(yb,[]);this.C("auto");this.set(Fb,J.referrer);
a=this.a;try{var f=Ma(J[y][xa],k),h=ga(Ja(f.d.get("utm_referrer")))||"";h&&a.set(Fb,h);var n=ga(K(f.d.get("utm_expid")));n&&a.set(Hc,n)}catch(p){H(146)}this.set(Gc,{hit:[],load:[]});this.a.i("0",Nd);this.a.i("1",Bd);this.a.i("2",Kd);this.a.i("3",Cd);this.a.i("4",d("load"));this.a.i("5",Xd);this.a.e("A",cd);this.a.e("B",ed);this.a.e("C",Bd);this.a.e("D",bd);this.a.e("E",Mc);this.a.e("F",be);this.a.e("G",yd);this.a.e("H",fd);this.a.e("I",md);this.a.e("J",td);this.a.e("K",d("hit"));this.a.e("L",ce);
this.a.e("M",de);0===this.get(Za)&&H(111);this.a.T();this.H=g};D=U[w];D.m=function(){var a=this.get(Ab);a||(a=new qd,this.set(Ab,a));return a};D.La=function(a){for(var b in a){var c=a[b];a.hasOwnProperty(b)&&this.set(b,c,i)}};D.K=function(a){if(this.get(zc))return k;var b=this,c=Zd(this.a,function(c){b.set(Db,a,i);b.t(c)});this.set(zc,c);return c};D.Ea=function(a){a&&Ca(a)?(H(13),this.set(Db,a,i)):"object"===typeof a&&a!==j&&this.La(a);this.H=a=this.get(Db);this.a.j("page");this.K(a)};
D.G=function(a,b,c,d,e){if(""==a||(!od(a)||""==b||!od(b))||c!=g&&!od(c)||d!=g&&!pd(d))return k;this.set(rc,a,i);this.set(sc,b,i);this.set(tc,c,i);this.set(uc,d,i);this.set(qc,!!e,i);this.a.j("event");return i};D.Ga=function(a,b,c,d,e){var f=this.a.b(yc,0);1*e===e&&(f=e);if(this.a.b(R,0)%100>=f)return k;c=1*(""+c);if(""==a||(!od(a)||""==b||!od(b)||!pd(c)||isNaN(c)||0>c||0>f||100<f)||d!=g&&(""==d||!od(d)))return k;this.t(ae(a,b,c,d));return i};
D.Fa=function(a,b,c,d){if(!a||!b)return k;this.set(vc,a,i);this.set(wc,b,i);this.set(xc,c||J[y][xa],i);d&&this.set(Db,d,i);this.a.j("social");return i};D.Da=function(){this.set(yc,10);this.K(this.H)};D.Ha=function(){this.a.j("trans")};D.t=function(a){this.set(Bb,a,i);this.a.j("event")};D.ia=function(a){this.v();var b=this;return{_trackEvent:function(c,d,e){H(91);b.G(a,c,d,e)}}};D.la=function(a){return this.get(a)};
D.wa=function(a,b){if(a)if(Ca(a))this.set(a,b);else if("object"==typeof a)for(var c in a)a.hasOwnProperty(c)&&this.set(c,a[c])};D.addEventListener=function(a,b){var c=this.get(Gc)[a];c&&c[m](b)};D.removeEventListener=function(a,b){for(var c=this.get(Gc)[a],d=0;c&&d<c[v];d++)if(c[d]==b){c.splice(d,1);break}};D.pa=function(){return"5.3.3"};D.C=function(a){this.get(fb);a="auto"==a?La(J.domain):!a||"-"==a||"none"==a?"":a[C]();this.set($a,a)};D.ua=function(a){this.set(fb,!!a)};
D.ma=function(a,b){return Rd(this.a,a,b)};D.link=function(a,b){if(this.a.get(db)&&a){var c=Rd(this.a,a,b);J[y].href=c}};D.ta=function(a,b){this.a.get(db)&&(a&&a.action)&&(a.action=Rd(this.a,a.action,b))};
D.ya=function(){this.v();var a=this.a,b=J.getElementById?J.getElementById("utmtrans"):J.utmform&&J.utmform.utmtrans?J.utmform.utmtrans:j;if(b&&b[na]){a.set(zb,[]);for(var b=b[na][x]("UTM:"),c=0;c<b[v];c++){b[c]=Da(b[c]);for(var d=b[c][x](Sd),e=0;e<d[v];e++)d[e]=Da(d[e]);"T"==d[0]?Ud(a,d[1],d[2],d[3],d[4],d[5],d[6],d[7],d[8]):"I"==d[0]&&Vd(a,d[1],d[2],d[3],d[4],d[5],d[6])}}};D.$=function(a,b,c,d,e,f,h,n){return Ud(this.a,a,b,c,d,e,f,h,n)};D.Y=function(a,b,c,d,e,f){return Vd(this.a,a,b,c,d,e,f)};
D.za=function(a){Sd=a||"|"};D.ea=function(){this.set(zb,[])};D.va=function(a,b,c,d){var e=this.a;if(0>=a||a>e.get(vb))a=k;else if(!b||!c||128<b[v]+c[v])a=k;else{1!=d&&2!=d&&(d=3);var f={};ha(f,b);f.value=c;f.scope=d;e.get(Q)[a]=f;a=i}a&&this.a.n();return a};D.ka=function(a){this.a.get(Q)[a]=g;this.a.n()};D.qa=function(a){return(a=this.a.get(Q)[a])&&1==a[ua]?a[na]:g};D.Ba=function(a,b,c){this.m().f(a,b,c)};D.Ca=function(a,b,c){this.m().o(a,b,c)};D.ra=function(a,b){return this.m().getKey(a,b)};
D.sa=function(a,b){return this.m().N(a,b)};D.fa=function(a){this.m().L(a)};D.ga=function(a){this.m().M(a)};D.ja=function(){return new qd};D.W=function(a){a&&this.get(xb)[m](a[C]())};D.ba=function(){this.set(xb,[])};D.X=function(a){a&&this.get(yb)[m](a[C]())};D.ca=function(){this.set(yb,[])};D.Z=function(a,b,c,d,e){if(a&&b){a=[a,b[C]()][B](":");if(d||e)a=[a,d,e][B](":");d=this.get(wb);d.splice(c?0:d[v],0,a)}};D.da=function(){this.set(wb,[])};
D.ha=function(a){this.a[ka]();var b=this.get(P),c=Qd(this.a);this.set(P,a);this.a.n();Pd(this.a,c);this.set(P,b)};D.xa=function(a,b){if(0<a&&5>=a&&Ca(b)&&""!=b){var c=this.get(Dc)||[];c[a]=b;this.set(Dc,c)}};D.V=function(a){a=""+a;if(a[oa](/^[A-Za-z0-9]{1,5}$/)){var b=this.get(Ec)||[];b[m](a);this.set(Ec,b)}};D.v=function(){this.a[ka]()};D.Aa=function(a){a&&""!=a&&(this.set(Rb,a),this.a.j("var"))};var be=function(a){"trans"!==a.get(nc)&&500<=a.b(Zb,0)&&a[ta]();if("event"===a.get(nc)){var b=(new Date).getTime(),c=a.b($b,0),d=a.b(Vb,0),c=l[la](1*((b-(c!=d?c:1E3*c))/1E3));0<c&&(a.set($b,b),a.set(S,l.min(10,a.b(S,0)+c)));0>=a.b(S,0)&&a[ta]()}},de=function(a){"event"===a.get(nc)&&a.set(S,l.max(0,a.b(S,10)-1))};var ee=function(){var a=[];this.add=function(b,c,d){d&&(c=G(""+c));a[m](b+"="+c)};this.toString=function(){return a[B]("&")}},fe=function(a,b){(b||2!=a.get(ub))&&a.z(Zb)},ge=function(a,b){b.add("utmwv","5.3.3");b.add("utms",a.get(Zb));b.add("utmn",Ea());var c=J[y].hostname;E(c)||b.add("utmhn",c,i);c=a.get(sb);100!=c&&b.add("utmsp",c,i)},he=function(a,b){b.add("utmac",Da(a.get(N)));a.get(Hc)&&b.add("utmxkey",a.get(Hc),i);a.get(qc)&&b.add("utmni",1);var c=a.get(Ec);c&&0<c[v]&&b.add("utmdid",c[B]("."));
var c=function(a,b){b&&d[m](a+"="+b+";")},d=[];c("__utma",Vc(a));c("__utmz",$c(a,k));c("__utmv",Yc(a,i));c("__utmx",Qd(a));b.add("utmcc",d[B]("+"),i);L.w&&b.add("aip",1);b.add("utmu",gd.Wa())},ie=function(a,b){for(var c=a.get(Dc)||[],d=[],e=1;e<c[v];e++)c[e]&&d[m](e+":"+G(c[e][o](/%/g,"%25")[o](/:/g,"%3A")[o](/,/g,"%2C")));d[v]&&b.add("utmpg",d[B](","))},je=function(a,b){a.get(gb)&&(b.add("utmcs",a.get(Mb),i),b.add("utmsr",a.get(Hb)),a.get(Nb)&&b.add("utmvp",a.get(Nb)),b.add("utmsc",a.get(Ib)),b.add("utmul",
a.get(Lb)),b.add("utmje",a.get(Jb)),b.add("utmfl",a.get(Kb),i))},ke=function(a,b){a.get(jb)&&a.get(Eb)&&b.add("utmdt",a.get(Eb),i);b.add("utmhid",a.get(Gb));b.add("utmr",Pa(a.get(Fb),a.get(P)),i);b.add("utmp",G(a.get(Db),i),i)},le=function(a,b){for(var c=a.get(Ab),d=a.get(Bb),e=a.get(Q)||[],f=0;f<e[v];f++){var h=e[f];h&&(c||(c=new qd),c.f(8,f,h[r]),c.f(9,f,h[na]),3!=h[ua]&&c.f(11,f,""+h[ua]))}!E(a.get(rc))&&!E(a.get(sc),i)&&(c||(c=new qd),c.f(5,1,a.get(rc)),c.f(5,2,a.get(sc)),e=a.get(tc),e!=g&&c.f(5,
3,e),e=a.get(uc),e!=g&&c.o(5,1,e));c?b.add("utme",c.Pa(d),i):d&&b.add("utme",d.A(),i)},me=function(a,b,c){var d=new ee;fe(a,c);ge(a,d);d.add("utmt","tran");d.add("utmtid",b.id_,i);d.add("utmtst",b.affiliation_,i);d.add("utmtto",b.total_,i);d.add("utmttx",b.tax_,i);d.add("utmtsp",b.shipping_,i);d.add("utmtci",b.city_,i);d.add("utmtrg",b.state_,i);d.add("utmtco",b.country_,i);(b=a.get(Cb))&&d.add("utmcu",b,i);c||(ie(a,d),he(a,d));return d[u]()},ne=function(a,b,c){var d=new ee;fe(a,c);ge(a,d);d.add("utmt",
"item");d.add("utmtid",b.transId_,i);d.add("utmipc",b.sku_,i);d.add("utmipn",b.name_,i);d.add("utmiva",b.category_,i);d.add("utmipr",b.price_,i);d.add("utmiqt",b.quantity_,i);(b=a.get(Cb))&&d.add("utmcu",b,i);c||(ie(a,d),he(a,d));return d[u]()},oe=function(a,b){var c=a.get(nc);if("page"==c)c=new ee,fe(a,b),ge(a,c),le(a,c),je(a,c),ke(a,c),b||(ie(a,c),he(a,c)),c=[c[u]()];else if("event"==c)c=new ee,fe(a,b),ge(a,c),c.add("utmt","event"),le(a,c),je(a,c),ke(a,c),b||(ie(a,c),he(a,c)),c=[c[u]()];else if("var"==
c)c=new ee,fe(a,b),ge(a,c),c.add("utmt","var"),!b&&he(a,c),c=[c[u]()];else if("trans"==c)for(var c=[],d=a.get(zb),e=0;e<d[v];++e){c[m](me(a,d[e],b));for(var f=d[e].items_,h=0;h<f[v];++h)c[m](ne(a,f[h],b))}else"social"==c?b?c=[]:(c=new ee,fe(a,b),ge(a,c),c.add("utmt","social"),c.add("utmsn",a.get(vc),i),c.add("utmsa",a.get(wc),i),c.add("utmsid",a.get(xc),i),le(a,c),je(a,c),ke(a,c),ie(a,c),he(a,c),c=[c[u]()]):c=[];return c},ce=function(a){var b,c=a.get(ub),d=a.get(pc),e=d&&d.Ta,f=0;if(0==c||2==c){var h=
a.get(tb)+"?";b=oe(a,i);for(var n=0,p=b[v];n<p;n++)Ta(b[n],e,h,i),f++}if(1==c||2==c){b=oe(a);n=0;for(p=b[v];n<p;n++)try{Ta(b[n],e),f++}catch(s){s&&Ra(s[r],g,s.message)}}d&&(d.q=f)};var pe="https:"==J[y][z]?"https://ssl.google-analytics.com":"http://www.google-analytics.com",qe=function(a){ha(this,"len");this.message=a+"-8192"},re=function(a){ha(this,"ff2post");this.message=a+"-2036"},Ta=function(a,b,c,d){b=b||Fa;if(d||2036>=a[v]){var e=b,f;f=c||pe+"/__utm.gif?";var h=new Image(1,1);h.src=f+a;h.onload=function(){h.onload=j;h.onerror=j;e()};h.onerror=function(){h.onload=j;h.onerror=j;e()}}else if(8192>=a[v]){var n=b;if(0<=W[za].userAgent[q]("Firefox")&&![].reduce)throw new re(a[v]);
var p,b=pe+"/p/__utm.gif";if(c=W.XDomainRequest)p=new c,p.open("POST",b);else if(c=W.XMLHttpRequest)c=new c,"withCredentials"in c&&(p=c,p.open("POST",b,i),p.setRequestHeader("Content-Type","text/plain"));p&&(p.onreadystatechange=function(){4==p.readyState&&(n(),p=j)},p.send(a),f=i);f||se(a,n)}else throw new qe(a[v]);},se=function(a,b){if(J.body){a=aa(a);try{var c=J[qa]('<iframe name="'+a+'"></iframe>')}catch(d){c=J[qa]("iframe"),ha(c,a)}c.height="0";c.width="0";c.style.display="none";c.style.visibility=
"hidden";var e=J[y],e=pe+"/u/post_iframe.html#"+aa(e[z]+"//"+e[t]+"/favicon.ico"),f=function(){c.src="";c.parentNode&&c.parentNode.removeChild(c)};Ga(W,"beforeunload",f);var h=k,n=0,p=function(){if(!h){try{if(9<n||c.contentWindow[y][t]==J[y][t]){h=i;f();Ha(W,"beforeunload",f);b();return}}catch(a){}n++;fa(p,200)}};Ga(c,"load",p);J.body.appendChild(c);c.src=e}else fa(function(){se(a,b)},100)};var $=function(){this.w=k;this.D={};this.F=[];this.U=0;this.S=[["www.google-analytics.com","","/plugins/"]];this._gasoCPath=this._gasoDomain=g;T($[w],"_createTracker",$[w].r,55);T($[w],"_getTracker",$[w].na,0);T($[w],"_getTrackerByName",$[w].u,51);T($[w],"_getTrackers",$[w].oa,130);T($[w],"_anonymizeIp",$[w].aa,16);T($[w],"_getPlugin",Ic,120);var a=function(a,c,d){T(U[w],a,c,d)};Jc("_getName",Ya,58);Jc("_getAccount",N,64);Jc("_visitCode",R,54);Jc("_getClientInfo",gb,53,1);Jc("_getDetectTitle",jb,
56,1);Jc("_getDetectFlash",hb,65,1);Jc("_getLocalGifPath",tb,57);Jc("_getServiceMode",ub,59);V("_setClientInfo",gb,66,2);V("_setAccount",N,3);V("_setNamespace",Xa,48);V("_setAllowLinker",db,11,2);V("_setDetectFlash",hb,61,2);V("_setDetectTitle",jb,62,2);V("_setLocalGifPath",tb,46,0);V("_setLocalServerMode",ub,92,g,0);V("_setRemoteServerMode",ub,63,g,1);V("_setLocalRemoteServerMode",ub,47,g,2);V("_setSampleRate",sb,45,1);V("_setCampaignTrack",ib,36,2);V("_setAllowAnchor",eb,7,2);V("_setCampNameKey",
lb,41);V("_setCampContentKey",qb,38);V("_setCampIdKey",kb,39);V("_setCampMediumKey",ob,40);V("_setCampNOKey",rb,42);V("_setCampSourceKey",nb,43);V("_setCampTermKey",pb,44);V("_setCampCIdKey",mb,37);V("_setCookiePath",P,9,0);V("_setMaxCustomVariables",vb,0,1);V("_setVisitorCookieTimeout",ab,28,1);V("_setSessionCookieTimeout",bb,26,1);V("_setCampaignCookieTimeout",cb,29,1);V("_setReferrerOverride",Fb,49);V("_setSiteSpeedSampleRate",yc,132);a("_trackPageview",U[w].Ea,1);a("_trackEvent",U[w].G,4);a("_trackPageLoadTime",
U[w].Da,100);a("_trackSocial",U[w].Fa,104);a("_trackTrans",U[w].Ha,18);a("_sendXEvent",U[w].t,78);a("_createEventTracker",U[w].ia,74);a("_getVersion",U[w].pa,60);a("_setDomainName",U[w].C,6);a("_setAllowHash",U[w].ua,8);a("_getLinkerUrl",U[w].ma,52);a("_link",U[w].link,101);a("_linkByPost",U[w].ta,102);a("_setTrans",U[w].ya,20);a("_addTrans",U[w].$,21);a("_addItem",U[w].Y,19);a("_clearTrans",U[w].ea,105);a("_setTransactionDelim",U[w].za,82);a("_setCustomVar",U[w].va,10);a("_deleteCustomVar",U[w].ka,
35);a("_getVisitorCustomVar",U[w].qa,50);a("_setXKey",U[w].Ba,83);a("_setXValue",U[w].Ca,84);a("_getXKey",U[w].ra,76);a("_getXValue",U[w].sa,77);a("_clearXKey",U[w].fa,72);a("_clearXValue",U[w].ga,73);a("_createXObj",U[w].ja,75);a("_addIgnoredOrganic",U[w].W,15);a("_clearIgnoredOrganic",U[w].ba,97);a("_addIgnoredRef",U[w].X,31);a("_clearIgnoredRef",U[w].ca,32);a("_addOrganic",U[w].Z,14);a("_clearOrganic",U[w].da,70);a("_cookiePathCopy",U[w].ha,30);a("_get",U[w].la,106);a("_set",U[w].wa,107);a("_addEventListener",
U[w].addEventListener,108);a("_removeEventListener",U[w].removeEventListener,109);a("_addDevId",U[w].V);a("_getPlugin",Ic,122);a("_setPageGroup",U[w].xa,126);a("_trackTiming",U[w].Ga,124);a("_initData",U[w].v,2);a("_setVar",U[w].Aa,22);V("_setSessionTimeout",bb,27,3);V("_setCookieTimeout",cb,25,3);V("_setCookiePersistence",ab,24,1);a("_setAutoTrackOutbound",Fa,79);a("_setTrackOutboundSubdomains",Fa,81);a("_setHrefExamineLimit",Fa,80)};D=$[w];D.na=function(a,b){return this.r(a,g,b)};
D.r=function(a,b,c){b&&H(23);c&&H(67);b==g&&(b="~"+L.U++);a=new U(b,a,c);L.D[b]=a;L.F[m](a);return a};D.u=function(a){a=a||"";return L.D[a]||L.r(g,a)};D.oa=function(){return L.F[ja](0)};D.aa=function(){this.w=i};var te=function(a){if("prerender"==J.webkitVisibilityState)return k;a();return i};var L=new $;var ue=W._gat;ue&&Ba(ue._getTracker)?L=ue:W._gat=L;var Z=new Y;var ve=function(){var a=W._gaq,b=k;if(a&&Ba(a[m])&&(b="[object Array]"==Object[w][u].call(Object(a)),!b)){Z=a;return}W._gaq=Z;b&&Z[m][ya](Z,a)};if(!te(ve)){H(123);var we=k,xe=function(){!we&&te(ve)&&(we=i,Ha(J,"webkitvisibilitychange",xe))};Ga(J,"webkitvisibilitychange",xe)};})();

View File

@@ -0,0 +1,171 @@
/*!
* Note: While Microsoft is not the author of this file, Microsoft is
* offering you a license subject to the terms of the Microsoft Software
* License Terms for Microsoft ASP.NET Model View Controller 3.
* Microsoft reserves all other rights. The notices below are provided
* for informational purposes only and are not the license terms under
* which Microsoft distributed this file.
*
* jQuery JavaScript Library v1.4.4
* http://jquery.com/
*
* Copyright 2010, John Resig
*
* Includes Sizzle.js
* http://sizzlejs.com/
* Copyright 2010, The Dojo Foundation
*
* Date: Thu Nov 11 19:04:53 2010 -0500
*/
(function(E,B){function ka(a,b,d){if(d===B&&a.nodeType===1){d=a.getAttribute("data-"+b);if(typeof d==="string"){try{d=d==="true"?true:d==="false"?false:d==="null"?null:!c.isNaN(d)?parseFloat(d):Ja.test(d)?c.parseJSON(d):d}catch(e){}c.data(a,b,d)}else d=B}return d}function U(){return false}function ca(){return true}function la(a,b,d){d[0].type=a;return c.event.handle.apply(b,d)}function Ka(a){var b,d,e,f,h,l,k,o,x,r,A,C=[];f=[];h=c.data(this,this.nodeType?"events":"__events__");if(typeof h==="function")h=
h.events;if(!(a.liveFired===this||!h||!h.live||a.button&&a.type==="click")){if(a.namespace)A=RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)");a.liveFired=this;var J=h.live.slice(0);for(k=0;k<J.length;k++){h=J[k];h.origType.replace(X,"")===a.type?f.push(h.selector):J.splice(k--,1)}f=c(a.target).closest(f,a.currentTarget);o=0;for(x=f.length;o<x;o++){r=f[o];for(k=0;k<J.length;k++){h=J[k];if(r.selector===h.selector&&(!A||A.test(h.namespace))){l=r.elem;e=null;if(h.preType==="mouseenter"||
h.preType==="mouseleave"){a.type=h.preType;e=c(a.relatedTarget).closest(h.selector)[0]}if(!e||e!==l)C.push({elem:l,handleObj:h,level:r.level})}}}o=0;for(x=C.length;o<x;o++){f=C[o];if(d&&f.level>d)break;a.currentTarget=f.elem;a.data=f.handleObj.data;a.handleObj=f.handleObj;A=f.handleObj.origHandler.apply(f.elem,arguments);if(A===false||a.isPropagationStopped()){d=f.level;if(A===false)b=false;if(a.isImmediatePropagationStopped())break}}return b}}function Y(a,b){return(a&&a!=="*"?a+".":"")+b.replace(La,
"`").replace(Ma,"&")}function ma(a,b,d){if(c.isFunction(b))return c.grep(a,function(f,h){return!!b.call(f,h,f)===d});else if(b.nodeType)return c.grep(a,function(f){return f===b===d});else if(typeof b==="string"){var e=c.grep(a,function(f){return f.nodeType===1});if(Na.test(b))return c.filter(b,e,!d);else b=c.filter(b,e)}return c.grep(a,function(f){return c.inArray(f,b)>=0===d})}function na(a,b){var d=0;b.each(function(){if(this.nodeName===(a[d]&&a[d].nodeName)){var e=c.data(a[d++]),f=c.data(this,
e);if(e=e&&e.events){delete f.handle;f.events={};for(var h in e)for(var l in e[h])c.event.add(this,h,e[h][l],e[h][l].data)}}})}function Oa(a,b){b.src?c.ajax({url:b.src,async:false,dataType:"script"}):c.globalEval(b.text||b.textContent||b.innerHTML||"");b.parentNode&&b.parentNode.removeChild(b)}function oa(a,b,d){var e=b==="width"?a.offsetWidth:a.offsetHeight;if(d==="border")return e;c.each(b==="width"?Pa:Qa,function(){d||(e-=parseFloat(c.css(a,"padding"+this))||0);if(d==="margin")e+=parseFloat(c.css(a,
"margin"+this))||0;else e-=parseFloat(c.css(a,"border"+this+"Width"))||0});return e}function da(a,b,d,e){if(c.isArray(b)&&b.length)c.each(b,function(f,h){d||Ra.test(a)?e(a,h):da(a+"["+(typeof h==="object"||c.isArray(h)?f:"")+"]",h,d,e)});else if(!d&&b!=null&&typeof b==="object")c.isEmptyObject(b)?e(a,""):c.each(b,function(f,h){da(a+"["+f+"]",h,d,e)});else e(a,b)}function S(a,b){var d={};c.each(pa.concat.apply([],pa.slice(0,b)),function(){d[this]=a});return d}function qa(a){if(!ea[a]){var b=c("<"+
a+">").appendTo("body"),d=b.css("display");b.remove();if(d==="none"||d==="")d="block";ea[a]=d}return ea[a]}function fa(a){return c.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:false}var t=E.document,c=function(){function a(){if(!b.isReady){try{t.documentElement.doScroll("left")}catch(j){setTimeout(a,1);return}b.ready()}}var b=function(j,s){return new b.fn.init(j,s)},d=E.jQuery,e=E.$,f,h=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]+)$)/,l=/\S/,k=/^\s+/,o=/\s+$/,x=/\W/,r=/\d/,A=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,
C=/^[\],:{}\s]*$/,J=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,w=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,I=/(?:^|:|,)(?:\s*\[)+/g,L=/(webkit)[ \/]([\w.]+)/,g=/(opera)(?:.*version)?[ \/]([\w.]+)/,i=/(msie) ([\w.]+)/,n=/(mozilla)(?:.*? rv:([\w.]+))?/,m=navigator.userAgent,p=false,q=[],u,y=Object.prototype.toString,F=Object.prototype.hasOwnProperty,M=Array.prototype.push,N=Array.prototype.slice,O=String.prototype.trim,D=Array.prototype.indexOf,R={};b.fn=b.prototype={init:function(j,
s){var v,z,H;if(!j)return this;if(j.nodeType){this.context=this[0]=j;this.length=1;return this}if(j==="body"&&!s&&t.body){this.context=t;this[0]=t.body;this.selector="body";this.length=1;return this}if(typeof j==="string")if((v=h.exec(j))&&(v[1]||!s))if(v[1]){H=s?s.ownerDocument||s:t;if(z=A.exec(j))if(b.isPlainObject(s)){j=[t.createElement(z[1])];b.fn.attr.call(j,s,true)}else j=[H.createElement(z[1])];else{z=b.buildFragment([v[1]],[H]);j=(z.cacheable?z.fragment.cloneNode(true):z.fragment).childNodes}return b.merge(this,
j)}else{if((z=t.getElementById(v[2]))&&z.parentNode){if(z.id!==v[2])return f.find(j);this.length=1;this[0]=z}this.context=t;this.selector=j;return this}else if(!s&&!x.test(j)){this.selector=j;this.context=t;j=t.getElementsByTagName(j);return b.merge(this,j)}else return!s||s.jquery?(s||f).find(j):b(s).find(j);else if(b.isFunction(j))return f.ready(j);if(j.selector!==B){this.selector=j.selector;this.context=j.context}return b.makeArray(j,this)},selector:"",jquery:"1.4.4",length:0,size:function(){return this.length},
toArray:function(){return N.call(this,0)},get:function(j){return j==null?this.toArray():j<0?this.slice(j)[0]:this[j]},pushStack:function(j,s,v){var z=b();b.isArray(j)?M.apply(z,j):b.merge(z,j);z.prevObject=this;z.context=this.context;if(s==="find")z.selector=this.selector+(this.selector?" ":"")+v;else if(s)z.selector=this.selector+"."+s+"("+v+")";return z},each:function(j,s){return b.each(this,j,s)},ready:function(j){b.bindReady();if(b.isReady)j.call(t,b);else q&&q.push(j);return this},eq:function(j){return j===
-1?this.slice(j):this.slice(j,+j+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(N.apply(this,arguments),"slice",N.call(arguments).join(","))},map:function(j){return this.pushStack(b.map(this,function(s,v){return j.call(s,v,s)}))},end:function(){return this.prevObject||b(null)},push:M,sort:[].sort,splice:[].splice};b.fn.init.prototype=b.fn;b.extend=b.fn.extend=function(){var j,s,v,z,H,G=arguments[0]||{},K=1,Q=arguments.length,ga=false;
if(typeof G==="boolean"){ga=G;G=arguments[1]||{};K=2}if(typeof G!=="object"&&!b.isFunction(G))G={};if(Q===K){G=this;--K}for(;K<Q;K++)if((j=arguments[K])!=null)for(s in j){v=G[s];z=j[s];if(G!==z)if(ga&&z&&(b.isPlainObject(z)||(H=b.isArray(z)))){if(H){H=false;v=v&&b.isArray(v)?v:[]}else v=v&&b.isPlainObject(v)?v:{};G[s]=b.extend(ga,v,z)}else if(z!==B)G[s]=z}return G};b.extend({noConflict:function(j){E.$=e;if(j)E.jQuery=d;return b},isReady:false,readyWait:1,ready:function(j){j===true&&b.readyWait--;
if(!b.readyWait||j!==true&&!b.isReady){if(!t.body)return setTimeout(b.ready,1);b.isReady=true;if(!(j!==true&&--b.readyWait>0))if(q){var s=0,v=q;for(q=null;j=v[s++];)j.call(t,b);b.fn.trigger&&b(t).trigger("ready").unbind("ready")}}},bindReady:function(){if(!p){p=true;if(t.readyState==="complete")return setTimeout(b.ready,1);if(t.addEventListener){t.addEventListener("DOMContentLoaded",u,false);E.addEventListener("load",b.ready,false)}else if(t.attachEvent){t.attachEvent("onreadystatechange",u);E.attachEvent("onload",
b.ready);var j=false;try{j=E.frameElement==null}catch(s){}t.documentElement.doScroll&&j&&a()}}},isFunction:function(j){return b.type(j)==="function"},isArray:Array.isArray||function(j){return b.type(j)==="array"},isWindow:function(j){return j&&typeof j==="object"&&"setInterval"in j},isNaN:function(j){return j==null||!r.test(j)||isNaN(j)},type:function(j){return j==null?String(j):R[y.call(j)]||"object"},isPlainObject:function(j){if(!j||b.type(j)!=="object"||j.nodeType||b.isWindow(j))return false;if(j.constructor&&
!F.call(j,"constructor")&&!F.call(j.constructor.prototype,"isPrototypeOf"))return false;for(var s in j);return s===B||F.call(j,s)},isEmptyObject:function(j){for(var s in j)return false;return true},error:function(j){throw j;},parseJSON:function(j){if(typeof j!=="string"||!j)return null;j=b.trim(j);if(C.test(j.replace(J,"@").replace(w,"]").replace(I,"")))return E.JSON&&E.JSON.parse?E.JSON.parse(j):(new Function("return "+j))();else b.error("Invalid JSON: "+j)},noop:function(){},globalEval:function(j){if(j&&
l.test(j)){var s=t.getElementsByTagName("head")[0]||t.documentElement,v=t.createElement("script");v.type="text/javascript";if(b.support.scriptEval)v.appendChild(t.createTextNode(j));else v.text=j;s.insertBefore(v,s.firstChild);s.removeChild(v)}},nodeName:function(j,s){return j.nodeName&&j.nodeName.toUpperCase()===s.toUpperCase()},each:function(j,s,v){var z,H=0,G=j.length,K=G===B||b.isFunction(j);if(v)if(K)for(z in j){if(s.apply(j[z],v)===false)break}else for(;H<G;){if(s.apply(j[H++],v)===false)break}else if(K)for(z in j){if(s.call(j[z],
z,j[z])===false)break}else for(v=j[0];H<G&&s.call(v,H,v)!==false;v=j[++H]);return j},trim:O?function(j){return j==null?"":O.call(j)}:function(j){return j==null?"":j.toString().replace(k,"").replace(o,"")},makeArray:function(j,s){var v=s||[];if(j!=null){var z=b.type(j);j.length==null||z==="string"||z==="function"||z==="regexp"||b.isWindow(j)?M.call(v,j):b.merge(v,j)}return v},inArray:function(j,s){if(s.indexOf)return s.indexOf(j);for(var v=0,z=s.length;v<z;v++)if(s[v]===j)return v;return-1},merge:function(j,
s){var v=j.length,z=0;if(typeof s.length==="number")for(var H=s.length;z<H;z++)j[v++]=s[z];else for(;s[z]!==B;)j[v++]=s[z++];j.length=v;return j},grep:function(j,s,v){var z=[],H;v=!!v;for(var G=0,K=j.length;G<K;G++){H=!!s(j[G],G);v!==H&&z.push(j[G])}return z},map:function(j,s,v){for(var z=[],H,G=0,K=j.length;G<K;G++){H=s(j[G],G,v);if(H!=null)z[z.length]=H}return z.concat.apply([],z)},guid:1,proxy:function(j,s,v){if(arguments.length===2)if(typeof s==="string"){v=j;j=v[s];s=B}else if(s&&!b.isFunction(s)){v=
s;s=B}if(!s&&j)s=function(){return j.apply(v||this,arguments)};if(j)s.guid=j.guid=j.guid||s.guid||b.guid++;return s},access:function(j,s,v,z,H,G){var K=j.length;if(typeof s==="object"){for(var Q in s)b.access(j,Q,s[Q],z,H,v);return j}if(v!==B){z=!G&&z&&b.isFunction(v);for(Q=0;Q<K;Q++)H(j[Q],s,z?v.call(j[Q],Q,H(j[Q],s)):v,G);return j}return K?H(j[0],s):B},now:function(){return(new Date).getTime()},uaMatch:function(j){j=j.toLowerCase();j=L.exec(j)||g.exec(j)||i.exec(j)||j.indexOf("compatible")<0&&n.exec(j)||
[];return{browser:j[1]||"",version:j[2]||"0"}},browser:{}});b.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(j,s){R["[object "+s+"]"]=s.toLowerCase()});m=b.uaMatch(m);if(m.browser){b.browser[m.browser]=true;b.browser.version=m.version}if(b.browser.webkit)b.browser.safari=true;if(D)b.inArray=function(j,s){return D.call(s,j)};if(!/\s/.test("\u00a0")){k=/^[\s\xA0]+/;o=/[\s\xA0]+$/}f=b(t);if(t.addEventListener)u=function(){t.removeEventListener("DOMContentLoaded",u,
false);b.ready()};else if(t.attachEvent)u=function(){if(t.readyState==="complete"){t.detachEvent("onreadystatechange",u);b.ready()}};return E.jQuery=E.$=b}();(function(){c.support={};var a=t.documentElement,b=t.createElement("script"),d=t.createElement("div"),e="script"+c.now();d.style.display="none";d.innerHTML=" <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";var f=d.getElementsByTagName("*"),h=d.getElementsByTagName("a")[0],l=t.createElement("select"),
k=l.appendChild(t.createElement("option"));if(!(!f||!f.length||!h)){c.support={leadingWhitespace:d.firstChild.nodeType===3,tbody:!d.getElementsByTagName("tbody").length,htmlSerialize:!!d.getElementsByTagName("link").length,style:/red/.test(h.getAttribute("style")),hrefNormalized:h.getAttribute("href")==="/a",opacity:/^0.55$/.test(h.style.opacity),cssFloat:!!h.style.cssFloat,checkOn:d.getElementsByTagName("input")[0].value==="on",optSelected:k.selected,deleteExpando:true,optDisabled:false,checkClone:false,
scriptEval:false,noCloneEvent:true,boxModel:null,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableHiddenOffsets:true};l.disabled=true;c.support.optDisabled=!k.disabled;b.type="text/javascript";try{b.appendChild(t.createTextNode("window."+e+"=1;"))}catch(o){}a.insertBefore(b,a.firstChild);if(E[e]){c.support.scriptEval=true;delete E[e]}try{delete b.test}catch(x){c.support.deleteExpando=false}a.removeChild(b);if(d.attachEvent&&d.fireEvent){d.attachEvent("onclick",function r(){c.support.noCloneEvent=
false;d.detachEvent("onclick",r)});d.cloneNode(true).fireEvent("onclick")}d=t.createElement("div");d.innerHTML="<input type='radio' name='radiotest' checked='checked'/>";a=t.createDocumentFragment();a.appendChild(d.firstChild);c.support.checkClone=a.cloneNode(true).cloneNode(true).lastChild.checked;c(function(){var r=t.createElement("div");r.style.width=r.style.paddingLeft="1px";t.body.appendChild(r);c.boxModel=c.support.boxModel=r.offsetWidth===2;if("zoom"in r.style){r.style.display="inline";r.style.zoom=
1;c.support.inlineBlockNeedsLayout=r.offsetWidth===2;r.style.display="";r.innerHTML="<div style='width:4px;'></div>";c.support.shrinkWrapBlocks=r.offsetWidth!==2}r.innerHTML="<table><tr><td style='padding:0;display:none'></td><td>t</td></tr></table>";var A=r.getElementsByTagName("td");c.support.reliableHiddenOffsets=A[0].offsetHeight===0;A[0].style.display="";A[1].style.display="none";c.support.reliableHiddenOffsets=c.support.reliableHiddenOffsets&&A[0].offsetHeight===0;r.innerHTML="";t.body.removeChild(r).style.display=
"none"});a=function(r){var A=t.createElement("div");r="on"+r;var C=r in A;if(!C){A.setAttribute(r,"return;");C=typeof A[r]==="function"}return C};c.support.submitBubbles=a("submit");c.support.changeBubbles=a("change");a=b=d=f=h=null}})();var ra={},Ja=/^(?:\{.*\}|\[.*\])$/;c.extend({cache:{},uuid:0,expando:"jQuery"+c.now(),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},data:function(a,b,d){if(c.acceptData(a)){a=a==E?ra:a;var e=a.nodeType,f=e?a[c.expando]:null,h=
c.cache;if(!(e&&!f&&typeof b==="string"&&d===B)){if(e)f||(a[c.expando]=f=++c.uuid);else h=a;if(typeof b==="object")if(e)h[f]=c.extend(h[f],b);else c.extend(h,b);else if(e&&!h[f])h[f]={};a=e?h[f]:h;if(d!==B)a[b]=d;return typeof b==="string"?a[b]:a}}},removeData:function(a,b){if(c.acceptData(a)){a=a==E?ra:a;var d=a.nodeType,e=d?a[c.expando]:a,f=c.cache,h=d?f[e]:e;if(b){if(h){delete h[b];d&&c.isEmptyObject(h)&&c.removeData(a)}}else if(d&&c.support.deleteExpando)delete a[c.expando];else if(a.removeAttribute)a.removeAttribute(c.expando);
else if(d)delete f[e];else for(var l in a)delete a[l]}},acceptData:function(a){if(a.nodeName){var b=c.noData[a.nodeName.toLowerCase()];if(b)return!(b===true||a.getAttribute("classid")!==b)}return true}});c.fn.extend({data:function(a,b){var d=null;if(typeof a==="undefined"){if(this.length){var e=this[0].attributes,f;d=c.data(this[0]);for(var h=0,l=e.length;h<l;h++){f=e[h].name;if(f.indexOf("data-")===0){f=f.substr(5);ka(this[0],f,d[f])}}}return d}else if(typeof a==="object")return this.each(function(){c.data(this,
a)});var k=a.split(".");k[1]=k[1]?"."+k[1]:"";if(b===B){d=this.triggerHandler("getData"+k[1]+"!",[k[0]]);if(d===B&&this.length){d=c.data(this[0],a);d=ka(this[0],a,d)}return d===B&&k[1]?this.data(k[0]):d}else return this.each(function(){var o=c(this),x=[k[0],b];o.triggerHandler("setData"+k[1]+"!",x);c.data(this,a,b);o.triggerHandler("changeData"+k[1]+"!",x)})},removeData:function(a){return this.each(function(){c.removeData(this,a)})}});c.extend({queue:function(a,b,d){if(a){b=(b||"fx")+"queue";var e=
c.data(a,b);if(!d)return e||[];if(!e||c.isArray(d))e=c.data(a,b,c.makeArray(d));else e.push(d);return e}},dequeue:function(a,b){b=b||"fx";var d=c.queue(a,b),e=d.shift();if(e==="inprogress")e=d.shift();if(e){b==="fx"&&d.unshift("inprogress");e.call(a,function(){c.dequeue(a,b)})}}});c.fn.extend({queue:function(a,b){if(typeof a!=="string"){b=a;a="fx"}if(b===B)return c.queue(this[0],a);return this.each(function(){var d=c.queue(this,a,b);a==="fx"&&d[0]!=="inprogress"&&c.dequeue(this,a)})},dequeue:function(a){return this.each(function(){c.dequeue(this,
a)})},delay:function(a,b){a=c.fx?c.fx.speeds[a]||a:a;b=b||"fx";return this.queue(b,function(){var d=this;setTimeout(function(){c.dequeue(d,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])}});var sa=/[\n\t]/g,ha=/\s+/,Sa=/\r/g,Ta=/^(?:href|src|style)$/,Ua=/^(?:button|input)$/i,Va=/^(?:button|input|object|select|textarea)$/i,Wa=/^a(?:rea)?$/i,ta=/^(?:radio|checkbox)$/i;c.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",
colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"};c.fn.extend({attr:function(a,b){return c.access(this,a,b,true,c.attr)},removeAttr:function(a){return this.each(function(){c.attr(this,a,"");this.nodeType===1&&this.removeAttribute(a)})},addClass:function(a){if(c.isFunction(a))return this.each(function(x){var r=c(this);r.addClass(a.call(this,x,r.attr("class")))});if(a&&typeof a==="string")for(var b=(a||"").split(ha),d=0,e=this.length;d<e;d++){var f=this[d];if(f.nodeType===
1)if(f.className){for(var h=" "+f.className+" ",l=f.className,k=0,o=b.length;k<o;k++)if(h.indexOf(" "+b[k]+" ")<0)l+=" "+b[k];f.className=c.trim(l)}else f.className=a}return this},removeClass:function(a){if(c.isFunction(a))return this.each(function(o){var x=c(this);x.removeClass(a.call(this,o,x.attr("class")))});if(a&&typeof a==="string"||a===B)for(var b=(a||"").split(ha),d=0,e=this.length;d<e;d++){var f=this[d];if(f.nodeType===1&&f.className)if(a){for(var h=(" "+f.className+" ").replace(sa," "),
l=0,k=b.length;l<k;l++)h=h.replace(" "+b[l]+" "," ");f.className=c.trim(h)}else f.className=""}return this},toggleClass:function(a,b){var d=typeof a,e=typeof b==="boolean";if(c.isFunction(a))return this.each(function(f){var h=c(this);h.toggleClass(a.call(this,f,h.attr("class"),b),b)});return this.each(function(){if(d==="string")for(var f,h=0,l=c(this),k=b,o=a.split(ha);f=o[h++];){k=e?k:!l.hasClass(f);l[k?"addClass":"removeClass"](f)}else if(d==="undefined"||d==="boolean"){this.className&&c.data(this,
"__className__",this.className);this.className=this.className||a===false?"":c.data(this,"__className__")||""}})},hasClass:function(a){a=" "+a+" ";for(var b=0,d=this.length;b<d;b++)if((" "+this[b].className+" ").replace(sa," ").indexOf(a)>-1)return true;return false},val:function(a){if(!arguments.length){var b=this[0];if(b){if(c.nodeName(b,"option")){var d=b.attributes.value;return!d||d.specified?b.value:b.text}if(c.nodeName(b,"select")){var e=b.selectedIndex;d=[];var f=b.options;b=b.type==="select-one";
if(e<0)return null;var h=b?e:0;for(e=b?e+1:f.length;h<e;h++){var l=f[h];if(l.selected&&(c.support.optDisabled?!l.disabled:l.getAttribute("disabled")===null)&&(!l.parentNode.disabled||!c.nodeName(l.parentNode,"optgroup"))){a=c(l).val();if(b)return a;d.push(a)}}return d}if(ta.test(b.type)&&!c.support.checkOn)return b.getAttribute("value")===null?"on":b.value;return(b.value||"").replace(Sa,"")}return B}var k=c.isFunction(a);return this.each(function(o){var x=c(this),r=a;if(this.nodeType===1){if(k)r=
a.call(this,o,x.val());if(r==null)r="";else if(typeof r==="number")r+="";else if(c.isArray(r))r=c.map(r,function(C){return C==null?"":C+""});if(c.isArray(r)&&ta.test(this.type))this.checked=c.inArray(x.val(),r)>=0;else if(c.nodeName(this,"select")){var A=c.makeArray(r);c("option",this).each(function(){this.selected=c.inArray(c(this).val(),A)>=0});if(!A.length)this.selectedIndex=-1}else this.value=r}})}});c.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},
attr:function(a,b,d,e){if(!a||a.nodeType===3||a.nodeType===8)return B;if(e&&b in c.attrFn)return c(a)[b](d);e=a.nodeType!==1||!c.isXMLDoc(a);var f=d!==B;b=e&&c.props[b]||b;var h=Ta.test(b);if((b in a||a[b]!==B)&&e&&!h){if(f){b==="type"&&Ua.test(a.nodeName)&&a.parentNode&&c.error("type property can't be changed");if(d===null)a.nodeType===1&&a.removeAttribute(b);else a[b]=d}if(c.nodeName(a,"form")&&a.getAttributeNode(b))return a.getAttributeNode(b).nodeValue;if(b==="tabIndex")return(b=a.getAttributeNode("tabIndex"))&&
b.specified?b.value:Va.test(a.nodeName)||Wa.test(a.nodeName)&&a.href?0:B;return a[b]}if(!c.support.style&&e&&b==="style"){if(f)a.style.cssText=""+d;return a.style.cssText}f&&a.setAttribute(b,""+d);if(!a.attributes[b]&&a.hasAttribute&&!a.hasAttribute(b))return B;a=!c.support.hrefNormalized&&e&&h?a.getAttribute(b,2):a.getAttribute(b);return a===null?B:a}});var X=/\.(.*)$/,ia=/^(?:textarea|input|select)$/i,La=/\./g,Ma=/ /g,Xa=/[^\w\s.|`]/g,Ya=function(a){return a.replace(Xa,"\\$&")},ua={focusin:0,focusout:0};
c.event={add:function(a,b,d,e){if(!(a.nodeType===3||a.nodeType===8)){if(c.isWindow(a)&&a!==E&&!a.frameElement)a=E;if(d===false)d=U;else if(!d)return;var f,h;if(d.handler){f=d;d=f.handler}if(!d.guid)d.guid=c.guid++;if(h=c.data(a)){var l=a.nodeType?"events":"__events__",k=h[l],o=h.handle;if(typeof k==="function"){o=k.handle;k=k.events}else if(!k){a.nodeType||(h[l]=h=function(){});h.events=k={}}if(!o)h.handle=o=function(){return typeof c!=="undefined"&&!c.event.triggered?c.event.handle.apply(o.elem,
arguments):B};o.elem=a;b=b.split(" ");for(var x=0,r;l=b[x++];){h=f?c.extend({},f):{handler:d,data:e};if(l.indexOf(".")>-1){r=l.split(".");l=r.shift();h.namespace=r.slice(0).sort().join(".")}else{r=[];h.namespace=""}h.type=l;if(!h.guid)h.guid=d.guid;var A=k[l],C=c.event.special[l]||{};if(!A){A=k[l]=[];if(!C.setup||C.setup.call(a,e,r,o)===false)if(a.addEventListener)a.addEventListener(l,o,false);else a.attachEvent&&a.attachEvent("on"+l,o)}if(C.add){C.add.call(a,h);if(!h.handler.guid)h.handler.guid=
d.guid}A.push(h);c.event.global[l]=true}a=null}}},global:{},remove:function(a,b,d,e){if(!(a.nodeType===3||a.nodeType===8)){if(d===false)d=U;var f,h,l=0,k,o,x,r,A,C,J=a.nodeType?"events":"__events__",w=c.data(a),I=w&&w[J];if(w&&I){if(typeof I==="function"){w=I;I=I.events}if(b&&b.type){d=b.handler;b=b.type}if(!b||typeof b==="string"&&b.charAt(0)==="."){b=b||"";for(f in I)c.event.remove(a,f+b)}else{for(b=b.split(" ");f=b[l++];){r=f;k=f.indexOf(".")<0;o=[];if(!k){o=f.split(".");f=o.shift();x=RegExp("(^|\\.)"+
c.map(o.slice(0).sort(),Ya).join("\\.(?:.*\\.)?")+"(\\.|$)")}if(A=I[f])if(d){r=c.event.special[f]||{};for(h=e||0;h<A.length;h++){C=A[h];if(d.guid===C.guid){if(k||x.test(C.namespace)){e==null&&A.splice(h--,1);r.remove&&r.remove.call(a,C)}if(e!=null)break}}if(A.length===0||e!=null&&A.length===1){if(!r.teardown||r.teardown.call(a,o)===false)c.removeEvent(a,f,w.handle);delete I[f]}}else for(h=0;h<A.length;h++){C=A[h];if(k||x.test(C.namespace)){c.event.remove(a,r,C.handler,h);A.splice(h--,1)}}}if(c.isEmptyObject(I)){if(b=
w.handle)b.elem=null;delete w.events;delete w.handle;if(typeof w==="function")c.removeData(a,J);else c.isEmptyObject(w)&&c.removeData(a)}}}}},trigger:function(a,b,d,e){var f=a.type||a;if(!e){a=typeof a==="object"?a[c.expando]?a:c.extend(c.Event(f),a):c.Event(f);if(f.indexOf("!")>=0){a.type=f=f.slice(0,-1);a.exclusive=true}if(!d){a.stopPropagation();c.event.global[f]&&c.each(c.cache,function(){this.events&&this.events[f]&&c.event.trigger(a,b,this.handle.elem)})}if(!d||d.nodeType===3||d.nodeType===
8)return B;a.result=B;a.target=d;b=c.makeArray(b);b.unshift(a)}a.currentTarget=d;(e=d.nodeType?c.data(d,"handle"):(c.data(d,"__events__")||{}).handle)&&e.apply(d,b);e=d.parentNode||d.ownerDocument;try{if(!(d&&d.nodeName&&c.noData[d.nodeName.toLowerCase()]))if(d["on"+f]&&d["on"+f].apply(d,b)===false){a.result=false;a.preventDefault()}}catch(h){}if(!a.isPropagationStopped()&&e)c.event.trigger(a,b,e,true);else if(!a.isDefaultPrevented()){var l;e=a.target;var k=f.replace(X,""),o=c.nodeName(e,"a")&&k===
"click",x=c.event.special[k]||{};if((!x._default||x._default.call(d,a)===false)&&!o&&!(e&&e.nodeName&&c.noData[e.nodeName.toLowerCase()])){try{if(e[k]){if(l=e["on"+k])e["on"+k]=null;c.event.triggered=true;e[k]()}}catch(r){}if(l)e["on"+k]=l;c.event.triggered=false}}},handle:function(a){var b,d,e,f;d=[];var h=c.makeArray(arguments);a=h[0]=c.event.fix(a||E.event);a.currentTarget=this;b=a.type.indexOf(".")<0&&!a.exclusive;if(!b){e=a.type.split(".");a.type=e.shift();d=e.slice(0).sort();e=RegExp("(^|\\.)"+
d.join("\\.(?:.*\\.)?")+"(\\.|$)")}a.namespace=a.namespace||d.join(".");f=c.data(this,this.nodeType?"events":"__events__");if(typeof f==="function")f=f.events;d=(f||{})[a.type];if(f&&d){d=d.slice(0);f=0;for(var l=d.length;f<l;f++){var k=d[f];if(b||e.test(k.namespace)){a.handler=k.handler;a.data=k.data;a.handleObj=k;k=k.handler.apply(this,h);if(k!==B){a.result=k;if(k===false){a.preventDefault();a.stopPropagation()}}if(a.isImmediatePropagationStopped())break}}}return a.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),
fix:function(a){if(a[c.expando])return a;var b=a;a=c.Event(b);for(var d=this.props.length,e;d;){e=this.props[--d];a[e]=b[e]}if(!a.target)a.target=a.srcElement||t;if(a.target.nodeType===3)a.target=a.target.parentNode;if(!a.relatedTarget&&a.fromElement)a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement;if(a.pageX==null&&a.clientX!=null){b=t.documentElement;d=t.body;a.pageX=a.clientX+(b&&b.scrollLeft||d&&d.scrollLeft||0)-(b&&b.clientLeft||d&&d.clientLeft||0);a.pageY=a.clientY+(b&&b.scrollTop||
d&&d.scrollTop||0)-(b&&b.clientTop||d&&d.clientTop||0)}if(a.which==null&&(a.charCode!=null||a.keyCode!=null))a.which=a.charCode!=null?a.charCode:a.keyCode;if(!a.metaKey&&a.ctrlKey)a.metaKey=a.ctrlKey;if(!a.which&&a.button!==B)a.which=a.button&1?1:a.button&2?3:a.button&4?2:0;return a},guid:1E8,proxy:c.proxy,special:{ready:{setup:c.bindReady,teardown:c.noop},live:{add:function(a){c.event.add(this,Y(a.origType,a.selector),c.extend({},a,{handler:Ka,guid:a.handler.guid}))},remove:function(a){c.event.remove(this,
Y(a.origType,a.selector),a)}},beforeunload:{setup:function(a,b,d){if(c.isWindow(this))this.onbeforeunload=d},teardown:function(a,b){if(this.onbeforeunload===b)this.onbeforeunload=null}}}};c.removeEvent=t.removeEventListener?function(a,b,d){a.removeEventListener&&a.removeEventListener(b,d,false)}:function(a,b,d){a.detachEvent&&a.detachEvent("on"+b,d)};c.Event=function(a){if(!this.preventDefault)return new c.Event(a);if(a&&a.type){this.originalEvent=a;this.type=a.type}else this.type=a;this.timeStamp=
c.now();this[c.expando]=true};c.Event.prototype={preventDefault:function(){this.isDefaultPrevented=ca;var a=this.originalEvent;if(a)if(a.preventDefault)a.preventDefault();else a.returnValue=false},stopPropagation:function(){this.isPropagationStopped=ca;var a=this.originalEvent;if(a){a.stopPropagation&&a.stopPropagation();a.cancelBubble=true}},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=ca;this.stopPropagation()},isDefaultPrevented:U,isPropagationStopped:U,isImmediatePropagationStopped:U};
var va=function(a){var b=a.relatedTarget;try{for(;b&&b!==this;)b=b.parentNode;if(b!==this){a.type=a.data;c.event.handle.apply(this,arguments)}}catch(d){}},wa=function(a){a.type=a.data;c.event.handle.apply(this,arguments)};c.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){c.event.special[a]={setup:function(d){c.event.add(this,b,d&&d.selector?wa:va,a)},teardown:function(d){c.event.remove(this,b,d&&d.selector?wa:va)}}});if(!c.support.submitBubbles)c.event.special.submit={setup:function(){if(this.nodeName.toLowerCase()!==
"form"){c.event.add(this,"click.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="submit"||d==="image")&&c(b).closest("form").length){a.liveFired=B;return la("submit",this,arguments)}});c.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="text"||d==="password")&&c(b).closest("form").length&&a.keyCode===13){a.liveFired=B;return la("submit",this,arguments)}})}else return false},teardown:function(){c.event.remove(this,".specialSubmit")}};if(!c.support.changeBubbles){var V,
xa=function(a){var b=a.type,d=a.value;if(b==="radio"||b==="checkbox")d=a.checked;else if(b==="select-multiple")d=a.selectedIndex>-1?c.map(a.options,function(e){return e.selected}).join("-"):"";else if(a.nodeName.toLowerCase()==="select")d=a.selectedIndex;return d},Z=function(a,b){var d=a.target,e,f;if(!(!ia.test(d.nodeName)||d.readOnly)){e=c.data(d,"_change_data");f=xa(d);if(a.type!=="focusout"||d.type!=="radio")c.data(d,"_change_data",f);if(!(e===B||f===e))if(e!=null||f){a.type="change";a.liveFired=
B;return c.event.trigger(a,b,d)}}};c.event.special.change={filters:{focusout:Z,beforedeactivate:Z,click:function(a){var b=a.target,d=b.type;if(d==="radio"||d==="checkbox"||b.nodeName.toLowerCase()==="select")return Z.call(this,a)},keydown:function(a){var b=a.target,d=b.type;if(a.keyCode===13&&b.nodeName.toLowerCase()!=="textarea"||a.keyCode===32&&(d==="checkbox"||d==="radio")||d==="select-multiple")return Z.call(this,a)},beforeactivate:function(a){a=a.target;c.data(a,"_change_data",xa(a))}},setup:function(){if(this.type===
"file")return false;for(var a in V)c.event.add(this,a+".specialChange",V[a]);return ia.test(this.nodeName)},teardown:function(){c.event.remove(this,".specialChange");return ia.test(this.nodeName)}};V=c.event.special.change.filters;V.focus=V.beforeactivate}t.addEventListener&&c.each({focus:"focusin",blur:"focusout"},function(a,b){function d(e){e=c.event.fix(e);e.type=b;return c.event.trigger(e,null,e.target)}c.event.special[b]={setup:function(){ua[b]++===0&&t.addEventListener(a,d,true)},teardown:function(){--ua[b]===
0&&t.removeEventListener(a,d,true)}}});c.each(["bind","one"],function(a,b){c.fn[b]=function(d,e,f){if(typeof d==="object"){for(var h in d)this[b](h,e,d[h],f);return this}if(c.isFunction(e)||e===false){f=e;e=B}var l=b==="one"?c.proxy(f,function(o){c(this).unbind(o,l);return f.apply(this,arguments)}):f;if(d==="unload"&&b!=="one")this.one(d,e,f);else{h=0;for(var k=this.length;h<k;h++)c.event.add(this[h],d,l,e)}return this}});c.fn.extend({unbind:function(a,b){if(typeof a==="object"&&!a.preventDefault)for(var d in a)this.unbind(d,
a[d]);else{d=0;for(var e=this.length;d<e;d++)c.event.remove(this[d],a,b)}return this},delegate:function(a,b,d,e){return this.live(b,d,e,a)},undelegate:function(a,b,d){return arguments.length===0?this.unbind("live"):this.die(b,null,d,a)},trigger:function(a,b){return this.each(function(){c.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0]){var d=c.Event(a);d.preventDefault();d.stopPropagation();c.event.trigger(d,b,this[0]);return d.result}},toggle:function(a){for(var b=arguments,d=
1;d<b.length;)c.proxy(a,b[d++]);return this.click(c.proxy(a,function(e){var f=(c.data(this,"lastToggle"+a.guid)||0)%d;c.data(this,"lastToggle"+a.guid,f+1);e.preventDefault();return b[f].apply(this,arguments)||false}))},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var ya={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};c.each(["live","die"],function(a,b){c.fn[b]=function(d,e,f,h){var l,k=0,o,x,r=h||this.selector;h=h?this:c(this.context);if(typeof d===
"object"&&!d.preventDefault){for(l in d)h[b](l,e,d[l],r);return this}if(c.isFunction(e)){f=e;e=B}for(d=(d||"").split(" ");(l=d[k++])!=null;){o=X.exec(l);x="";if(o){x=o[0];l=l.replace(X,"")}if(l==="hover")d.push("mouseenter"+x,"mouseleave"+x);else{o=l;if(l==="focus"||l==="blur"){d.push(ya[l]+x);l+=x}else l=(ya[l]||l)+x;if(b==="live"){x=0;for(var A=h.length;x<A;x++)c.event.add(h[x],"live."+Y(l,r),{data:e,selector:r,handler:f,origType:l,origHandler:f,preType:o})}else h.unbind("live."+Y(l,r),f)}}return this}});
c.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),function(a,b){c.fn[b]=function(d,e){if(e==null){e=d;d=null}return arguments.length>0?this.bind(b,d,e):this.trigger(b)};if(c.attrFn)c.attrFn[b]=true});E.attachEvent&&!E.addEventListener&&c(E).bind("unload",function(){for(var a in c.cache)if(c.cache[a].handle)try{c.event.remove(c.cache[a].handle.elem)}catch(b){}});
(function(){function a(g,i,n,m,p,q){p=0;for(var u=m.length;p<u;p++){var y=m[p];if(y){var F=false;for(y=y[g];y;){if(y.sizcache===n){F=m[y.sizset];break}if(y.nodeType===1&&!q){y.sizcache=n;y.sizset=p}if(y.nodeName.toLowerCase()===i){F=y;break}y=y[g]}m[p]=F}}}function b(g,i,n,m,p,q){p=0;for(var u=m.length;p<u;p++){var y=m[p];if(y){var F=false;for(y=y[g];y;){if(y.sizcache===n){F=m[y.sizset];break}if(y.nodeType===1){if(!q){y.sizcache=n;y.sizset=p}if(typeof i!=="string"){if(y===i){F=true;break}}else if(k.filter(i,
[y]).length>0){F=y;break}}y=y[g]}m[p]=F}}}var d=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,e=0,f=Object.prototype.toString,h=false,l=true;[0,0].sort(function(){l=false;return 0});var k=function(g,i,n,m){n=n||[];var p=i=i||t;if(i.nodeType!==1&&i.nodeType!==9)return[];if(!g||typeof g!=="string")return n;var q,u,y,F,M,N=true,O=k.isXML(i),D=[],R=g;do{d.exec("");if(q=d.exec(R)){R=q[3];D.push(q[1]);if(q[2]){F=q[3];
break}}}while(q);if(D.length>1&&x.exec(g))if(D.length===2&&o.relative[D[0]])u=L(D[0]+D[1],i);else for(u=o.relative[D[0]]?[i]:k(D.shift(),i);D.length;){g=D.shift();if(o.relative[g])g+=D.shift();u=L(g,u)}else{if(!m&&D.length>1&&i.nodeType===9&&!O&&o.match.ID.test(D[0])&&!o.match.ID.test(D[D.length-1])){q=k.find(D.shift(),i,O);i=q.expr?k.filter(q.expr,q.set)[0]:q.set[0]}if(i){q=m?{expr:D.pop(),set:C(m)}:k.find(D.pop(),D.length===1&&(D[0]==="~"||D[0]==="+")&&i.parentNode?i.parentNode:i,O);u=q.expr?k.filter(q.expr,
q.set):q.set;if(D.length>0)y=C(u);else N=false;for(;D.length;){q=M=D.pop();if(o.relative[M])q=D.pop();else M="";if(q==null)q=i;o.relative[M](y,q,O)}}else y=[]}y||(y=u);y||k.error(M||g);if(f.call(y)==="[object Array]")if(N)if(i&&i.nodeType===1)for(g=0;y[g]!=null;g++){if(y[g]&&(y[g]===true||y[g].nodeType===1&&k.contains(i,y[g])))n.push(u[g])}else for(g=0;y[g]!=null;g++)y[g]&&y[g].nodeType===1&&n.push(u[g]);else n.push.apply(n,y);else C(y,n);if(F){k(F,p,n,m);k.uniqueSort(n)}return n};k.uniqueSort=function(g){if(w){h=
l;g.sort(w);if(h)for(var i=1;i<g.length;i++)g[i]===g[i-1]&&g.splice(i--,1)}return g};k.matches=function(g,i){return k(g,null,null,i)};k.matchesSelector=function(g,i){return k(i,null,null,[g]).length>0};k.find=function(g,i,n){var m;if(!g)return[];for(var p=0,q=o.order.length;p<q;p++){var u,y=o.order[p];if(u=o.leftMatch[y].exec(g)){var F=u[1];u.splice(1,1);if(F.substr(F.length-1)!=="\\"){u[1]=(u[1]||"").replace(/\\/g,"");m=o.find[y](u,i,n);if(m!=null){g=g.replace(o.match[y],"");break}}}}m||(m=i.getElementsByTagName("*"));
return{set:m,expr:g}};k.filter=function(g,i,n,m){for(var p,q,u=g,y=[],F=i,M=i&&i[0]&&k.isXML(i[0]);g&&i.length;){for(var N in o.filter)if((p=o.leftMatch[N].exec(g))!=null&&p[2]){var O,D,R=o.filter[N];D=p[1];q=false;p.splice(1,1);if(D.substr(D.length-1)!=="\\"){if(F===y)y=[];if(o.preFilter[N])if(p=o.preFilter[N](p,F,n,y,m,M)){if(p===true)continue}else q=O=true;if(p)for(var j=0;(D=F[j])!=null;j++)if(D){O=R(D,p,j,F);var s=m^!!O;if(n&&O!=null)if(s)q=true;else F[j]=false;else if(s){y.push(D);q=true}}if(O!==
B){n||(F=y);g=g.replace(o.match[N],"");if(!q)return[];break}}}if(g===u)if(q==null)k.error(g);else break;u=g}return F};k.error=function(g){throw"Syntax error, unrecognized expression: "+g;};var o=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+\-]*)\))?/,
POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(g){return g.getAttribute("href")}},relative:{"+":function(g,i){var n=typeof i==="string",m=n&&!/\W/.test(i);n=n&&!m;if(m)i=i.toLowerCase();m=0;for(var p=g.length,q;m<p;m++)if(q=g[m]){for(;(q=q.previousSibling)&&q.nodeType!==1;);g[m]=n||q&&q.nodeName.toLowerCase()===
i?q||false:q===i}n&&k.filter(i,g,true)},">":function(g,i){var n,m=typeof i==="string",p=0,q=g.length;if(m&&!/\W/.test(i))for(i=i.toLowerCase();p<q;p++){if(n=g[p]){n=n.parentNode;g[p]=n.nodeName.toLowerCase()===i?n:false}}else{for(;p<q;p++)if(n=g[p])g[p]=m?n.parentNode:n.parentNode===i;m&&k.filter(i,g,true)}},"":function(g,i,n){var m,p=e++,q=b;if(typeof i==="string"&&!/\W/.test(i)){m=i=i.toLowerCase();q=a}q("parentNode",i,p,g,m,n)},"~":function(g,i,n){var m,p=e++,q=b;if(typeof i==="string"&&!/\W/.test(i)){m=
i=i.toLowerCase();q=a}q("previousSibling",i,p,g,m,n)}},find:{ID:function(g,i,n){if(typeof i.getElementById!=="undefined"&&!n)return(g=i.getElementById(g[1]))&&g.parentNode?[g]:[]},NAME:function(g,i){if(typeof i.getElementsByName!=="undefined"){for(var n=[],m=i.getElementsByName(g[1]),p=0,q=m.length;p<q;p++)m[p].getAttribute("name")===g[1]&&n.push(m[p]);return n.length===0?null:n}},TAG:function(g,i){return i.getElementsByTagName(g[1])}},preFilter:{CLASS:function(g,i,n,m,p,q){g=" "+g[1].replace(/\\/g,
"")+" ";if(q)return g;q=0;for(var u;(u=i[q])!=null;q++)if(u)if(p^(u.className&&(" "+u.className+" ").replace(/[\t\n]/g," ").indexOf(g)>=0))n||m.push(u);else if(n)i[q]=false;return false},ID:function(g){return g[1].replace(/\\/g,"")},TAG:function(g){return g[1].toLowerCase()},CHILD:function(g){if(g[1]==="nth"){var i=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(g[2]==="even"&&"2n"||g[2]==="odd"&&"2n+1"||!/\D/.test(g[2])&&"0n+"+g[2]||g[2]);g[2]=i[1]+(i[2]||1)-0;g[3]=i[3]-0}g[0]=e++;return g},ATTR:function(g,i,n,
m,p,q){i=g[1].replace(/\\/g,"");if(!q&&o.attrMap[i])g[1]=o.attrMap[i];if(g[2]==="~=")g[4]=" "+g[4]+" ";return g},PSEUDO:function(g,i,n,m,p){if(g[1]==="not")if((d.exec(g[3])||"").length>1||/^\w/.test(g[3]))g[3]=k(g[3],null,null,i);else{g=k.filter(g[3],i,n,true^p);n||m.push.apply(m,g);return false}else if(o.match.POS.test(g[0])||o.match.CHILD.test(g[0]))return true;return g},POS:function(g){g.unshift(true);return g}},filters:{enabled:function(g){return g.disabled===false&&g.type!=="hidden"},disabled:function(g){return g.disabled===
true},checked:function(g){return g.checked===true},selected:function(g){return g.selected===true},parent:function(g){return!!g.firstChild},empty:function(g){return!g.firstChild},has:function(g,i,n){return!!k(n[3],g).length},header:function(g){return/h\d/i.test(g.nodeName)},text:function(g){return"text"===g.type},radio:function(g){return"radio"===g.type},checkbox:function(g){return"checkbox"===g.type},file:function(g){return"file"===g.type},password:function(g){return"password"===g.type},submit:function(g){return"submit"===
g.type},image:function(g){return"image"===g.type},reset:function(g){return"reset"===g.type},button:function(g){return"button"===g.type||g.nodeName.toLowerCase()==="button"},input:function(g){return/input|select|textarea|button/i.test(g.nodeName)}},setFilters:{first:function(g,i){return i===0},last:function(g,i,n,m){return i===m.length-1},even:function(g,i){return i%2===0},odd:function(g,i){return i%2===1},lt:function(g,i,n){return i<n[3]-0},gt:function(g,i,n){return i>n[3]-0},nth:function(g,i,n){return n[3]-
0===i},eq:function(g,i,n){return n[3]-0===i}},filter:{PSEUDO:function(g,i,n,m){var p=i[1],q=o.filters[p];if(q)return q(g,n,i,m);else if(p==="contains")return(g.textContent||g.innerText||k.getText([g])||"").indexOf(i[3])>=0;else if(p==="not"){i=i[3];n=0;for(m=i.length;n<m;n++)if(i[n]===g)return false;return true}else k.error("Syntax error, unrecognized expression: "+p)},CHILD:function(g,i){var n=i[1],m=g;switch(n){case "only":case "first":for(;m=m.previousSibling;)if(m.nodeType===1)return false;if(n===
"first")return true;m=g;case "last":for(;m=m.nextSibling;)if(m.nodeType===1)return false;return true;case "nth":n=i[2];var p=i[3];if(n===1&&p===0)return true;var q=i[0],u=g.parentNode;if(u&&(u.sizcache!==q||!g.nodeIndex)){var y=0;for(m=u.firstChild;m;m=m.nextSibling)if(m.nodeType===1)m.nodeIndex=++y;u.sizcache=q}m=g.nodeIndex-p;return n===0?m===0:m%n===0&&m/n>=0}},ID:function(g,i){return g.nodeType===1&&g.getAttribute("id")===i},TAG:function(g,i){return i==="*"&&g.nodeType===1||g.nodeName.toLowerCase()===
i},CLASS:function(g,i){return(" "+(g.className||g.getAttribute("class"))+" ").indexOf(i)>-1},ATTR:function(g,i){var n=i[1];n=o.attrHandle[n]?o.attrHandle[n](g):g[n]!=null?g[n]:g.getAttribute(n);var m=n+"",p=i[2],q=i[4];return n==null?p==="!=":p==="="?m===q:p==="*="?m.indexOf(q)>=0:p==="~="?(" "+m+" ").indexOf(q)>=0:!q?m&&n!==false:p==="!="?m!==q:p==="^="?m.indexOf(q)===0:p==="$="?m.substr(m.length-q.length)===q:p==="|="?m===q||m.substr(0,q.length+1)===q+"-":false},POS:function(g,i,n,m){var p=o.setFilters[i[2]];
if(p)return p(g,n,i,m)}}},x=o.match.POS,r=function(g,i){return"\\"+(i-0+1)},A;for(A in o.match){o.match[A]=RegExp(o.match[A].source+/(?![^\[]*\])(?![^\(]*\))/.source);o.leftMatch[A]=RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[A].source.replace(/\\(\d+)/g,r))}var C=function(g,i){g=Array.prototype.slice.call(g,0);if(i){i.push.apply(i,g);return i}return g};try{Array.prototype.slice.call(t.documentElement.childNodes,0)}catch(J){C=function(g,i){var n=0,m=i||[];if(f.call(g)==="[object Array]")Array.prototype.push.apply(m,
g);else if(typeof g.length==="number")for(var p=g.length;n<p;n++)m.push(g[n]);else for(;g[n];n++)m.push(g[n]);return m}}var w,I;if(t.documentElement.compareDocumentPosition)w=function(g,i){if(g===i){h=true;return 0}if(!g.compareDocumentPosition||!i.compareDocumentPosition)return g.compareDocumentPosition?-1:1;return g.compareDocumentPosition(i)&4?-1:1};else{w=function(g,i){var n,m,p=[],q=[];n=g.parentNode;m=i.parentNode;var u=n;if(g===i){h=true;return 0}else if(n===m)return I(g,i);else if(n){if(!m)return 1}else return-1;
for(;u;){p.unshift(u);u=u.parentNode}for(u=m;u;){q.unshift(u);u=u.parentNode}n=p.length;m=q.length;for(u=0;u<n&&u<m;u++)if(p[u]!==q[u])return I(p[u],q[u]);return u===n?I(g,q[u],-1):I(p[u],i,1)};I=function(g,i,n){if(g===i)return n;for(g=g.nextSibling;g;){if(g===i)return-1;g=g.nextSibling}return 1}}k.getText=function(g){for(var i="",n,m=0;g[m];m++){n=g[m];if(n.nodeType===3||n.nodeType===4)i+=n.nodeValue;else if(n.nodeType!==8)i+=k.getText(n.childNodes)}return i};(function(){var g=t.createElement("div"),
i="script"+(new Date).getTime(),n=t.documentElement;g.innerHTML="<a name='"+i+"'/>";n.insertBefore(g,n.firstChild);if(t.getElementById(i)){o.find.ID=function(m,p,q){if(typeof p.getElementById!=="undefined"&&!q)return(p=p.getElementById(m[1]))?p.id===m[1]||typeof p.getAttributeNode!=="undefined"&&p.getAttributeNode("id").nodeValue===m[1]?[p]:B:[]};o.filter.ID=function(m,p){var q=typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id");return m.nodeType===1&&q&&q.nodeValue===p}}n.removeChild(g);
n=g=null})();(function(){var g=t.createElement("div");g.appendChild(t.createComment(""));if(g.getElementsByTagName("*").length>0)o.find.TAG=function(i,n){var m=n.getElementsByTagName(i[1]);if(i[1]==="*"){for(var p=[],q=0;m[q];q++)m[q].nodeType===1&&p.push(m[q]);m=p}return m};g.innerHTML="<a href='#'></a>";if(g.firstChild&&typeof g.firstChild.getAttribute!=="undefined"&&g.firstChild.getAttribute("href")!=="#")o.attrHandle.href=function(i){return i.getAttribute("href",2)};g=null})();t.querySelectorAll&&
function(){var g=k,i=t.createElement("div");i.innerHTML="<p class='TEST'></p>";if(!(i.querySelectorAll&&i.querySelectorAll(".TEST").length===0)){k=function(m,p,q,u){p=p||t;m=m.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!u&&!k.isXML(p))if(p.nodeType===9)try{return C(p.querySelectorAll(m),q)}catch(y){}else if(p.nodeType===1&&p.nodeName.toLowerCase()!=="object"){var F=p.getAttribute("id"),M=F||"__sizzle__";F||p.setAttribute("id",M);try{return C(p.querySelectorAll("#"+M+" "+m),q)}catch(N){}finally{F||
p.removeAttribute("id")}}return g(m,p,q,u)};for(var n in g)k[n]=g[n];i=null}}();(function(){var g=t.documentElement,i=g.matchesSelector||g.mozMatchesSelector||g.webkitMatchesSelector||g.msMatchesSelector,n=false;try{i.call(t.documentElement,"[test!='']:sizzle")}catch(m){n=true}if(i)k.matchesSelector=function(p,q){q=q.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!k.isXML(p))try{if(n||!o.match.PSEUDO.test(q)&&!/!=/.test(q))return i.call(p,q)}catch(u){}return k(q,null,null,[p]).length>0}})();(function(){var g=
t.createElement("div");g.innerHTML="<div class='test e'></div><div class='test'></div>";if(!(!g.getElementsByClassName||g.getElementsByClassName("e").length===0)){g.lastChild.className="e";if(g.getElementsByClassName("e").length!==1){o.order.splice(1,0,"CLASS");o.find.CLASS=function(i,n,m){if(typeof n.getElementsByClassName!=="undefined"&&!m)return n.getElementsByClassName(i[1])};g=null}}})();k.contains=t.documentElement.contains?function(g,i){return g!==i&&(g.contains?g.contains(i):true)}:t.documentElement.compareDocumentPosition?
function(g,i){return!!(g.compareDocumentPosition(i)&16)}:function(){return false};k.isXML=function(g){return(g=(g?g.ownerDocument||g:0).documentElement)?g.nodeName!=="HTML":false};var L=function(g,i){for(var n,m=[],p="",q=i.nodeType?[i]:i;n=o.match.PSEUDO.exec(g);){p+=n[0];g=g.replace(o.match.PSEUDO,"")}g=o.relative[g]?g+"*":g;n=0;for(var u=q.length;n<u;n++)k(g,q[n],m);return k.filter(p,m)};c.find=k;c.expr=k.selectors;c.expr[":"]=c.expr.filters;c.unique=k.uniqueSort;c.text=k.getText;c.isXMLDoc=k.isXML;
c.contains=k.contains})();var Za=/Until$/,$a=/^(?:parents|prevUntil|prevAll)/,ab=/,/,Na=/^.[^:#\[\.,]*$/,bb=Array.prototype.slice,cb=c.expr.match.POS;c.fn.extend({find:function(a){for(var b=this.pushStack("","find",a),d=0,e=0,f=this.length;e<f;e++){d=b.length;c.find(a,this[e],b);if(e>0)for(var h=d;h<b.length;h++)for(var l=0;l<d;l++)if(b[l]===b[h]){b.splice(h--,1);break}}return b},has:function(a){var b=c(a);return this.filter(function(){for(var d=0,e=b.length;d<e;d++)if(c.contains(this,b[d]))return true})},
not:function(a){return this.pushStack(ma(this,a,false),"not",a)},filter:function(a){return this.pushStack(ma(this,a,true),"filter",a)},is:function(a){return!!a&&c.filter(a,this).length>0},closest:function(a,b){var d=[],e,f,h=this[0];if(c.isArray(a)){var l,k={},o=1;if(h&&a.length){e=0;for(f=a.length;e<f;e++){l=a[e];k[l]||(k[l]=c.expr.match.POS.test(l)?c(l,b||this.context):l)}for(;h&&h.ownerDocument&&h!==b;){for(l in k){e=k[l];if(e.jquery?e.index(h)>-1:c(h).is(e))d.push({selector:l,elem:h,level:o})}h=
h.parentNode;o++}}return d}l=cb.test(a)?c(a,b||this.context):null;e=0;for(f=this.length;e<f;e++)for(h=this[e];h;)if(l?l.index(h)>-1:c.find.matchesSelector(h,a)){d.push(h);break}else{h=h.parentNode;if(!h||!h.ownerDocument||h===b)break}d=d.length>1?c.unique(d):d;return this.pushStack(d,"closest",a)},index:function(a){if(!a||typeof a==="string")return c.inArray(this[0],a?c(a):this.parent().children());return c.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var d=typeof a==="string"?c(a,b||this.context):
c.makeArray(a),e=c.merge(this.get(),d);return this.pushStack(!d[0]||!d[0].parentNode||d[0].parentNode.nodeType===11||!e[0]||!e[0].parentNode||e[0].parentNode.nodeType===11?e:c.unique(e))},andSelf:function(){return this.add(this.prevObject)}});c.each({parent:function(a){return(a=a.parentNode)&&a.nodeType!==11?a:null},parents:function(a){return c.dir(a,"parentNode")},parentsUntil:function(a,b,d){return c.dir(a,"parentNode",d)},next:function(a){return c.nth(a,2,"nextSibling")},prev:function(a){return c.nth(a,
2,"previousSibling")},nextAll:function(a){return c.dir(a,"nextSibling")},prevAll:function(a){return c.dir(a,"previousSibling")},nextUntil:function(a,b,d){return c.dir(a,"nextSibling",d)},prevUntil:function(a,b,d){return c.dir(a,"previousSibling",d)},siblings:function(a){return c.sibling(a.parentNode.firstChild,a)},children:function(a){return c.sibling(a.firstChild)},contents:function(a){return c.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:c.makeArray(a.childNodes)}},function(a,
b){c.fn[a]=function(d,e){var f=c.map(this,b,d);Za.test(a)||(e=d);if(e&&typeof e==="string")f=c.filter(e,f);f=this.length>1?c.unique(f):f;if((this.length>1||ab.test(e))&&$a.test(a))f=f.reverse();return this.pushStack(f,a,bb.call(arguments).join(","))}});c.extend({filter:function(a,b,d){if(d)a=":not("+a+")";return b.length===1?c.find.matchesSelector(b[0],a)?[b[0]]:[]:c.find.matches(a,b)},dir:function(a,b,d){var e=[];for(a=a[b];a&&a.nodeType!==9&&(d===B||a.nodeType!==1||!c(a).is(d));){a.nodeType===1&&
e.push(a);a=a[b]}return e},nth:function(a,b,d){b=b||1;for(var e=0;a;a=a[d])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){for(var d=[];a;a=a.nextSibling)a.nodeType===1&&a!==b&&d.push(a);return d}});var za=/ jQuery\d+="(?:\d+|null)"/g,$=/^\s+/,Aa=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Ba=/<([\w:]+)/,db=/<tbody/i,eb=/<|&#?\w+;/,Ca=/<(?:script|object|embed|option|style)/i,Da=/checked\s*(?:[^=]|=\s*.checked.)/i,fb=/\=([^="'>\s]+\/)>/g,P={option:[1,
"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};P.optgroup=P.option;P.tbody=P.tfoot=P.colgroup=P.caption=P.thead;P.th=P.td;if(!c.support.htmlSerialize)P._default=[1,"div<div>","</div>"];c.fn.extend({text:function(a){if(c.isFunction(a))return this.each(function(b){var d=
c(this);d.text(a.call(this,b,d.text()))});if(typeof a!=="object"&&a!==B)return this.empty().append((this[0]&&this[0].ownerDocument||t).createTextNode(a));return c.text(this)},wrapAll:function(a){if(c.isFunction(a))return this.each(function(d){c(this).wrapAll(a.call(this,d))});if(this[0]){var b=c(a,this[0].ownerDocument).eq(0).clone(true);this[0].parentNode&&b.insertBefore(this[0]);b.map(function(){for(var d=this;d.firstChild&&d.firstChild.nodeType===1;)d=d.firstChild;return d}).append(this)}return this},
wrapInner:function(a){if(c.isFunction(a))return this.each(function(b){c(this).wrapInner(a.call(this,b))});return this.each(function(){var b=c(this),d=b.contents();d.length?d.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){c(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){c.nodeName(this,"body")||c(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.appendChild(a)})},
prepend:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this)});else if(arguments.length){var a=c(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,
this.nextSibling)});else if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,c(arguments[0]).toArray());return a}},remove:function(a,b){for(var d=0,e;(e=this[d])!=null;d++)if(!a||c.filter(a,[e]).length){if(!b&&e.nodeType===1){c.cleanData(e.getElementsByTagName("*"));c.cleanData([e])}e.parentNode&&e.parentNode.removeChild(e)}return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++)for(b.nodeType===1&&c.cleanData(b.getElementsByTagName("*"));b.firstChild;)b.removeChild(b.firstChild);
return this},clone:function(a){var b=this.map(function(){if(!c.support.noCloneEvent&&!c.isXMLDoc(this)){var d=this.outerHTML,e=this.ownerDocument;if(!d){d=e.createElement("div");d.appendChild(this.cloneNode(true));d=d.innerHTML}return c.clean([d.replace(za,"").replace(fb,'="$1">').replace($,"")],e)[0]}else return this.cloneNode(true)});if(a===true){na(this,b);na(this.find("*"),b.find("*"))}return b},html:function(a){if(a===B)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(za,""):null;
else if(typeof a==="string"&&!Ca.test(a)&&(c.support.leadingWhitespace||!$.test(a))&&!P[(Ba.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Aa,"<$1></$2>");try{for(var b=0,d=this.length;b<d;b++)if(this[b].nodeType===1){c.cleanData(this[b].getElementsByTagName("*"));this[b].innerHTML=a}}catch(e){this.empty().append(a)}}else c.isFunction(a)?this.each(function(f){var h=c(this);h.html(a.call(this,f,h.html()))}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(c.isFunction(a))return this.each(function(b){var d=
c(this),e=d.html();d.replaceWith(a.call(this,b,e))});if(typeof a!=="string")a=c(a).detach();return this.each(function(){var b=this.nextSibling,d=this.parentNode;c(this).remove();b?c(b).before(a):c(d).append(a)})}else return this.pushStack(c(c.isFunction(a)?a():a),"replaceWith",a)},detach:function(a){return this.remove(a,true)},domManip:function(a,b,d){var e,f,h,l=a[0],k=[];if(!c.support.checkClone&&arguments.length===3&&typeof l==="string"&&Da.test(l))return this.each(function(){c(this).domManip(a,
b,d,true)});if(c.isFunction(l))return this.each(function(x){var r=c(this);a[0]=l.call(this,x,b?r.html():B);r.domManip(a,b,d)});if(this[0]){e=l&&l.parentNode;e=c.support.parentNode&&e&&e.nodeType===11&&e.childNodes.length===this.length?{fragment:e}:c.buildFragment(a,this,k);h=e.fragment;if(f=h.childNodes.length===1?h=h.firstChild:h.firstChild){b=b&&c.nodeName(f,"tr");f=0;for(var o=this.length;f<o;f++)d.call(b?c.nodeName(this[f],"table")?this[f].getElementsByTagName("tbody")[0]||this[f].appendChild(this[f].ownerDocument.createElement("tbody")):
this[f]:this[f],f>0||e.cacheable||this.length>1?h.cloneNode(true):h)}k.length&&c.each(k,Oa)}return this}});c.buildFragment=function(a,b,d){var e,f,h;b=b&&b[0]?b[0].ownerDocument||b[0]:t;if(a.length===1&&typeof a[0]==="string"&&a[0].length<512&&b===t&&!Ca.test(a[0])&&(c.support.checkClone||!Da.test(a[0]))){f=true;if(h=c.fragments[a[0]])if(h!==1)e=h}if(!e){e=b.createDocumentFragment();c.clean(a,b,e,d)}if(f)c.fragments[a[0]]=h?e:1;return{fragment:e,cacheable:f}};c.fragments={};c.each({appendTo:"append",
prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){c.fn[a]=function(d){var e=[];d=c(d);var f=this.length===1&&this[0].parentNode;if(f&&f.nodeType===11&&f.childNodes.length===1&&d.length===1){d[b](this[0]);return this}else{f=0;for(var h=d.length;f<h;f++){var l=(f>0?this.clone(true):this).get();c(d[f])[b](l);e=e.concat(l)}return this.pushStack(e,a,d.selector)}}});c.extend({clean:function(a,b,d,e){b=b||t;if(typeof b.createElement==="undefined")b=b.ownerDocument||
b[0]&&b[0].ownerDocument||t;for(var f=[],h=0,l;(l=a[h])!=null;h++){if(typeof l==="number")l+="";if(l){if(typeof l==="string"&&!eb.test(l))l=b.createTextNode(l);else if(typeof l==="string"){l=l.replace(Aa,"<$1></$2>");var k=(Ba.exec(l)||["",""])[1].toLowerCase(),o=P[k]||P._default,x=o[0],r=b.createElement("div");for(r.innerHTML=o[1]+l+o[2];x--;)r=r.lastChild;if(!c.support.tbody){x=db.test(l);k=k==="table"&&!x?r.firstChild&&r.firstChild.childNodes:o[1]==="<table>"&&!x?r.childNodes:[];for(o=k.length-
1;o>=0;--o)c.nodeName(k[o],"tbody")&&!k[o].childNodes.length&&k[o].parentNode.removeChild(k[o])}!c.support.leadingWhitespace&&$.test(l)&&r.insertBefore(b.createTextNode($.exec(l)[0]),r.firstChild);l=r.childNodes}if(l.nodeType)f.push(l);else f=c.merge(f,l)}}if(d)for(h=0;f[h];h++)if(e&&c.nodeName(f[h],"script")&&(!f[h].type||f[h].type.toLowerCase()==="text/javascript"))e.push(f[h].parentNode?f[h].parentNode.removeChild(f[h]):f[h]);else{f[h].nodeType===1&&f.splice.apply(f,[h+1,0].concat(c.makeArray(f[h].getElementsByTagName("script"))));
d.appendChild(f[h])}return f},cleanData:function(a){for(var b,d,e=c.cache,f=c.event.special,h=c.support.deleteExpando,l=0,k;(k=a[l])!=null;l++)if(!(k.nodeName&&c.noData[k.nodeName.toLowerCase()]))if(d=k[c.expando]){if((b=e[d])&&b.events)for(var o in b.events)f[o]?c.event.remove(k,o):c.removeEvent(k,o,b.handle);if(h)delete k[c.expando];else k.removeAttribute&&k.removeAttribute(c.expando);delete e[d]}}});var Ea=/alpha\([^)]*\)/i,gb=/opacity=([^)]*)/,hb=/-([a-z])/ig,ib=/([A-Z])/g,Fa=/^-?\d+(?:px)?$/i,
jb=/^-?\d/,kb={position:"absolute",visibility:"hidden",display:"block"},Pa=["Left","Right"],Qa=["Top","Bottom"],W,Ga,aa,lb=function(a,b){return b.toUpperCase()};c.fn.css=function(a,b){if(arguments.length===2&&b===B)return this;return c.access(this,a,b,true,function(d,e,f){return f!==B?c.style(d,e,f):c.css(d,e)})};c.extend({cssHooks:{opacity:{get:function(a,b){if(b){var d=W(a,"opacity","opacity");return d===""?"1":d}else return a.style.opacity}}},cssNumber:{zIndex:true,fontWeight:true,opacity:true,
zoom:true,lineHeight:true},cssProps:{"float":c.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,b,d,e){if(!(!a||a.nodeType===3||a.nodeType===8||!a.style)){var f,h=c.camelCase(b),l=a.style,k=c.cssHooks[h];b=c.cssProps[h]||h;if(d!==B){if(!(typeof d==="number"&&isNaN(d)||d==null)){if(typeof d==="number"&&!c.cssNumber[h])d+="px";if(!k||!("set"in k)||(d=k.set(a,d))!==B)try{l[b]=d}catch(o){}}}else{if(k&&"get"in k&&(f=k.get(a,false,e))!==B)return f;return l[b]}}},css:function(a,b,d){var e,f=c.camelCase(b),
h=c.cssHooks[f];b=c.cssProps[f]||f;if(h&&"get"in h&&(e=h.get(a,true,d))!==B)return e;else if(W)return W(a,b,f)},swap:function(a,b,d){var e={},f;for(f in b){e[f]=a.style[f];a.style[f]=b[f]}d.call(a);for(f in b)a.style[f]=e[f]},camelCase:function(a){return a.replace(hb,lb)}});c.curCSS=c.css;c.each(["height","width"],function(a,b){c.cssHooks[b]={get:function(d,e,f){var h;if(e){if(d.offsetWidth!==0)h=oa(d,b,f);else c.swap(d,kb,function(){h=oa(d,b,f)});if(h<=0){h=W(d,b,b);if(h==="0px"&&aa)h=aa(d,b,b);
if(h!=null)return h===""||h==="auto"?"0px":h}if(h<0||h==null){h=d.style[b];return h===""||h==="auto"?"0px":h}return typeof h==="string"?h:h+"px"}},set:function(d,e){if(Fa.test(e)){e=parseFloat(e);if(e>=0)return e+"px"}else return e}}});if(!c.support.opacity)c.cssHooks.opacity={get:function(a,b){return gb.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var d=a.style;d.zoom=1;var e=c.isNaN(b)?"":"alpha(opacity="+b*100+")",f=
d.filter||"";d.filter=Ea.test(f)?f.replace(Ea,e):d.filter+" "+e}};if(t.defaultView&&t.defaultView.getComputedStyle)Ga=function(a,b,d){var e;d=d.replace(ib,"-$1").toLowerCase();if(!(b=a.ownerDocument.defaultView))return B;if(b=b.getComputedStyle(a,null)){e=b.getPropertyValue(d);if(e===""&&!c.contains(a.ownerDocument.documentElement,a))e=c.style(a,d)}return e};if(t.documentElement.currentStyle)aa=function(a,b){var d,e,f=a.currentStyle&&a.currentStyle[b],h=a.style;if(!Fa.test(f)&&jb.test(f)){d=h.left;
e=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;h.left=b==="fontSize"?"1em":f||0;f=h.pixelLeft+"px";h.left=d;a.runtimeStyle.left=e}return f===""?"auto":f};W=Ga||aa;if(c.expr&&c.expr.filters){c.expr.filters.hidden=function(a){var b=a.offsetHeight;return a.offsetWidth===0&&b===0||!c.support.reliableHiddenOffsets&&(a.style.display||c.css(a,"display"))==="none"};c.expr.filters.visible=function(a){return!c.expr.filters.hidden(a)}}var mb=c.now(),nb=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,
ob=/^(?:select|textarea)/i,pb=/^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,qb=/^(?:GET|HEAD)$/,Ra=/\[\]$/,T=/\=\?(&|$)/,ja=/\?/,rb=/([?&])_=[^&]*/,sb=/^(\w+:)?\/\/([^\/?#]+)/,tb=/%20/g,ub=/#.*$/,Ha=c.fn.load;c.fn.extend({load:function(a,b,d){if(typeof a!=="string"&&Ha)return Ha.apply(this,arguments);else if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var f=a.slice(e,a.length);a=a.slice(0,e)}e="GET";if(b)if(c.isFunction(b)){d=b;b=null}else if(typeof b===
"object"){b=c.param(b,c.ajaxSettings.traditional);e="POST"}var h=this;c.ajax({url:a,type:e,dataType:"html",data:b,complete:function(l,k){if(k==="success"||k==="notmodified")h.html(f?c("<div>").append(l.responseText.replace(nb,"")).find(f):l.responseText);d&&h.each(d,[l.responseText,k,l])}});return this},serialize:function(){return c.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?c.makeArray(this.elements):this}).filter(function(){return this.name&&
!this.disabled&&(this.checked||ob.test(this.nodeName)||pb.test(this.type))}).map(function(a,b){var d=c(this).val();return d==null?null:c.isArray(d)?c.map(d,function(e){return{name:b.name,value:e}}):{name:b.name,value:d}}).get()}});c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){c.fn[b]=function(d){return this.bind(b,d)}});c.extend({get:function(a,b,d,e){if(c.isFunction(b)){e=e||d;d=b;b=null}return c.ajax({type:"GET",url:a,data:b,success:d,dataType:e})},
getScript:function(a,b){return c.get(a,null,b,"script")},getJSON:function(a,b,d){return c.get(a,b,d,"json")},post:function(a,b,d,e){if(c.isFunction(b)){e=e||d;d=b;b={}}return c.ajax({type:"POST",url:a,data:b,success:d,dataType:e})},ajaxSetup:function(a){c.extend(c.ajaxSettings,a)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return new E.XMLHttpRequest},accepts:{xml:"application/xml, text/xml",html:"text/html",
script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},ajax:function(a){var b=c.extend(true,{},c.ajaxSettings,a),d,e,f,h=b.type.toUpperCase(),l=qb.test(h);b.url=b.url.replace(ub,"");b.context=a&&a.context!=null?a.context:b;if(b.data&&b.processData&&typeof b.data!=="string")b.data=c.param(b.data,b.traditional);if(b.dataType==="jsonp"){if(h==="GET")T.test(b.url)||(b.url+=(ja.test(b.url)?"&":"?")+(b.jsonp||"callback")+"=?");else if(!b.data||
!T.test(b.data))b.data=(b.data?b.data+"&":"")+(b.jsonp||"callback")+"=?";b.dataType="json"}if(b.dataType==="json"&&(b.data&&T.test(b.data)||T.test(b.url))){d=b.jsonpCallback||"jsonp"+mb++;if(b.data)b.data=(b.data+"").replace(T,"="+d+"$1");b.url=b.url.replace(T,"="+d+"$1");b.dataType="script";var k=E[d];E[d]=function(m){if(c.isFunction(k))k(m);else{E[d]=B;try{delete E[d]}catch(p){}}f=m;c.handleSuccess(b,w,e,f);c.handleComplete(b,w,e,f);r&&r.removeChild(A)}}if(b.dataType==="script"&&b.cache===null)b.cache=
false;if(b.cache===false&&l){var o=c.now(),x=b.url.replace(rb,"$1_="+o);b.url=x+(x===b.url?(ja.test(b.url)?"&":"?")+"_="+o:"")}if(b.data&&l)b.url+=(ja.test(b.url)?"&":"?")+b.data;b.global&&c.active++===0&&c.event.trigger("ajaxStart");o=(o=sb.exec(b.url))&&(o[1]&&o[1].toLowerCase()!==location.protocol||o[2].toLowerCase()!==location.host);if(b.dataType==="script"&&h==="GET"&&o){var r=t.getElementsByTagName("head")[0]||t.documentElement,A=t.createElement("script");if(b.scriptCharset)A.charset=b.scriptCharset;
A.src=b.url;if(!d){var C=false;A.onload=A.onreadystatechange=function(){if(!C&&(!this.readyState||this.readyState==="loaded"||this.readyState==="complete")){C=true;c.handleSuccess(b,w,e,f);c.handleComplete(b,w,e,f);A.onload=A.onreadystatechange=null;r&&A.parentNode&&r.removeChild(A)}}}r.insertBefore(A,r.firstChild);return B}var J=false,w=b.xhr();if(w){b.username?w.open(h,b.url,b.async,b.username,b.password):w.open(h,b.url,b.async);try{if(b.data!=null&&!l||a&&a.contentType)w.setRequestHeader("Content-Type",
b.contentType);if(b.ifModified){c.lastModified[b.url]&&w.setRequestHeader("If-Modified-Since",c.lastModified[b.url]);c.etag[b.url]&&w.setRequestHeader("If-None-Match",c.etag[b.url])}o||w.setRequestHeader("X-Requested-With","XMLHttpRequest");w.setRequestHeader("Accept",b.dataType&&b.accepts[b.dataType]?b.accepts[b.dataType]+", */*; q=0.01":b.accepts._default)}catch(I){}if(b.beforeSend&&b.beforeSend.call(b.context,w,b)===false){b.global&&c.active--===1&&c.event.trigger("ajaxStop");w.abort();return false}b.global&&
c.triggerGlobal(b,"ajaxSend",[w,b]);var L=w.onreadystatechange=function(m){if(!w||w.readyState===0||m==="abort"){J||c.handleComplete(b,w,e,f);J=true;if(w)w.onreadystatechange=c.noop}else if(!J&&w&&(w.readyState===4||m==="timeout")){J=true;w.onreadystatechange=c.noop;e=m==="timeout"?"timeout":!c.httpSuccess(w)?"error":b.ifModified&&c.httpNotModified(w,b.url)?"notmodified":"success";var p;if(e==="success")try{f=c.httpData(w,b.dataType,b)}catch(q){e="parsererror";p=q}if(e==="success"||e==="notmodified")d||
c.handleSuccess(b,w,e,f);else c.handleError(b,w,e,p);d||c.handleComplete(b,w,e,f);m==="timeout"&&w.abort();if(b.async)w=null}};try{var g=w.abort;w.abort=function(){w&&Function.prototype.call.call(g,w);L("abort")}}catch(i){}b.async&&b.timeout>0&&setTimeout(function(){w&&!J&&L("timeout")},b.timeout);try{w.send(l||b.data==null?null:b.data)}catch(n){c.handleError(b,w,null,n);c.handleComplete(b,w,e,f)}b.async||L();return w}},param:function(a,b){var d=[],e=function(h,l){l=c.isFunction(l)?l():l;d[d.length]=
encodeURIComponent(h)+"="+encodeURIComponent(l)};if(b===B)b=c.ajaxSettings.traditional;if(c.isArray(a)||a.jquery)c.each(a,function(){e(this.name,this.value)});else for(var f in a)da(f,a[f],b,e);return d.join("&").replace(tb,"+")}});c.extend({active:0,lastModified:{},etag:{},handleError:function(a,b,d,e){a.error&&a.error.call(a.context,b,d,e);a.global&&c.triggerGlobal(a,"ajaxError",[b,a,e])},handleSuccess:function(a,b,d,e){a.success&&a.success.call(a.context,e,d,b);a.global&&c.triggerGlobal(a,"ajaxSuccess",
[b,a])},handleComplete:function(a,b,d){a.complete&&a.complete.call(a.context,b,d);a.global&&c.triggerGlobal(a,"ajaxComplete",[b,a]);a.global&&c.active--===1&&c.event.trigger("ajaxStop")},triggerGlobal:function(a,b,d){(a.context&&a.context.url==null?c(a.context):c.event).trigger(b,d)},httpSuccess:function(a){try{return!a.status&&location.protocol==="file:"||a.status>=200&&a.status<300||a.status===304||a.status===1223}catch(b){}return false},httpNotModified:function(a,b){var d=a.getResponseHeader("Last-Modified"),
e=a.getResponseHeader("Etag");if(d)c.lastModified[b]=d;if(e)c.etag[b]=e;return a.status===304},httpData:function(a,b,d){var e=a.getResponseHeader("content-type")||"",f=b==="xml"||!b&&e.indexOf("xml")>=0;a=f?a.responseXML:a.responseText;f&&a.documentElement.nodeName==="parsererror"&&c.error("parsererror");if(d&&d.dataFilter)a=d.dataFilter(a,b);if(typeof a==="string")if(b==="json"||!b&&e.indexOf("json")>=0)a=c.parseJSON(a);else if(b==="script"||!b&&e.indexOf("javascript")>=0)c.globalEval(a);return a}});
if(E.ActiveXObject)c.ajaxSettings.xhr=function(){if(E.location.protocol!=="file:")try{return new E.XMLHttpRequest}catch(a){}try{return new E.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}};c.support.ajax=!!c.ajaxSettings.xhr();var ea={},vb=/^(?:toggle|show|hide)$/,wb=/^([+\-]=)?([\d+.\-]+)(.*)$/,ba,pa=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];c.fn.extend({show:function(a,b,d){if(a||a===0)return this.animate(S("show",
3),a,b,d);else{d=0;for(var e=this.length;d<e;d++){a=this[d];b=a.style.display;if(!c.data(a,"olddisplay")&&b==="none")b=a.style.display="";b===""&&c.css(a,"display")==="none"&&c.data(a,"olddisplay",qa(a.nodeName))}for(d=0;d<e;d++){a=this[d];b=a.style.display;if(b===""||b==="none")a.style.display=c.data(a,"olddisplay")||""}return this}},hide:function(a,b,d){if(a||a===0)return this.animate(S("hide",3),a,b,d);else{a=0;for(b=this.length;a<b;a++){d=c.css(this[a],"display");d!=="none"&&c.data(this[a],"olddisplay",
d)}for(a=0;a<b;a++)this[a].style.display="none";return this}},_toggle:c.fn.toggle,toggle:function(a,b,d){var e=typeof a==="boolean";if(c.isFunction(a)&&c.isFunction(b))this._toggle.apply(this,arguments);else a==null||e?this.each(function(){var f=e?a:c(this).is(":hidden");c(this)[f?"show":"hide"]()}):this.animate(S("toggle",3),a,b,d);return this},fadeTo:function(a,b,d,e){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,d,e)},animate:function(a,b,d,e){var f=c.speed(b,
d,e);if(c.isEmptyObject(a))return this.each(f.complete);return this[f.queue===false?"each":"queue"](function(){var h=c.extend({},f),l,k=this.nodeType===1,o=k&&c(this).is(":hidden"),x=this;for(l in a){var r=c.camelCase(l);if(l!==r){a[r]=a[l];delete a[l];l=r}if(a[l]==="hide"&&o||a[l]==="show"&&!o)return h.complete.call(this);if(k&&(l==="height"||l==="width")){h.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY];if(c.css(this,"display")==="inline"&&c.css(this,"float")==="none")if(c.support.inlineBlockNeedsLayout)if(qa(this.nodeName)===
"inline")this.style.display="inline-block";else{this.style.display="inline";this.style.zoom=1}else this.style.display="inline-block"}if(c.isArray(a[l])){(h.specialEasing=h.specialEasing||{})[l]=a[l][1];a[l]=a[l][0]}}if(h.overflow!=null)this.style.overflow="hidden";h.curAnim=c.extend({},a);c.each(a,function(A,C){var J=new c.fx(x,h,A);if(vb.test(C))J[C==="toggle"?o?"show":"hide":C](a);else{var w=wb.exec(C),I=J.cur()||0;if(w){var L=parseFloat(w[2]),g=w[3]||"px";if(g!=="px"){c.style(x,A,(L||1)+g);I=(L||
1)/J.cur()*I;c.style(x,A,I+g)}if(w[1])L=(w[1]==="-="?-1:1)*L+I;J.custom(I,L,g)}else J.custom(I,C,"")}});return true})},stop:function(a,b){var d=c.timers;a&&this.queue([]);this.each(function(){for(var e=d.length-1;e>=0;e--)if(d[e].elem===this){b&&d[e](true);d.splice(e,1)}});b||this.dequeue();return this}});c.each({slideDown:S("show",1),slideUp:S("hide",1),slideToggle:S("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){c.fn[a]=function(d,e,f){return this.animate(b,
d,e,f)}});c.extend({speed:function(a,b,d){var e=a&&typeof a==="object"?c.extend({},a):{complete:d||!d&&b||c.isFunction(a)&&a,duration:a,easing:d&&b||b&&!c.isFunction(b)&&b};e.duration=c.fx.off?0:typeof e.duration==="number"?e.duration:e.duration in c.fx.speeds?c.fx.speeds[e.duration]:c.fx.speeds._default;e.old=e.complete;e.complete=function(){e.queue!==false&&c(this).dequeue();c.isFunction(e.old)&&e.old.call(this)};return e},easing:{linear:function(a,b,d,e){return d+e*a},swing:function(a,b,d,e){return(-Math.cos(a*
Math.PI)/2+0.5)*e+d}},timers:[],fx:function(a,b,d){this.options=b;this.elem=a;this.prop=d;if(!b.orig)b.orig={}}});c.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this);(c.fx.step[this.prop]||c.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a=parseFloat(c.css(this.elem,this.prop));return a&&a>-1E4?a:0},custom:function(a,b,d){function e(l){return f.step(l)}
var f=this,h=c.fx;this.startTime=c.now();this.start=a;this.end=b;this.unit=d||this.unit||"px";this.now=this.start;this.pos=this.state=0;e.elem=this.elem;if(e()&&c.timers.push(e)&&!ba)ba=setInterval(h.tick,h.interval)},show:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.show=true;this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur());c(this.elem).show()},hide:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.hide=true;
this.custom(this.cur(),0)},step:function(a){var b=c.now(),d=true;if(a||b>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;for(var e in this.options.curAnim)if(this.options.curAnim[e]!==true)d=false;if(d){if(this.options.overflow!=null&&!c.support.shrinkWrapBlocks){var f=this.elem,h=this.options;c.each(["","X","Y"],function(k,o){f.style["overflow"+o]=h.overflow[k]})}this.options.hide&&c(this.elem).hide();if(this.options.hide||
this.options.show)for(var l in this.options.curAnim)c.style(this.elem,l,this.options.orig[l]);this.options.complete.call(this.elem)}return false}else{a=b-this.startTime;this.state=a/this.options.duration;b=this.options.easing||(c.easing.swing?"swing":"linear");this.pos=c.easing[this.options.specialEasing&&this.options.specialEasing[this.prop]||b](this.state,a,0,1,this.options.duration);this.now=this.start+(this.end-this.start)*this.pos;this.update()}return true}};c.extend(c.fx,{tick:function(){for(var a=
c.timers,b=0;b<a.length;b++)a[b]()||a.splice(b--,1);a.length||c.fx.stop()},interval:13,stop:function(){clearInterval(ba);ba=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){c.style(a.elem,"opacity",a.now)},_default:function(a){if(a.elem.style&&a.elem.style[a.prop]!=null)a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit;else a.elem[a.prop]=a.now}}});if(c.expr&&c.expr.filters)c.expr.filters.animated=function(a){return c.grep(c.timers,function(b){return a===
b.elem}).length};var xb=/^t(?:able|d|h)$/i,Ia=/^(?:body|html)$/i;c.fn.offset="getBoundingClientRect"in t.documentElement?function(a){var b=this[0],d;if(a)return this.each(function(l){c.offset.setOffset(this,a,l)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);try{d=b.getBoundingClientRect()}catch(e){}var f=b.ownerDocument,h=f.documentElement;if(!d||!c.contains(h,b))return d||{top:0,left:0};b=f.body;f=fa(f);return{top:d.top+(f.pageYOffset||c.support.boxModel&&
h.scrollTop||b.scrollTop)-(h.clientTop||b.clientTop||0),left:d.left+(f.pageXOffset||c.support.boxModel&&h.scrollLeft||b.scrollLeft)-(h.clientLeft||b.clientLeft||0)}}:function(a){var b=this[0];if(a)return this.each(function(x){c.offset.setOffset(this,a,x)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);c.offset.initialize();var d,e=b.offsetParent,f=b.ownerDocument,h=f.documentElement,l=f.body;d=(f=f.defaultView)?f.getComputedStyle(b,null):b.currentStyle;
for(var k=b.offsetTop,o=b.offsetLeft;(b=b.parentNode)&&b!==l&&b!==h;){if(c.offset.supportsFixedPosition&&d.position==="fixed")break;d=f?f.getComputedStyle(b,null):b.currentStyle;k-=b.scrollTop;o-=b.scrollLeft;if(b===e){k+=b.offsetTop;o+=b.offsetLeft;if(c.offset.doesNotAddBorder&&!(c.offset.doesAddBorderForTableAndCells&&xb.test(b.nodeName))){k+=parseFloat(d.borderTopWidth)||0;o+=parseFloat(d.borderLeftWidth)||0}e=b.offsetParent}if(c.offset.subtractsBorderForOverflowNotVisible&&d.overflow!=="visible"){k+=
parseFloat(d.borderTopWidth)||0;o+=parseFloat(d.borderLeftWidth)||0}d=d}if(d.position==="relative"||d.position==="static"){k+=l.offsetTop;o+=l.offsetLeft}if(c.offset.supportsFixedPosition&&d.position==="fixed"){k+=Math.max(h.scrollTop,l.scrollTop);o+=Math.max(h.scrollLeft,l.scrollLeft)}return{top:k,left:o}};c.offset={initialize:function(){var a=t.body,b=t.createElement("div"),d,e,f,h=parseFloat(c.css(a,"marginTop"))||0;c.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",
height:"1px",visibility:"hidden"});b.innerHTML="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";a.insertBefore(b,a.firstChild);d=b.firstChild;e=d.firstChild;f=d.nextSibling.firstChild.firstChild;this.doesNotAddBorder=e.offsetTop!==5;this.doesAddBorderForTableAndCells=
f.offsetTop===5;e.style.position="fixed";e.style.top="20px";this.supportsFixedPosition=e.offsetTop===20||e.offsetTop===15;e.style.position=e.style.top="";d.style.overflow="hidden";d.style.position="relative";this.subtractsBorderForOverflowNotVisible=e.offsetTop===-5;this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==h;a.removeChild(b);c.offset.initialize=c.noop},bodyOffset:function(a){var b=a.offsetTop,d=a.offsetLeft;c.offset.initialize();if(c.offset.doesNotIncludeMarginInBodyOffset){b+=parseFloat(c.css(a,
"marginTop"))||0;d+=parseFloat(c.css(a,"marginLeft"))||0}return{top:b,left:d}},setOffset:function(a,b,d){var e=c.css(a,"position");if(e==="static")a.style.position="relative";var f=c(a),h=f.offset(),l=c.css(a,"top"),k=c.css(a,"left"),o=e==="absolute"&&c.inArray("auto",[l,k])>-1;e={};var x={};if(o)x=f.position();l=o?x.top:parseInt(l,10)||0;k=o?x.left:parseInt(k,10)||0;if(c.isFunction(b))b=b.call(a,d,h);if(b.top!=null)e.top=b.top-h.top+l;if(b.left!=null)e.left=b.left-h.left+k;"using"in b?b.using.call(a,
e):f.css(e)}};c.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),d=this.offset(),e=Ia.test(b[0].nodeName)?{top:0,left:0}:b.offset();d.top-=parseFloat(c.css(a,"marginTop"))||0;d.left-=parseFloat(c.css(a,"marginLeft"))||0;e.top+=parseFloat(c.css(b[0],"borderTopWidth"))||0;e.left+=parseFloat(c.css(b[0],"borderLeftWidth"))||0;return{top:d.top-e.top,left:d.left-e.left}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||t.body;a&&!Ia.test(a.nodeName)&&
c.css(a,"position")==="static";)a=a.offsetParent;return a})}});c.each(["Left","Top"],function(a,b){var d="scroll"+b;c.fn[d]=function(e){var f=this[0],h;if(!f)return null;if(e!==B)return this.each(function(){if(h=fa(this))h.scrollTo(!a?e:c(h).scrollLeft(),a?e:c(h).scrollTop());else this[d]=e});else return(h=fa(f))?"pageXOffset"in h?h[a?"pageYOffset":"pageXOffset"]:c.support.boxModel&&h.document.documentElement[d]||h.document.body[d]:f[d]}});c.each(["Height","Width"],function(a,b){var d=b.toLowerCase();
c.fn["inner"+b]=function(){return this[0]?parseFloat(c.css(this[0],d,"padding")):null};c.fn["outer"+b]=function(e){return this[0]?parseFloat(c.css(this[0],d,e?"margin":"border")):null};c.fn[d]=function(e){var f=this[0];if(!f)return e==null?null:this;if(c.isFunction(e))return this.each(function(l){var k=c(this);k[d](e.call(this,l,k[d]()))});if(c.isWindow(f))return f.document.compatMode==="CSS1Compat"&&f.document.documentElement["client"+b]||f.document.body["client"+b];else if(f.nodeType===9)return Math.max(f.documentElement["client"+
b],f.body["scroll"+b],f.documentElement["scroll"+b],f.body["offset"+b],f.documentElement["offset"+b]);else if(e===B){f=c.css(f,d);var h=parseFloat(f);return c.isNaN(h)?f:h}else return this.css(d,typeof e==="string"?e:e+"px")}})})(window);

View File

@@ -0,0 +1 @@
var _msg_pop_height=240;function _message_node(id){return document.getElementById(id)}function _message_child(p,c){var pdom=_message_node(p);var nodes=pdom.childNodes;var cdom=false;for(var i=0;i<nodes.length;i++){if(nodes[i].tagName==c.toUpperCase()){cdom=nodes[i];break}}return cdom}function _message_child_attr_add(p,id,type){var pdom=_message_node(p);var nodes=pdom.getElementsByTagName("a");var fn=function(){_msg_item_click_count(id,type)};for(var i=0;i<nodes.length;i++){url=nodes[i].href;if(url.toLowerCase().indexOf("http://")==0||url.toLowerCase().indexOf("https://")==0){if(nodes[i].addEventListener){nodes[i].addEventListener("click",fn,false)}else{if(nodes[i].attachEvent){nodes[i].attachEvent("onclick",fn)}}}}}function _message_callScript(url,loaded,error,charset){var script=document.createElement("script");if(typeof charset=="string"){script.charset=charset}script.onreadystatechange=function(){switch(this.readyState){case"complete":case"loaded":if(typeof loaded=="function"){loaded()}if(script.parentNode){script.parentNode.removeChild(script)}break}};script.onload=function(){if(typeof loaded=="function"){loaded()}if(script.parentNode){script.parentNode.removeChild(script)}};script.onerror=function(){if(typeof error=="function"){error()}if(script.parentNode){script.parentNode.removeChild(script)}};script.type="text/javascript";script.defer="true";script.src=url;var parent=document.getElementsByTagName("HEAD")[0]||document.documentElement;if(parent&&parent.insertBefore){parent.insertBefore(script,parent.firstChild)}}function _message_tips_pop(act){var MsgPop=_message_child("_popup_msg_container","div");var MsgPop=null==MsgPop?document.getElementById("_popup_msg_container"):MsgPop;var popH=parseInt(MsgPop.clientHeight);if(act=="up"){MsgPop.style.display="block";show=setInterval("_message_changeH('up')",5)}if(act=="down"){hide=setInterval("_message_changeH('down')",5)}}function _message_changeH(str){var MsgPop=_message_child("_popup_msg_container","div");var MsgPop=null==MsgPop?document.getElementById("_popup_msg_container"):MsgPop;var popH=parseInt(MsgPop.clientHeight);if(str=="up"){if(popH<_msg_pop_height){MsgPop.style.height=(popH+2).toString()+"px"}else{clearInterval(show)}}if(str=="down"){if(popH>=2){MsgPop.style.height=(popH-4).toString()+"px"}else{MsgPop.style.display="none";clearInterval(hide)}}}var _msg_server="message.csdn.net";if(_message_get_search_args("_msg_local")==1){_msg_server="local.message.csdn.net"}var p="1=1";if(window.location.search.indexOf("?")>-1){var p=window.location.search.substring(1)}function _msg_item_click_count(id,type){var pv=document.createElement("img");var rand=Math.ceil(Math.random()*10000);pv.src="http://"+_msg_server+"/shm/count_click.php?id="+id+"&t="+type+"#"+rand;pv.style.display="none";document.body.appendChild(pv)}function _message_callback(data){if(data.id>0){var css=document.createElement("link");css.href=data.css;css.rel="stylesheet";css.type="text/css";document.body.appendChild(css);var container=document.createElement("div");container.style.display="block";container.id="_popup_msg_container";container.innerHTML=data.content;document.body.appendChild(container);if(!data.no_count_click){_message_child_attr_add("_popup_msg_container",data.id,data.types)}var MsgPop=_message_child("_popup_msg_container","div");if(MsgPop){spheight=MsgPop.getAttribute("height");if(spheight){spheight=spheight.replace("px","");if(isNaN(spheight)==false){_msg_pop_height=spheight}}MsgPop.style.display="none";MsgPop.style.height="0px"}setTimeout("_message_tips_pop('up')",100);if(!data.no_count_view){var pv=document.createElement("img");pv.src="http://"+_msg_server+"/shm/count_new.php?id="+data.id+"&t="+data.types;pv.style.display="none";document.body.appendChild(pv)}}}function _message_get_search_args(qkey){var args=new Object();var query=document.location.search.substring(1);var ret="";var pairs=query.split("&");for(var i=0;i<pairs.length;i++){var pos=pairs[i].indexOf("=");if(pos==-1){continue}var argname=pairs[i].substring(0,pos);var value=pairs[i].substring(pos+1);args[argname]=unescape(value);ret=unescape(value);break}return ret}window.onload=function(){_message_callScript("http://"+_msg_server+"/shm/msg_new.php?"+p+"&jsoncallback=_message_callback")};

View File

@@ -0,0 +1,38 @@
body{/*margin:0; padding:0;*/}
/* public top */
.nav_top_2011{width:auto; min-width:960px; height:27px; margin:0 0 1px 0; padding:0; /*border-bottom:1px solid #ccc;*/ background:#fff; font:normal 12px/28px Helvetica, Tahoma, Arial, sans-serif;}
/* login information */
.nav_top_2011 p{float:right; margin:0; padding:0; text-align:right;}
.nav_top_2011 p a:link,
.nav_top_2011 p a:visited{margin:0 9px; color:#333; text-decoration:none;}
.nav_top_2011 p a:hover,
.nav_top_2011 p a:active{color:#f00; text-decoration:none;}
.nav_top_2011 p em{padding:0 6px; color:#f00; font-style:normal; font-weight:bold;}
.nav_top_2011 p a.notice_num{/*display:inline-block;*/ width:auto; height:11px; /*overflow:hidden;*/ margin:0 20px 0 0; padding:2px 6px; border-radius:3px; -webkit-border-radius:3px; -moz-border-radius:3px; -khtml-border-radius:3px; background:#ddd; color:#666 !important; font-size:11px; line-height:11px; text-decoration:none;}
.nav_top_2011 p a.user{color:#f00; font-weight:bold; text-decoration:none;}
.nav_top_2011 p a.red{color:#f00;}
/* channel */
.nav_top_2011 ul{float:left; margin:0; padding:0 0 0 9px; text-align:left;}
.nav_top_2011 ul li{float:left; margin-left:0; padding:0 19px 0 0; list-style:none;}
.nav_top_2011 ul li a{display:inline-block; width:auto; height:28px; padding:0;}
.nav_top_2011 ul li a:link,
.nav_top_2011 ul li a:visited{color:#333; text-decoration:none;}
.nav_top_2011 ul li a:hover,
.nav_top_2011 ul li a:active{color:#f00; text-decoration:none;}
.nav_top_2011 ul li.more{position:relative; z-index:501; width:auto; margin-left:-10px; text-align:left; font-weight:normal;}
.nav_top_2011 ul li.more a{width:34px; padding:0 10px; background:url(http://csdnimg.cn/pubnav/images/arrow_drop.gif) no-repeat 38px 12px; font-weight:normal;}
.nav_top_2011 ul li.more a.open{height:28px; padding:0 9px; border-right:solid 1px #ccc; border-left:solid 1px #ccc;}
.nav_top_2011 ul li.more h2{position:relative; z-index:501; margin:0; font-weight:normal !important; font-size:12px; line-height:28px;}
.nav_top_2011 ul li.more h2.open{height:28px; padding:0 5px 0 9px; border-right:solid 1px #ccc; border-left:solid 1px #ccc; background:#fff;}
.nav_top_2011 ul li.more h2.open a{width:41px; height:28px; padding:0; background:#fff url(http://csdnimg.cn/pubnav/images/arrow_drop.gif) no-repeat 28px 12px;}
.nav_top_2011 ul li dl,
.nav_top_2011 ul li ul{display:none; position:absolute; top:27px; left:0; z-index:500; width:65px; margin:0; padding:2px 8px 0; border:1px solid #ccc; /*border-top:none;*/ background:#fff;}
.nav_top_2011 ul li dt{margin:0; padding:0;}
.nav_top_2011 ul li dt a{width:34px; background:url(http://csdnimg.cn/pubnav/images/arrow_drop.gif) no-repeat 38px 12px;}
.nav_top_2011 ul li dd,
.nav_top_2011 ul li li{display:block; float:none; margin:0; padding:0; line-height:24px;}
.nav_top_2011 ul li.more dd a,
.nav_top_2011 ul li.more li a{display:block; width:auto; padding:0; background:none;}

View File

@@ -0,0 +1,117 @@
;(function($){
$.fn.extend({
selection: function () {
var selectedValue = '';
var me = this[0];
if (document.selection) {
var range = document.selection.createRange();
selectedValue = range.text;
}
else if (typeof (me.selectionStart) == 'number') {
var start = me.selectionStart;
var end = me.selectionEnd;
if (start != end) {
selectedValue = me.value.substring(start, end);
}
}
return $.trim(selectedValue);
},
parseHtml: function (val) {
var me = this[0];
var value = $(this).val();
if (document.selection) {
var range = document.selection.createRange();
if(range.text){
range.text = val;
}else{
$(this).val(value + val);
}
}else if (typeof (me.selectionStart) == 'number') {
var start = me.selectionStart;
var end = me.selectionEnd;
var startVal = value.substring(0, start);
var endVal = value.substring(end);
$(this).val(startVal + val + endVal);
}
else
$(this).val(value + val);
me.selectionStart = me.selectionEnd = $(this).val().length;
me.focus();
}
});
})(jQuery);
jQuery.cookie = function(name, value, options) {
if (typeof value != 'undefined') { // name and value given, set cookie
options = options || {};
if (value === null) {
value = '';
options.expires = -1;
}
var expires = '';
if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
var date;
if (typeof options.expires == 'number') {
date = new Date();
date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));
} else {
date = options.expires;
}
expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE
}
// CAUTION: Needed to parenthesize options.path and options.domain
// in the following expressions, otherwise they evaluate to undefined
// in the packed version for some reason...
var path = options.path ? '; path=' + (options.path) : '';
var domain = options.domain ? '; domain=' + (options.domain) : '';
var secure = options.secure ? '; secure' : '';
document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
} else { // only name given, get cookie
var cookieValue = null;
if (document.cookie && document.cookie != '') {
var cookies = document.cookie.split(';');
for (var i = 0; i < cookies.length; i++) {
var cookie = jQuery.trim(cookies[i]);
// Does this cookie string begin with the name we want?
if (cookie.substring(0, name.length + 1) == (name + '=')) {
cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
break;
}
}
}
return cookieValue;
}
};
//创建遮罩层
jQuery.createMask = function () {
var height = document.documentElement.clientHeight;
var width = document.documentElement.clientWidth;
var bodyHeight = $("body").height();
if (bodyHeight > height) {
height = bodyHeight;
}
var mask = {};
if ($("#mask_div").length == 0) {
$("body").append('<div id="mask_div" style="position:absolute;top:0;left:0;filter:alpha(opacity=20);-moz-opacity:0.2;opacity:.2;"></div>')
}
mask = $("#mask_div");
mask.css({ "width": width, "height": height, "background": "#000" });
};
//移除遮罩层
jQuery.removeMask = function () {
$("#mask_div").remove();
};
Array.prototype.contain = function(val){
for(var i=0;i<this.length;i++){
if(this[i] === val){
return true;
}
}
return false;
}

View File

@@ -0,0 +1,10 @@
/*pub_footer*/
.pub_footerall{clear:both; width:auto; overflow:hidden; margin:10px auto; /*padding:3px 6px;*/ padding:0; border-top:1px solid #ccc; color:#333; font:normal 12px/24px Helvetica, Tahoma, Arial, sans-serif; text-align:center;}
.pub_footerall dl{padding:3px 0 3px; overflow:hidden; margin:0; /*font-family:simsun;*/}
.pub_footerall dd a{padding:0 9px; margin:0;}
.pub_footerall dd a:link, .pub_footerall dd a:visited, .pub_footerall dd a:active{color:#333; text-decoration:none;}
.pub_footerall dd a:hover{/*color:#015FB6;*/ color:#f00;}
.pub_footerall dd img{border:0; vertical-align:middle;}
.pub_footerall dt {padding-top:5px; margin:0; text-align:center;}
.pub_footerall dt a{display:inline; margin:5px; padding:0;}
.pub_footerall dt a img{/*width:115px; height:45px;*/ width:19px; height:24px; border:1px solid #ccc; vertical-align:middle;}

View File

@@ -0,0 +1,82 @@
document.writeln("<link rel=\"stylesheet\" type=\"text\/css\" href=\"http://csdnimg.cn/pubnav/css/navtop_2012.css\" \/>");
document.writeln("<div class=\"nav_top_2011\">");
var p__un = document.cookie.match(new RegExp("(^| )UserName=([^;]*)(;|$)"));
if (p__un) {
document.write('<p>欢迎<em>' + p__un[2] + '</em><a href="http://my.csdn.net/my/notifications" class="notice_num" id="header_notice_num"></a>我的:<a href="http://my.csdn.net/my/letter">收件箱<span id="header_letter_num"></span></a><a href="http://download.csdn.net/my" class="red">资源</a><a href="http://write.blog.csdn.net/" class="red">博客</a><a href="http://my.csdn.net">空间</a><a href="http://passport.csdn.net/account/profile">设置</a>|<a href="http://passport.csdn.net/help/faq">帮助</a>|<a href="http://passport.csdn.net/account/logout">退出</a></p>');
} else {
document.write('<p><span style="color:red;">您还未登录!</span>|<a href="http://passport.csdn.net/account/login">登录</a>|<a href="http://passport.csdn.net/account/register">注册</a>|<a href="http://passport.csdn.net/help/faq">帮助</a></p>');
}
document.writeln("<ul>");
document.writeln("<li><a href=\"http:\/\/www.csdn.net\/\" target=\"_blank\">CSDN首页<\/a><\/li>");
document.writeln("<li><a href=\"http:\/\/news.csdn.net\/\" target=\"_blank\">资讯<\/a><\/li>");
document.writeln("<li><a href=\"http:\/\/bbs.csdn.net\/\" target=\"_blank\">论坛<\/a><\/li>");
document.writeln("<li><a href=\"http:\/\/blog.csdn.net\/\" target=\"_blank\">博客<\/a><\/li>");
document.writeln("<li><a href=\"http:\/\/download.csdn.net\/\" target=\"_blank\">下载<\/a><\/li>");
document.writeln("<li><a href=\"http:\/\/so.csdn.net\/\" target=\"_blank\">搜索<\/a><\/li>");
document.writeln("<li class=\"more\" ><h2 id=\"topnav_btnmore\" onclick=\"showNavMore(this)\"><a href=\"javascript:void(0);\">更多<\/a><\/h2>");
document.writeln("<ul id=\"topnav_hidlist\">");
document.writeln("<li><a href=\"http:\/\/cto.csdn.net\/\" target=\"_blank\">CTO俱乐部<\/a><\/li>");
document.writeln("<li><a href=\"http:\/\/student.csdn.net\/\" target=\"_blank\">学生大本营<\/a><\/li>");
document.writeln("<li><a href=\"http:\/\/edu.csdn.net\/\" target=\"_blank\">培训充电<\/a><\/li>");
document.writeln("<li><a href=\"http:\/\/mobile.csdn.net\/\" target=\"_blank\">移动开发<\/a><\/li>");
document.writeln("<li><a href=\"http:\/\/sd.csdn.net\/\" target=\"_blank\">软件研发<\/a><\/li>");
document.writeln("<li><a href=\"http:\/\/cloud.csdn.net\/\" target=\"_blank\">云计算<\/a><\/li>");
document.writeln("<li><a href=\"http:\/\/www.programmer.com.cn\/\" target=\"_blank\">程序员<\/a><\/li>");
document.writeln("<li><a href=\"http:\/\/www.iteye.com\/\" target=\"_blank\">ITeye<\/a><\/li>");
document.writeln("<li><a href=\"http:\/\/tup.csdn.net\/\" target=\"_blank\">TUP<\/a><\/li>");
document.writeln("<\/ul>");
document.writeln("<\/li>");
document.writeln("<\/ul>");
document.writeln("<\/div>");
function showNavMore(e){
var hidList = document.getElementById("topnav_hidlist");
var isshow = hidList.style.display == "block";
hidList.style.display = isshow?"none":"block";
e.className = isshow?"":"open";
e.firstChild.blur();
if(document.body.onclick==null){
document.body.onclick = function(event){
event = event || window.event;
var target = event.target || event.srcElement;
if(target.parentNode && target.parentNode.id == 'topnav_btnmore'){
return;
}
if(target.id != 'topnav_btnmore'){
document.getElementById("topnav_hidlist").style.display = "none";
document.getElementById("topnav_btnmore").className = "";
}
};
}
}
// Google code
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-535605-6']);
_gaq.push(['_setDomainName', 'csdn.net']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
function csdnShowSpaceNotify(data){
if(parseInt(data.n)>0){
document.getElementById("header_notice_num").innerHTML = data.n;
}else{
document.getElementById("header_notice_num").innerHTML = 0;
}
if(parseInt(data.l)>0){
document.getElementById("header_letter_num").innerHTML = ""+data.l+"";
}
}
if (p__un) {
(function() {
var ca = document.createElement('script'); ca.type = 'text/javascript'; ca.async = true;
ca.src = 'http://my.csdn.net/index.php/service/notifications/getnl?jsonpcallback=csdnShowSpaceNotify';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ca, s);
})();
}

View File

@@ -0,0 +1,14 @@
document.write("<link rel='stylesheet' type='text/css' href='http://csdnimg.cn/pubfooter/css/pub_footer_2012.css' />");
document.write("<div class='pub_footerall'>");
document.write("<dl>");
document.write("<dt></dt>");
document.write(" <dd><a href='http://www.csdn.net/company/about.html' target='_blank'>公司简介</a>|<a href='http://www.csdn.net/company/recruit.html' target='_blank'>招贤纳士</a>|<a href='http://www.csdn.net/company/marketing.html' target='_blank'>广告服务</a>|<a href='http://www.csdn.net/company/account.html' target='_blank'>银行汇款帐号</a>|<a href='http://www.csdn.net/company/contact.html' target='_blank'>联系方式</a>|<a href='http://www.csdn.net/company/statement.html' target='_blank'>版权声明</a>|<a href='http://www.csdn.net/company/layer.html' target='_blank'>法律顾问</a>|<a href='mailto:webmaster@csdn.net'>问题报告</a></dd>");
document.write("<dd>京&nbsp;ICP&nbsp;证&nbsp;070598&nbsp;号</dd>");
document.write("<dd>北京创新乐知信息技术有限公司 版权所有</dd>");
//document.write("<dd>世纪乐知(北京)网络技术有限公司 提供技术支持</dd>");
//document.write("<dd>江苏乐知网络技术有限公司 提供商务支持</dd>");
document.write("<dd><img src='http://csdnimg.cn/pubfooter/images/ico_email.gif' alt='' title='' /> 联系邮箱webmaster@csdn.net</dd>");
document.write("<dd>Copyright &copy; 1999-2012, CSDN.NET, All Rights Reserved&nbsp;<a href='http://www.hd315.gov.cn/beian/view.asp?bianhao=010202001032100010' target='_blank'><img src='http://csdnimg.cn/pubfooter/images/gongshang_logos.gif' alt='GongshangLogo' alt='' title='' /></a></dd>");
//document.write("<dd><a href='http://www.hd315.gov.cn/beian/view.asp?bianhao=010202001032100010' target='_blank'><img src='http://www.csdn.net/ui/images/gongshang_logos.gif' alt='GongshangLogo' alt='' title='' /></a></dd>");
document.write("</dl>");
document.write("</div>");

View File

@@ -0,0 +1,332 @@
var a, dp = {
sh: {
Toolbar: {},
Utils: {},
RegexLib: {},
Brushes: {},
Strings: { AboutDialog: '<html><head><title>About...</title></head><body class="dp-about"><table cellspacing="0"><tr><td class="copy"><p class="title">dp.SyntaxHighlighter</div><div class="para">Version: {V}</p><p><a href="http://www.dreamprojections.com/syntaxhighlighter/?ref=about" target="_blank">http://www.dreamprojections.com/syntaxhighlighter</a></p>&copy;2004-2007 Alex Gorbatchev.</td></tr><tr><td class="footer"><input type="button" class="close" value="OK" onClick="window.close()"/></td></tr></table></body></html>' },
ClipboardSwf: 'http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf',
Version: "1.5.1"
}
};
dp.SyntaxHighlighter = dp.sh;
dp.sh.Toolbar.Commands = {
ExpandSource: {
label: "+ expand source",
check: function (b) { return b.collapse },
func: function (b, c) {
b.parentNode.removeChild(b);
c.div.className = c.div.className.replace("collapsed", "");
}
},
ViewSource: {
label: "view plain",
func: function (b, c) {
b = dp.sh.Utils.FixForBlogger(c.originalCode).replace(/</g, "&lt;");
c = window.open("", "_blank", "width=750, height=400, location=0, resizable=1, menubar=0, scrollbars=0");
c.document.write('<textarea style="width:99%;height:99%">' + b + "</textarea>");
c.document.close();
}
},
CopyToClipboard: {
label: "copy",
check: function () { return window.clipboardData != null || dp.sh.ClipboardSwf != null },
func: function (b, c) {
b = dp.sh.Utils.FixForBlogger(c.originalCode).replace(/&lt;/g, "<").replace(/&gt;/g, ">").replace(/&amp;/g, "&");
if (window.clipboardData) window.clipboardData.setData("text", b);
else if (dp.sh.ClipboardSwf != null) {
var d = c.flashCopier;
if (d == null) {
d = document.createElement("div");
c.flashCopier = d;
c.div.appendChild(d);
}
d.innerHTML = '<embed src="' + dp.sh.ClipboardSwf + '" FlashVars="clipboard=' + encodeURIComponent(b) + '" width="0" height="0" type="application/x-shockwave-flash"></embed>';
}
alert("The code is in your clipboard now");
}
},
PrintSource: {
label: "print",
func: function (b, c) {
b = document.createElement("IFRAME");
var d = null;
b.style.cssText = "position:absolute;width:0px;height:0px;left:-500px;top:-500px;";
document.body.appendChild(b);
d = b.contentWindow.document;
dp.sh.Utils.CopyStyles(d, window.document);
d.write('<div class="' + c.div.className.replace("collapsed", "") + ' printing">' + c.div.innerHTML + "</div>");
d.close();
b.contentWindow.focus();
b.contentWindow.print();
alert("Printing...");
document.body.removeChild(b);
}
},
About: { label: "?", func: function () { var b = window.open("", "_blank", "dialog,width=300,height=150,scrollbars=0"), c = b.document; dp.sh.Utils.CopyStyles(c, window.document); c.write(dp.sh.Strings.AboutDialog.replace("{V}", dp.sh.Version)); c.close(); b.focus() } }
};
dp.sh.Toolbar.Create = function (b) {
var _code = b.source.className;
var c = document.createElement("DIV");
c.className = "tools";
c.innerHTML = '<b>[' + _code + ']</b> ';
for (var d in dp.sh.Toolbar.Commands) {
var f = dp.sh.Toolbar.Commands[d];
f.check != null && !f.check(b) || (c.innerHTML += '<a href="#" class="' + d + '" title="' + f.label + '" onclick="dp.sh.Toolbar.Command(\'' + d + "',this);return false;\">" + f.label + "</a>")
}
return c;
};
dp.sh.Toolbar.Command = function (b, c) { for (var d = c; d != null && d.className.indexOf("dp-highlighter") == -1; ) d = d.parentNode; d != null && dp.sh.Toolbar.Commands[b].func(c, d.highlighter) };
dp.sh.Utils.CopyStyles = function (b, c) { c = c.getElementsByTagName("link"); for (var d = 0; d < c.length; d++) c[d].rel.toLowerCase() == "stylesheet" && b.write('<link type="text/css" rel="stylesheet" href="' + c[d].href + '"></link>') }; dp.sh.Utils.FixForBlogger = function (b) { return dp.sh.isBloggerMode == true ? b.replace(/<br\s*\/?>|&lt;br\s*\/?&gt;/gi, "\n") : b };
dp.sh.RegexLib = {
MultiLineCComments: new RegExp("/\\*[\\s\\S]*?\\*/", "gm"),
SingleLineCComments: new RegExp("//.*$", "gm"),
SingleLinePerlComments: new RegExp("#.*$", "gm"),
DoubleQuotedString: new RegExp('"(?:\\.|(\\\\\\")|[^\\""\\n])*"', "g"),
SingleQuotedString: new RegExp("'(?:\\.|(\\\\\\')|[^\\''\\n])*'", "g")
};
dp.sh.Match = function (b, c, d) { this.value = b; this.index = c; this.length = b.length; this.css = d };
dp.sh.Highlighter = function () { this.noGutter = false; this.addControls = true; this.collapse = false; this.tabsToSpaces = true; this.wrapColumn = 80; this.showColumns = true }; dp.sh.Highlighter.SortCallback = function (b, c) { if (b.index < c.index) return -1; else if (b.index > c.index) return 1; else if (b.length < c.length) return -1; else if (b.length > c.length) return 1; return 0 }; a = dp.sh.Highlighter.prototype; a.CreateElement = function (b) { b = document.createElement(b); b.highlighter = this; return b };
a.GetMatches = function (b, c) { for (var d = null; (d = b.exec(this.code)) != null; ) this.matches[this.matches.length] = new dp.sh.Match(d[0], d.index, c) };
a.AddBit = function (b, c) { if (!(b == null || b.length == 0)) { var d = this.CreateElement("SPAN"); b = b.replace(/ /g, "&nbsp;"); b = b.replace(/</g, "&lt;"); b = b.replace(/(\r?\n)|(\[BR\])/gm, "&nbsp;<br>"); if (c != null) if (/br/gi.test(b)) { b = b.split("&nbsp;<br>"); for (var f = 0; f < b.length; f++) { d = this.CreateElement("SPAN"); d.className = c; d.innerHTML = b[f]; this.div.appendChild(d); f + 1 < b.length && this.div.appendChild(this.CreateElement("BR")) } } else { d.className = c; d.innerHTML = b; this.div.appendChild(d) } else { d.innerHTML = b; this.div.appendChild(d) } } };
a.IsInside = function (b) { if (b == null || b.length == 0) return false; for (var c = 0; c < this.matches.length; c++) { var d = this.matches[c]; if (d != null) if (b.index > d.index && b.index < d.index + d.length) return true } return false }; a.ProcessRegexList = function () { for (var b = 0; b < this.regexList.length; b++) this.GetMatches(this.regexList[b].regex, this.regexList[b].css) };
a.ProcessSmartTabs = function (b) { function c(h, e, l) { var m = h.substr(0, e); h = h.substr(e + 1, h.length); e = ""; for (var i = 0; i < l; i++) e += " "; return m + e + h } function d(h, e) { if (h.indexOf(p) == -1) return h; for (var l = 0; (l = h.indexOf(p)) != -1; ) h = c(h, l, e - l % e); return h } b = b.split("\n"); for (var f = "", p = "\t", q = 0; q < b.length; q++) f += d(b[q], 4) + "\n"; return f };
a.SwitchToList = function () {
var b = this.div.innerHTML.replace(/<(br)\/?>/gi, "\n").split("\n"); this.addControls == true && this.bar.appendChild(dp.sh.Toolbar.Create(this)); if (this.showColumns) { for (var c = this.CreateElement("div"), d = this.CreateElement("div"), f = 1; f <= 150; ) if (f % 10 == 0) { c.innerHTML += f; f += (f + "").length } else { c.innerHTML += "&middot;"; f++ } d.className = "columns"; d.appendChild(c); this.bar.appendChild(d) } f = 0; for (c = this.firstLine; f < b.length - 1; f++, c++) {
d = this.CreateElement("LI"); var p = this.CreateElement("SPAN");
d.className = f % 2 == 0 ? "alt" : ""; p.innerHTML = b[f] + "&nbsp;"; d.appendChild(p); this.ol.appendChild(d)
}
this.div.innerHTML = "";
};
a.Highlight = function (b) {
function c(e) {
return e.replace(/^\s*(.*?)[\s\n]*$/g, "$1")
}
function d(e) {
return e.replace(/\n*$/, "").replace(/^\n*/, "")
}
function f(e) {
e = dp.sh.Utils.FixForBlogger(e).split("\n");
for (var l = new RegExp("^\\s*", "g"), m = 1E3, i = 0; i < e.length && m > 0; i++)
if (c(e[i]).length != 0) {
var g = l.exec(e[i]);
if (g != null && g.length > 0)
m = Math.min(g[0].length, m)
}
if (m > 0)
for (i = 0; i < e.length; i++)
e[i] = e[i].substr(m);
return e.join("\n");
}
function p(e, l, m) {
return e.substr(l, m - l)
}
var q = 0;
if (b == null) b = "";
this.originalCode = b;
this.code = d(f(b));
this.div = this.CreateElement("DIV");
this.bar = this.CreateElement("DIV");
this.ol = this.CreateElement("OL");
this.matches = [];
this.div.className = "dp-highlighter";
this.div.highlighter = this;
this.bar.className = "bar";
this.ol.start = this.firstLine;
if (this.CssClass != null) this.ol.className = this.CssClass;
if (this.collapse) this.div.className += " collapsed";
if (this.noGutter) this.div.className += " nogutter";
if (this.tabsToSpaces == true) this.code = this.ProcessSmartTabs(this.code);
this.ProcessRegexList();
if (this.matches.length == 0)
this.AddBit(this.code, null);
else {
this.matches = this.matches.sort(dp.sh.Highlighter.SortCallback);
for (b = 0; b < this.matches.length; b++)
if (this.IsInside(this.matches[b])) this.matches[b] = null;
for (b = 0; b < this.matches.length; b++) {
var h = this.matches[b];
if (!(h == null || h.length == 0)) {
this.AddBit(p(this.code, q, h.index), null);
this.AddBit(h.value, h.css);
q = h.index + h.length
}
}
this.AddBit(this.code.substr(q), null)
}
this.SwitchToList();
this.div.appendChild(this.bar);
this.div.appendChild(this.ol)
};
a.GetKeywords = function (b) { return "\\b" + b.replace(/ /g, "\\b|\\b") + "\\b" }; dp.sh.BloggerMode = function () { dp.sh.isBloggerMode = true };
dp.sh.HighlightAll = function (b, c, d, f, p, q) {
function h() {
for (var k = arguments, j = 0; j < k.length; j++)
if (k[j] != null) {
if (typeof k[j] == "string" && k[j] != "") return k[j] + "";
if (typeof k[j] == "object" && k[j].value != "") return k[j].value + ""
}
return null
}
function e(k, j) {
for (var o = 0; o < j.length; o++)
if (j[o] == k) return true;
return false
}
function l(k, j, o) {
k = new RegExp("^" + k + "\\[(\\w+)\\]$", "gi");
for (var s = null, u = 0; u < j.length; u++)
if ((s = k.exec(j[u])) != null) return s[1];
return o
}
function m(k, j, o) {
o = document.getElementsByTagName(o);
for (var s = 0; s < o.length; s++) {
o[s].getAttribute("name") == j && k.push(o[s]);
}
}
var i = [], g = null, v = {};
m(i, b, "pre");
m(i, b, "textarea");
if (i.length != 0) {
for (var n in dp.sh.Brushes) {
g = dp.sh.Brushes[n].Aliases;
if (g != null)
for (b = 0; b < g.length; b++)
v[g[b]] = n
}
for (b = 0; b < i.length; b++) {
n = i[b];
var r = h(n.attributes["class"], n.className, n.attributes.language, n.language);
g = "";
if (r != null) {
r = r.split(":");
g = r[0].toLowerCase();
if (v[g] != null) {
g = new dp.sh.Brushes[v[g]];
n.style.display = "none";
g.noGutter = c == null ? e("nogutter", r) : !c;
g.addControls = d == null ? !e("nocontrols", r) : d;
g.collapse = f == null ? e("collapse", r) : f;
g.showColumns = q == null ? e("showcolumns", r) : q;
var w = document.getElementsByTagName("head")[0];
if (g.Style && w) {
var t = document.createElement("style");
t.setAttribute("type", "text/css");
if (t.styleSheet) t.styleSheet.cssText = g.Style;
else { var x = document.createTextNode(g.Style); t.appendChild(x) }
w.appendChild(t);
}
g.firstLine = p == null ? parseInt(l("firstline", r, 1)) : p;
g.source = n;
g.Highlight(n.innerHTML);
g.div.className += " bg_" + n.className;
n.parentNode.insertBefore(g.div, n);
}
}
}
}
};
dp.sh.Brushes.Xml = function () { this.CssClass = "dp-xml"; this.Style = "" };
dp.sh.Brushes.Xml.prototype = new dp.sh.Highlighter;
dp.sh.Brushes.Xml.Aliases = ["xml", "xhtml", "xslt", "html", "xhtml"];
dp.sh.Brushes.Xml.prototype.ProcessRegexList = function () {
function c(d, e) { d[d.length] = e }
var a = null, b = null;
this.GetMatches(new RegExp("(&lt;|<)\\!\\[[\\w\\s]*?\\[(.|\\s)*?\\]\\](&gt;|>)", "gm"), "cdata");
this.GetMatches(new RegExp("(&lt;|<)!--\\s*.*?\\s*--(&gt;|>)", "gm"), "comments");
for (b = new RegExp("([:\\w-.]+)\\s*=\\s*(\".*?\"|'.*?'|\\w+)*|(\\w+)", "gm"); (a = b.exec(this.code)) != null; )
if (a[1] != null) {
c(this.matches, new dp.sh.Match(a[1], a.index, "attribute"));
a[2] != undefined && c(this.matches, new dp.sh.Match(a[2], a.index + a[1].length+a[0].substr(a[1].length).indexOf(a[2]), "attribute-value"))
}
this.GetMatches(new RegExp("(&lt;|<)/*\\?*(?!\\!)|/*\\?*(&gt;|>)", "gm"), "tag");
for (b = new RegExp("(?:&lt;|<)/*\\?*\\s*([:\\w-.]+)", "gm"); (a = b.exec(this.code)) != null; )
c(this.matches, new dp.sh.Match(a[1], a.index + a[0].indexOf(a[1]), "tag-name"))
};
dp.sh.Brushes.Vb = function () {
this.regexList = [{ regex: new RegExp("'.*$", "gm"), css: "comment" }, { regex: dp.sh.RegexLib.DoubleQuotedString, css: "string" }, { regex: new RegExp("^\\s*#.*", "gm"), css: "preprocessor" }, { regex: new RegExp(this.GetKeywords("AddHandler AddressOf AndAlso Alias And Ansi As Assembly Auto Boolean ByRef Byte ByVal Call Case Catch CBool CByte CChar CDate CDec CDbl Char CInt Class CLng CObj Const CShort CSng CStr CType Date Decimal Declare Default Delegate Dim DirectCast Do Double Each Else ElseIf End Enum Erase Error Event Exit False Finally For Friend Function Get GetType GoSub GoTo Handles If Implements Imports In Inherits Integer Interface Is Let Lib Like Long Loop Me Mod Module MustInherit MustOverride MyBase MyClass Namespace New Next Not Nothing NotInheritable NotOverridable Object On Option Optional Or OrElse Overloads Overridable Overrides ParamArray Preserve Private Property Protected Public RaiseEvent ReadOnly ReDim REM RemoveHandler Resume Return Select Set Shadows Shared Short Single Static Step Stop String Structure Sub SyncLock Then Throw To True Try TypeOf Unicode Until Variant When While With WithEvents WriteOnly Xor"),
"gm"), css: "keyword"
}]; this.CssClass = "dp-vb"
}; dp.sh.Brushes.Vb.prototype = new dp.sh.Highlighter; dp.sh.Brushes.Vb.Aliases = ["vb", "vb.net"];
dp.sh.Brushes.Sql = function () {
this.regexList = [{ regex: new RegExp("--(.*)$", "gm"), css: "comment" }, { regex: dp.sh.RegexLib.DoubleQuotedString, css: "string" }, { regex: dp.sh.RegexLib.SingleQuotedString, css: "string" }, { regex: new RegExp(this.GetKeywords("abs avg case cast coalesce convert count current_timestamp current_user day isnull left lower month nullif replace right session_user space substring sum system_user upper user year"), "gmi"), css: "func" }, { regex: new RegExp(this.GetKeywords("all and any between cross in join like not null or outer some"),
"gmi"), css: "op"
}, { regex: new RegExp(this.GetKeywords("absolute action add after alter as asc at authorization begin bigint binary bit by cascade char character check checkpoint close collate column commit committed connect connection constraint contains continue create cube current current_date current_time cursor database date deallocate dec decimal declare default delete desc distinct double drop dynamic else end end-exec escape except exec execute false fetch first float for force foreign forward free from full function global goto grant group grouping having hour ignore index inner insensitive insert instead int integer intersect into is isolation key last level load local max min minute modify move name national nchar next no numeric of off on only open option order out output partial password precision prepare primary prior privileges procedure public read real references relative repeatable restrict return returns revoke rollback rollup rows rule schema scroll second section select sequence serializable set size smallint static statistics table temp temporary then time timestamp to top transaction translation trigger true truncate uncommitted union unique update values varchar varying view when where with work"),
"gmi"), css: "keyword"
}]; this.CssClass = "dp-sql"; this.Style = ""
}; dp.sh.Brushes.Sql.prototype = new dp.sh.Highlighter; dp.sh.Brushes.Sql.Aliases = ["sql"];
dp.sh.Brushes.Ruby = function () {
this.regexList = [{ regex: dp.sh.RegexLib.SingleLinePerlComments, css: "comment" }, { regex: dp.sh.RegexLib.DoubleQuotedString, css: "string" }, { regex: dp.sh.RegexLib.SingleQuotedString, css: "string" }, { regex: new RegExp(":[a-z][A-Za-z0-9_]*", "g"), css: "symbol" }, { regex: new RegExp("(\\$|@@|@)\\w+", "g"), css: "variable" }, { regex: new RegExp(this.GetKeywords("alias and BEGIN begin break case class def define_method defined do each else elsif END end ensure false for if in module new next nil not or raise redo rescue retry return self super then throw true undef unless until when while yield"),
"gm"), css: "keyword"
}, { regex: new RegExp(this.GetKeywords("Array Bignum Binding Class Continuation Dir Exception FalseClass File::Stat File Fixnum Fload Hash Integer IO MatchData Method Module NilClass Numeric Object Proc Range Regexp String Struct::TMS Symbol ThreadGroup Thread Time TrueClass"), "gm"), css: "builtin"}]; this.CssClass = "dp-rb"; this.Style = ""
}; dp.sh.Brushes.Ruby.prototype = new dp.sh.Highlighter;
dp.sh.Brushes.Ruby.Aliases = ["ruby", "rails", "ror"];
dp.sh.Brushes.Python = function () {
this.regexList = [{ regex: dp.sh.RegexLib.SingleLinePerlComments, css: "comment" }, { regex: new RegExp("^\\s*@\\w+", "gm"), css: "decorator" }, { regex: new RegExp("(['\"]{3})([^\\1])*?\\1", "gm"), css: "comment" }, { regex: new RegExp('"(?!")(?:\\.|\\\\\\"|[^\\""\\n\\r])*"', "gm"), css: "string" }, { regex: new RegExp("'(?!')*(?:\\.|(\\\\\\')|[^\\''\\n\\r])*'", "gm"), css: "string" }, { regex: new RegExp("\\b\\d+\\.?\\w*", "g"), css: "number" }, { regex: new RegExp(this.GetKeywords("and assert break class continue def del elif else except exec finally for from global if import in is lambda not or pass print raise return try yield while"),
"gm"), css: "keyword"
}, { regex: new RegExp(this.GetKeywords("None True False self cls class_"), "gm"), css: "special"}]; this.CssClass = "dp-py"; this.Style = ""
}; dp.sh.Brushes.Python.prototype = new dp.sh.Highlighter; dp.sh.Brushes.Python.Aliases = ["py", "python"];
dp.sh.Brushes.Plain = function () { this.regexList = [] }; dp.sh.Brushes.Plain.prototype = new dp.sh.Highlighter; dp.sh.Brushes.Plain.Aliases = ["plain", "text", "txt"];
dp.sh.Brushes.Php = function () {
this.regexList = [{ regex: dp.sh.RegexLib.SingleLineCComments, css: "comment" }, { regex: dp.sh.RegexLib.MultiLineCComments, css: "comment" }, { regex: dp.sh.RegexLib.DoubleQuotedString, css: "string" }, { regex: dp.sh.RegexLib.SingleQuotedString, css: "string" }, { regex: new RegExp("\\$\\w+", "g"), css: "vars" }, { regex: new RegExp(this.GetKeywords("abs acos acosh addcslashes addslashes array_change_key_case array_chunk array_combine array_count_values array_diff array_diff_assoc array_diff_key array_diff_uassoc array_diff_ukey array_fill array_filter array_flip array_intersect array_intersect_assoc array_intersect_key array_intersect_uassoc array_intersect_ukey array_key_exists array_keys array_map array_merge array_merge_recursive array_multisort array_pad array_pop array_product array_push array_rand array_reduce array_reverse array_search array_shift array_slice array_splice array_sum array_udiff array_udiff_assoc array_udiff_uassoc array_uintersect array_uintersect_assoc array_uintersect_uassoc array_unique array_unshift array_values array_walk array_walk_recursive atan atan2 atanh base64_decode base64_encode base_convert basename bcadd bccomp bcdiv bcmod bcmul bindec bindtextdomain bzclose bzcompress bzdecompress bzerrno bzerror bzerrstr bzflush bzopen bzread bzwrite ceil chdir checkdate checkdnsrr chgrp chmod chop chown chr chroot chunk_split class_exists closedir closelog copy cos cosh count count_chars date decbin dechex decoct deg2rad delete ebcdic2ascii echo empty end ereg ereg_replace eregi eregi_replace error_log error_reporting escapeshellarg escapeshellcmd eval exec exit exp explode extension_loaded feof fflush fgetc fgetcsv fgets fgetss file_exists file_get_contents file_put_contents fileatime filectime filegroup fileinode filemtime fileowner fileperms filesize filetype floatval flock floor flush fmod fnmatch fopen fpassthru fprintf fputcsv fputs fread fscanf fseek fsockopen fstat ftell ftok getallheaders getcwd getdate getenv gethostbyaddr gethostbyname gethostbynamel getimagesize getlastmod getmxrr getmygid getmyinode getmypid getmyuid getopt getprotobyname getprotobynumber getrandmax getrusage getservbyname getservbyport gettext gettimeofday gettype glob gmdate gmmktime ini_alter ini_get ini_get_all ini_restore ini_set interface_exists intval ip2long is_a is_array is_bool is_callable is_dir is_double is_executable is_file is_finite is_float is_infinite is_int is_integer is_link is_long is_nan is_null is_numeric is_object is_readable is_real is_resource is_scalar is_soap_fault is_string is_subclass_of is_uploaded_file is_writable is_writeable mkdir mktime nl2br parse_ini_file parse_str parse_url passthru pathinfo readlink realpath rewind rewinddir rmdir round str_ireplace str_pad str_repeat str_replace str_rot13 str_shuffle str_split str_word_count strcasecmp strchr strcmp strcoll strcspn strftime strip_tags stripcslashes stripos stripslashes stristr strlen strnatcasecmp strnatcmp strncasecmp strncmp strpbrk strpos strptime strrchr strrev strripos strrpos strspn strstr strtok strtolower strtotime strtoupper strtr strval substr substr_compare"),
"gmi"), css: "func"
}, { regex: new RegExp(this.GetKeywords("and or xor __FILE__ __LINE__ array as break case cfunction class const continue declare default die do else elseif empty enddeclare endfor endforeach endif endswitch endwhile extends for foreach function include include_once global if new old_function return static switch use require require_once var while __FUNCTION__ __CLASS__ __METHOD__ abstract interface public implements extends private protected throw"), "gm"), css: "keyword"}]; this.CssClass =
"dp-c"
}; dp.sh.Brushes.Php.prototype = new dp.sh.Highlighter; dp.sh.Brushes.Php.Aliases = ["php"];
dp.sh.Brushes.JScript = function () {
this.regexList = [{ regex: dp.sh.RegexLib.SingleLineCComments, css: "comment" }, { regex: dp.sh.RegexLib.MultiLineCComments, css: "comment" }, { regex: dp.sh.RegexLib.DoubleQuotedString, css: "string" }, { regex: dp.sh.RegexLib.SingleQuotedString, css: "string" }, { regex: new RegExp("^\\s*#.*", "gm"), css: "preprocessor" }, { regex: new RegExp(this.GetKeywords("abstract boolean break byte case catch char class const continue debugger default delete do double else enum export extends false final finally float for function goto if implements import in instanceof int interface long native new null package private protected public return short static super switch synchronized this throw throws transient true try typeof var void volatile while with"),
"gm"), css: "keyword"
}]; this.CssClass = "dp-c"
}; dp.sh.Brushes.JScript.prototype = new dp.sh.Highlighter; dp.sh.Brushes.JScript.Aliases = ["js", "jscript", "javascript"];
dp.sh.Brushes.Java = function () {
this.regexList = [{ regex: dp.sh.RegexLib.SingleLineCComments, css: "comment" }, { regex: dp.sh.RegexLib.MultiLineCComments, css: "comment" }, { regex: dp.sh.RegexLib.DoubleQuotedString, css: "string" }, { regex: dp.sh.RegexLib.SingleQuotedString, css: "string" }, { regex: new RegExp("\\b([\\d]+(\\.[\\d]+)?|0x[a-f0-9]+)\\b", "gi"), css: "number" }, { regex: new RegExp("(?!\\@interface\\b)\\@[\\$\\w]+\\b", "g"), css: "annotation" }, { regex: new RegExp("\\@interface\\b", "g"), css: "keyword" }, { regex: new RegExp(this.GetKeywords("abstract assert boolean break byte case catch char class const continue default do double else enum extends false final finally float for goto if implements import instanceof int interface long native new null package private protected public return short static strictfp super switch synchronized this throw throws true transient try void volatile while"),
"gm"), css: "keyword"
}]; this.CssClass = "dp-j"; this.Style = ""
}; dp.sh.Brushes.Java.prototype = new dp.sh.Highlighter; dp.sh.Brushes.Java.Aliases = ["java"];
dp.sh.Brushes.Delphi = function () {
this.regexList = [{ regex: new RegExp("\\(\\*[\\s\\S]*?\\*\\)", "gm"), css: "comment" }, { regex: new RegExp("{(?!\\$)[\\s\\S]*?}", "gm"), css: "comment" }, { regex: dp.sh.RegexLib.SingleLineCComments, css: "comment" }, { regex: dp.sh.RegexLib.SingleQuotedString, css: "string" }, { regex: new RegExp("\\{\\$[a-zA-Z]+ .+\\}", "g"), css: "directive" }, { regex: new RegExp("\\b[\\d\\.]+\\b", "g"), css: "number" }, { regex: new RegExp("\\$[a-zA-Z0-9]+\\b", "g"), css: "number" }, { regex: new RegExp(this.GetKeywords("abs addr and ansichar ansistring array as asm begin boolean byte cardinal case char class comp const constructor currency destructor div do double downto else end except exports extended false file finalization finally for function goto if implementation in inherited int64 initialization integer interface is label library longint longword mod nil not object of on or packed pansichar pansistring pchar pcurrency pdatetime pextended pint64 pointer private procedure program property pshortstring pstring pvariant pwidechar pwidestring protected public published raise real real48 record repeat set shl shortint shortstring shr single smallint string then threadvar to true try type unit until uses val var varirnt while widechar widestring with word write writeln xor"),
"gm"), css: "keyword"
}]; this.CssClass = "dp-delphi"; this.Style = ""
}; dp.sh.Brushes.Delphi.prototype = new dp.sh.Highlighter; dp.sh.Brushes.Delphi.Aliases = ["delphi", "pascal"];
dp.sh.Brushes.CSS = function () {
this.regexList = [{ regex: dp.sh.RegexLib.MultiLineCComments, css: "comment" }, { regex: dp.sh.RegexLib.DoubleQuotedString, css: "string" }, { regex: dp.sh.RegexLib.SingleQuotedString, css: "string" }, { regex: new RegExp("\\#[a-zA-Z0-9]{3,6}", "g"), css: "value" }, { regex: new RegExp("(-?\\d+)(.\\d+)?(px|em|pt|:|%|)", "g"), css: "value" }, { regex: new RegExp("!important", "g"), css: "important" }, { regex: new RegExp(this.GetKeywordsCSS("ascent azimuth background-attachment background-color background-image background-position background-repeat background baseline bbox border-collapse border-color border-spacing border-style border-top border-right border-bottom border-left border-top-color border-right-color border-bottom-color border-left-color border-top-style border-right-style border-bottom-style border-left-style border-top-width border-right-width border-bottom-width border-left-width border-width border cap-height caption-side centerline clear clip color content counter-increment counter-reset cue-after cue-before cue cursor definition-src descent direction display elevation empty-cells float font-size-adjust font-family font-size font-stretch font-style font-variant font-weight font height letter-spacing line-height list-style-image list-style-position list-style-type list-style margin-top margin-right margin-bottom margin-left margin marker-offset marks mathline max-height max-width min-height min-width orphans outline-color outline-style outline-width outline overflow padding-top padding-right padding-bottom padding-left padding page page-break-after page-break-before page-break-inside pause pause-after pause-before pitch pitch-range play-during position quotes richness size slope src speak-header speak-numeral speak-punctuation speak speech-rate stemh stemv stress table-layout text-align text-decoration text-indent text-shadow text-transform unicode-bidi unicode-range units-per-em vertical-align visibility voice-family volume white-space widows width widths word-spacing x-height z-index"),
"gm"), css: "keyword"
}, { regex: new RegExp(this.GetValuesCSS("above absolute all always aqua armenian attr aural auto avoid baseline behind below bidi-override black blink block blue bold bolder both bottom braille capitalize caption center center-left center-right circle close-quote code collapse compact condensed continuous counter counters crop cross crosshair cursive dashed decimal decimal-leading-zero default digits disc dotted double embed embossed e-resize expanded extra-condensed extra-expanded fantasy far-left far-right fast faster fixed format fuchsia gray green groove handheld hebrew help hidden hide high higher icon inline-table inline inset inside invert italic justify landscape large larger left-side left leftwards level lighter lime line-through list-item local loud lower-alpha lowercase lower-greek lower-latin lower-roman lower low ltr marker maroon medium message-box middle mix move narrower navy ne-resize no-close-quote none no-open-quote no-repeat normal nowrap n-resize nw-resize oblique olive once open-quote outset outside overline pointer portrait pre print projection purple red relative repeat repeat-x repeat-y rgb ridge right right-side rightwards rtl run-in screen scroll semi-condensed semi-expanded separate se-resize show silent silver slower slow small small-caps small-caption smaller soft solid speech spell-out square s-resize static status-bar sub super sw-resize table-caption table-cell table-column table-column-group table-footer-group table-header-group table-row table-row-group teal text-bottom text-top thick thin top transparent tty tv ultra-condensed ultra-expanded underline upper-alpha uppercase upper-latin upper-roman url visible wait white wider w-resize x-fast x-high x-large x-loud x-low x-slow x-small x-soft xx-large xx-small yellow"),
"g"), css: "value"
}, { regex: new RegExp(this.GetValuesCSS("[mM]onospace [tT]ahoma [vV]erdana [aA]rial [hH]elvetica [sS]ans-serif [sS]erif"), "g"), css: "value"}]; this.CssClass = "dp-css"; this.Style = ""
}; dp.sh.Highlighter.prototype.GetKeywordsCSS = function (a) { return "\\b([a-z_]|)" + a.replace(/ /g, "(?=:)\\b|\\b([a-z_\\*]|\\*|)") + "(?=:)\\b" }; dp.sh.Highlighter.prototype.GetValuesCSS = function (a) { return "\\b" + a.replace(/ /g, "(?!-)(?!:)\\b|\\b()") + ":\\b" };
dp.sh.Brushes.CSS.prototype = new dp.sh.Highlighter; dp.sh.Brushes.CSS.Aliases = ["css"];
dp.sh.Brushes.CSharp = function () {
this.regexList = [{ regex: dp.sh.RegexLib.SingleLineCComments, css: "comment" }, { regex: dp.sh.RegexLib.MultiLineCComments, css: "comment" }, { regex: dp.sh.RegexLib.DoubleQuotedString, css: "string" }, { regex: dp.sh.RegexLib.SingleQuotedString, css: "string" }, { regex: new RegExp("^\\s*#.*", "gm"), css: "preprocessor" }, { regex: new RegExp(this.GetKeywords("abstract as base bool break byte case catch char checked class const continue decimal default delegate do double else enum event explicit extern false finally fixed float for foreach get goto if implicit in int interface internal is lock long namespace new null object operator out override params private protected public readonly ref return sbyte sealed set short sizeof stackalloc static string struct switch this throw true try typeof uint ulong unchecked unsafe ushort using virtual void while"),
"gm"), css: "keyword"
}]; this.CssClass = "dp-c"; this.Style = ""
}; dp.sh.Brushes.CSharp.prototype = new dp.sh.Highlighter; dp.sh.Brushes.CSharp.Aliases = ["c#", "c-sharp", "csharp"];
dp.sh.Brushes.Cpp = function () {
this.regexList = [{ regex: dp.sh.RegexLib.SingleLineCComments, css: "comment" }, { regex: dp.sh.RegexLib.MultiLineCComments, css: "comment" }, { regex: dp.sh.RegexLib.DoubleQuotedString, css: "string" }, { regex: dp.sh.RegexLib.SingleQuotedString, css: "string" }, { regex: new RegExp("^ *#.*", "gm"), css: "preprocessor" }, { regex: new RegExp(this.GetKeywords("ATOM BOOL BOOLEAN BYTE CHAR COLORREF DWORD DWORDLONG DWORD_PTR DWORD32 DWORD64 FLOAT HACCEL HALF_PTR HANDLE HBITMAP HBRUSH HCOLORSPACE HCONV HCONVLIST HCURSOR HDC HDDEDATA HDESK HDROP HDWP HENHMETAFILE HFILE HFONT HGDIOBJ HGLOBAL HHOOK HICON HINSTANCE HKEY HKL HLOCAL HMENU HMETAFILE HMODULE HMONITOR HPALETTE HPEN HRESULT HRGN HRSRC HSZ HWINSTA HWND INT INT_PTR INT32 INT64 LANGID LCID LCTYPE LGRPID LONG LONGLONG LONG_PTR LONG32 LONG64 LPARAM LPBOOL LPBYTE LPCOLORREF LPCSTR LPCTSTR LPCVOID LPCWSTR LPDWORD LPHANDLE LPINT LPLONG LPSTR LPTSTR LPVOID LPWORD LPWSTR LRESULT PBOOL PBOOLEAN PBYTE PCHAR PCSTR PCTSTR PCWSTR PDWORDLONG PDWORD_PTR PDWORD32 PDWORD64 PFLOAT PHALF_PTR PHANDLE PHKEY PINT PINT_PTR PINT32 PINT64 PLCID PLONG PLONGLONG PLONG_PTR PLONG32 PLONG64 POINTER_32 POINTER_64 PSHORT PSIZE_T PSSIZE_T PSTR PTBYTE PTCHAR PTSTR PUCHAR PUHALF_PTR PUINT PUINT_PTR PUINT32 PUINT64 PULONG PULONGLONG PULONG_PTR PULONG32 PULONG64 PUSHORT PVOID PWCHAR PWORD PWSTR SC_HANDLE SC_LOCK SERVICE_STATUS_HANDLE SHORT SIZE_T SSIZE_T TBYTE TCHAR UCHAR UHALF_PTR UINT UINT_PTR UINT32 UINT64 ULONG ULONGLONG ULONG_PTR ULONG32 ULONG64 USHORT USN VOID WCHAR WORD WPARAM WPARAM WPARAM char bool short int __int32 __int64 __int8 __int16 long float double __wchar_t clock_t _complex _dev_t _diskfree_t div_t ldiv_t _exception _EXCEPTION_POINTERS FILE _finddata_t _finddatai64_t _wfinddata_t _wfinddatai64_t __finddata64_t __wfinddata64_t _FPIEEE_RECORD fpos_t _HEAPINFO _HFILE lconv intptr_t jmp_buf mbstate_t _off_t _onexit_t _PNH ptrdiff_t _purecall_handler sig_atomic_t size_t _stat __stat64 _stati64 terminate_function time_t __time64_t _timeb __timeb64 tm uintptr_t _utimbuf va_list wchar_t wctrans_t wctype_t wint_t signed"),
"gm"), css: "datatypes"
}, { regex: new RegExp(this.GetKeywords("break case catch class const __finally __exception __try const_cast continue private public protected __declspec default delete deprecated dllexport dllimport do dynamic_cast else enum explicit extern if for friend goto inline mutable naked namespace new noinline noreturn nothrow register reinterpret_cast return selectany sizeof static static_cast struct switch template this thread throw true false try typedef typeid typename union using uuid virtual void volatile whcar_t while"),
"gm"), css: "keyword"
}]; this.CssClass = "dp-cpp"; this.Style = ""
}; dp.sh.Brushes.Cpp.prototype = new dp.sh.Highlighter; dp.sh.Brushes.Cpp.Aliases = ["cpp", "c", "c++"];

View File

@@ -0,0 +1,54 @@
var __mm_arr = null;
function printMedal(m_arr) {
__mm_arr = m_arr;
var s = "<div id='bms_box'>";
for (var i = 0; i < m_arr.length; i++) {
s += "<a href='http://medal.blog.csdn.net/allmedal.aspx' target=_blank>";
s += "<img src='" + m_arr[i].src + "'";
s += " onmouseover='m_over_m(this," + i + ")'";
s += " onmouseout='m_out_m()'";
s += " alt='' />";
s += "</a>";
}
s += "</div>";
$('#blog_medal').append($(s));
}
var __mm_over = false;
function m_over_m(e, i) {
__mm_over = true;
showMedalInfo(e, i);
}
function m_out_m() {
__mm_over = false;
hideMedalInfo();
}
var __mm_intro = null;
function showMedalInfo(e, i) {
if (__mm_intro) {
document.body.removeChild(__mm_intro);
__mm_intro = null;
}
var m = __mm_arr[i];
var s = "";
s += "<dl onmouseover='__mm_over=true;' onmouseout='m_out_m();'>";
s += "<dt><img src='" + m.src.replace("_s.gif", "_b.png").replace("_s2.gif", "_b.png") + "' /></dt>";
s += "<dd><strong>" + m.title + "</strong>" + m.desc + "</dd>";
s += "</dl>";
__mm_intro = document.createElement("div");
__mm_intro.className = "medal_intro";
var pos = $(e).position();
var left = pos.left - (306 - 32) / 2;
if (left < 0) left = 0;
__mm_intro.style.left = left + 'px';
__mm_intro.style.top = pos.top + 32 + 4 + 'px';
__mm_intro.innerHTML = s;
document.body.appendChild(__mm_intro);
}
function hideMedalInfo() {
setTimeout(function () {
if (!__mm_over && __mm_intro) {
document.body.removeChild(__mm_intro);
__mm_intro = null;
}
}, 500);
}

View File

@@ -0,0 +1,171 @@
@import url("../../../css/common.css");
.pub_footerall{border-top:none !important;}
.nav_top_2011{margin-bottom:0 !important;}
body{background:url(../images/body_bg.gif) repeat-x top; color:#333; text-align:center;font-size:12px;font-family:Arial,Console,Verdana,Courier New;}
a{color:#369; text-decoration:none;}
a:hover{text-decoration:none;color:#200;}
#container{background:url(../images/head_bg.jpg) no-repeat center top;}
/* header style */
#header{width:980px; height:30px; margin:0 auto; padding:50px 0 0 0; text-align:left;}
.header{}
#blog_title{}
#blog_title h1{display:inline-block; float:left; margin:0 20px 0 0; color:#fff; font:bold 30px/30px 'Microsoft YaHei';}
#blog_title h2{display:inline-block; float:left; padding:2px 0 0 0; color:#fff; font:normal 18px/30px 'Microsoft YaHei';}
#blog_title a{color:#fff;}
#blog_title a:hover{color:#def;text-decoration:none;}
/* navigator style */
#navigator{display:block; *display:inline-block; clear:both; width:980px; height:42px; margin:0 auto; padding:22px 0 0 0; text-align:left;}
.navigator{text-align:right;}
.navigator:after{content:"."; display:block; height:0; clear:both; visibility:hidden;}
.navigator ul{float:right;}
.navigator li{display:inline; float:left; margin:0 5px;}
.navigator li a{display:inline-block; height:26px; padding:0 0 0 10px; color:#666; background:url(../../../images/btn_pub_nav.gif) no-repeat left 0; font:normal 12px/26px Arial, Helvetica, sans-serif; text-decoration:none; cursor:pointer;}
.navigator li a span{display:inline-block; height:16px; padding:5px 10px 5px 0; background:url(../../../images/btn_pub_nav.gif) no-repeat right -26px; line-height:16px;}
.navigator li a span img{margin:0 4px 0 0; vertical-align:middle;}
/* body style */
#body{display:block; *display:inline-block; width:960px; margin:0 auto; padding:9px; border:solid 1px #ddd; background:#fff; -webkit-border-radius:8px; -moz-border-radius:8px; -khtml-border-radius:8px; border-radius:8px; /*-moz-box-shadow:0 0 10px #333; -webkit-box-shadow:0 0 10px #333;*/ text-align:left;}
#body:after{content:"."; display:block; height:0; clear:both; visibility:hidden;}
/* box title style */
.panel_head { clear: both; height: 30px; padding: 0 10px; border-radius:4px; background: url(../images/tit_bg.gif) repeat-x top; color: #333; font: bold 12px/30px Arial; text-indent: 5px; }
.panel{margin:0 0 10px 0; padding:7px; border:solid 1px #ddd; border-radius:5px; -webkit-border-radius:5px; -moz-border-radius:5px; -khtml-border-radius:5px;}
.side .panel_body{padding:4px 5px;}
.panel_body li{color:#666;margin:8px 0px;}
.panel_body li span{}
.panel_body li a{/*color:#ff2a00;*/}
#main{float:right; width:734px; overflow:hidden; padding:7px; border:solid 1px #ddd; border-radius:4px;}
.notice{margin:10px 2px; padding:2px 4px 2px 20px; border:dashed 1px #f8cc7e; background:#fffce7 url(../../../images/ico_notice.png) no-repeat 5px center; _background:#fffce7 url(../../../images/ico_notice.gif) no-repeat 5px center; font:normal 12px/22px Arial;}
.notice a{color:#ff5a00;}
/* article style */
.list_item{display:block; *display:inline-block; clear:both; background:url(../images/line_1.gif) repeat-x bottom;}
.list_item:after{content:"."; display:block; height:0; clear:both; visibility:hidden;}
.list{margin:20px 20px 0 20px;}
/* title style on list */
.article_title{display:block; margin:5px 0px; color:#000; font:normal 20px/30px 'Microsoft YaHei';}
.article_title:after{content:"."; display:block; height:0; clear:both; visibility:hidden;}
.article_title a{color:#000;}
.article_title a:hover{color:#666;}
/* article type icon */
.article_title .ico{display:inline-block; width:19px; height:19px; margin:0 2px 0 0;}
.article_title .ico_type_Original{background:url(../../../images/ico_Original.gif) no-repeat 0 0; vertical-align:middle;}/* 原创icon */
.article_title .ico_type_Repost{background:url(../../../images/ico_Repost.gif) no-repeat 0 0; vertical-align:middle;}/* 转载icon */
.article_title .ico_type_Translated{background:url(../../../images/ico_Translated.gif) no-repeat 0 0; vertical-align:middle;}/* 转载icon */
/* article title */
.article_title h3{display:inline; font:normal 20px/30px 'Microsoft YaHei'; vertical-align:middle;}
/* article summary */
.article_description{color:#666; font:normal 14px/24px Arial;}
/* article control area */
.article_manage{padding:5px 0; color:#999; font:normal 12px/24px Arial; text-align:right;}
.article_manage span{margin:0 5px;}
/*.article_manage a{color:#ff2a00;}*/
.article_manage .link_postdate{margin:0 5px 0 0;}
.article_manage .link_view{padding:0 0 0 14px; background:url(../../../images/ico_view.png) no-repeat left center; _background:url(../../../images/ico_view.gif) no-repeat left center;}
.article_manage .link_comments{padding:0 0 0 14px; background:url(../../../images/ico_comm.png) no-repeat left center; _background:url(../../../images/ico_comm.gif) no-repeat left center;}
.article_manage .link_categories{float:left;}
/* article list view */
.list_view{margin:0 20px; padding:5px 0;}
.list_view .article_title{display:inline; float:left; height:30px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; margin:0 !important; font:normal 14px/30px Arial !important;}
.list_view .article_title:after{content:"...";}
.list_view .article_title h3{font:normal 12px/30px Arial !important;}
.list_view .article_manage{display:inline; float:right; padding:0 !important; line-height:30px !important; text-align:right !important; white-space:nowrap;}
.list_view .article_description{display:none !important;}
.list_view .article_manage span{margin:0 !important;}
/* article details */
.details{margin:20px;}
.details .article_content{margin:20px 0 0 0;font-family:Courier New,Console,Verdana,"微软雅黑";font:normal 14px/26px Arial; }
/* article content initialvalue style */
.article_next_prev{display:block; *display:inline-block; color:#666; font:normal 12px/24px Arial, Helvetica, sans-serif;}
.article_next_prev li{list-style-type:none;}
.article_next_prev:after{content:"."; display:block; height:0; clear:both; visibility:hidden;}
.commentform ul{margin:0px;}
.commentform li{margin:0px;list-style-type:none;}
/* digg style */
.ico_expert{width:69px; height:60px; margin:0 auto; background:url(../../../images/ico_expert.jpg) no-repeat 0 0; _background:none; _filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled='true', sizingMethod='scale', src="images/ico_expert.png");}
#digg{display:block; *display:inline-block; clear:both; width:182px; _width:188px; margin:10px auto; text-align:center;}
#digg:after{content:"."; display:block; height:0; clear:both; visibility:hidden;}
.digg{display:inline-block; float:left; width:81px; height:61px; overflow:hidden; margin:0 5px; background:url(../images/digg_bg.gif) no-repeat 0 0; text-align:center;}
.digg dt{margin:0px;padding:2px 0 0 0; color:#fff; font:normal 20px/36px 'Microsoft YaHei';}
.digg dd{margin:0px;color:#f00; font:normal 12px/22px Arial;}
.digg_enable{ background:url(../images/digg_bg.gif) no-repeat 0 0; text-align:center; cursor:pointer;}
.digg_disable{ background:url(../images/not_digg_bg.gif) no-repeat 0 0; text-align:center; color:#666;}
.digg_disable dd{color:#888;}
/* page navigation style */
.pagelist{clear:both; padding:15px 0; color:#666; font:normal 12px/24px Arial; text-align:center;}
.pagelist a{display:inline-block; height:22px; margin:0 2px; padding:0 8px; border:solid 1px #dbe5ee; -moz-border-radius:2px; -webkit-border-radius:2px; -khtml-border-radius:2px; border-radius:2px; background:#fff; color:#333; font:normal 12px/22px Arial, Helvetica, sans-serif; cursor:pointer;}
.pagelist strong{display:inline-block; height:24px; margin:0 3px; padding:0 8px; border:none; -moz-border-radius:2px; -webkit-border-radius:2px; -khtml-border-radius:2px; border-radius:2px; background:#07519a; color:#fff; font-weight:normal; line-height:24px; text-decoration:none;}
.pagelist a:hover{height:24px; margin:0 3px; border:none; background:#07519a; color:#fff; line-height:24px; text-decoration:none;}
.pagelist a.select{cursor:default;}
#side{float:left; width:200px; overflow:hidden;line-height:120%; }
#side a{color:#369;}
#side a:hover{color:#200;}
/* personal information */
#panel_Profile{ }
#panel_Profile span{color:#333;}
#blog_userface{margin:0 0 5px 0; padding:10px; text-align:center;}
#blog_userface img{max-width:160px; padding:2px; border:solid 1px #ddd;}
#blog_userface span{display:block; font-weight:bold; text-align:center;}
#blog_medal{text-align:center;}
#blog_rank{display:block; *display:inline-block; margin:5px; padding:0 0 5px 0; background:url(../images/line_1.gif) repeat-x bottom;}
#blog_rank:after{content:"."; display:block; height:0; clear:both; visibility:hidden;}
#blog_rank li{}
#blog_rank li span{}
#blog_statistics{display:block; *display:inline-block; margin:0 5px;}
#blog_statistics:after{content:"."; display:block; height:0; clear:both; visibility:hidden;}
#blog_statistics li{float:left; width:50%;margin:4px 0px;}
#blog_statistics li span{}
#blog_statistics li a{}
/* search */
#panel_Search{ }
#panel_Search form{display:block; *display:inline-block; height:24px; padding:0 3px; overflow:hidden; margin-top:10px;border:solid 1px #ccc; background:url(../images/search_bg.gif) repeat-x top;}
#panel_Search .panel_body:after{content:"."; display:block; height:0; clear:both; visibility:hidden;}
#panel_Search .panel_body span{float:left;}
#panel_Search .panel_body .blogsearch{width:140px; height:20px; margin:2px 5px 0 0; border:none; *border:solid 1px #fff; color:#666;}/* search input */
#panel_Search .panel_body #btnSubmit{text-indent: -1000px;border:none;display:inline-block; width:16px; height:16px; overflow:hidden; margin:5px 0 0 0; background:url(../images/ico_sear.gif) no-repeat 0 0; line-height:999px; cursor:pointer;}/* search icon */
/* classfiy */
#panel_Category{ }
#newcomments{}
#load_comments{cursor:pointer;font-size:14px;font-family:"微软雅黑";line-height:30px;border:solid 1px #ddd;margin:5px;display:block;height:30px;text-align:center;background:url(../images/commentsbarbg.jpg) repeat-x bottom 0;}
/* archive */
#panel_Archive{}
#panel_Archive li{display:block; *display:inline-block;}
#panel_Archive li:after{content:"."; display:block; height:0; clear:both; visibility:hidden;}
/*#panel_Archive li a{color:#333;}*/
#panel_Archive .list_closed{float:right; padding:0 0 0 12px; background:url(../../../images/arrow_down.gif) no-repeat left center; color:#666; cursor:pointer;}
#panel_Archive .list_opended{float:right; padding:0 0 0 12px; background:url(../../../images/arrow_up.gif) no-repeat left center; color:#666; cursor:pointer;}
#archive_list{display:block; *display:inline-block;}
#archive_list:after{content:"."; display:block; height:0; clear:both; visibility:hidden;}
.comment_item fieldset{padding:0 10px; border:solid 1px #ddd; background-color:#f1f1f1;color:#999;}
.comment_head,.commentform_title{border-radius:5px;clear: both; background:#f1f1f1; color:#888; padding:1px 4px; }
.comment_reply .comment_head{background-color:#ddd;}
.comment_reply{background-color:#f6f6f6;}
.newcomment{ border: 1px solid #eee; padding: 10px; line-height: 20px; margin: 5px; width: 90%; background-color: #f6f6f6; }
.commentform_title{color:#000; font-size:14px;}
.commentform .comment_btn{width:85px; height:26px; margin:10px 0 0 90px; border:none; background:url(../images/submit_bg.gif) no-repeat 0 0; color:#666; font:normal 12px/26px Arial, Helvetica, sans-serif; text-align:center;}
/* 回复声明 */
.announce{padding:15px 0 10px 131px; color:#666;}

View File

@@ -0,0 +1,891 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<title>C语言结构体的字节对齐原则 - shenbin1430的专栏 - 博客频道 - CSDN.NET</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="description" content="为什么要对齐?&nbsp;&nbsp;&nbsp;现代计算机中内存空间都是按照byte划分的从理论上讲似乎对任何类型的变量的访问可以从任何地址开始但实际情况是在访问特定类型变量的时候经常在特定的内存地址访问这就需要各种类型数据按照一定的规则在空间上排列而不是顺序的一个接一个的排放这就是对齐。&nbsp;&nbsp;&nbsp;对齐的作用和原因:各个硬件平台对存储空间的处理上有很大的不同。一些平台对某些特定类型的数据只能从某些特">
<script src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/ga.js" async="" type="text/javascript"></script><script src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/jquery.js" type="text/javascript"></script>
<script src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/plugins.js" type="text/javascript"></script>
<script src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/common.js" type="text/javascript"></script>
<script type="text/javascript" src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/ad.js"></script>
<link rel="Stylesheet" type="text/css" href="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/style.css">
<link id="RSSLink" title="RSS" type="application/rss+xml" rel="alternate" href="http://blog.csdn.net/shenbin1430/rss/list">
<link rel="shortcut icon" href="http://blog.csdn.net/favicon.ico">
<link type="text/css" rel="stylesheet" href="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/default.css">
</head>
<body>
<script src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/pub_topnav_2011.js" type="text/javascript"></script><link rel="stylesheet" type="text/css" href="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/navtop_2012.css">
<div class="nav_top_2011">
<p><span style="color:red;">您还未登录!</span>|<a href="https://passport.csdn.net/account/login" target="_top">登录</a>|<a href="https://passport.csdn.net/account/register" target="_top">注册</a>|<a href="https://passport.csdn.net/help/faq" target="_blank">帮助</a></p><ul>
<li><a href="http://www.csdn.net/" target="_blank">首页</a></li>
<li><a href="http://news.csdn.net/" target="_blank">业界</a></li>
<li><a href="http://mobile.csdn.net/" target="_blank">移动</a></li>
<li><a href="http://cloud.csdn.net/" target="_blank">云计算</a></li>
<li><a href="http://sd.csdn.net/" target="_blank">研发</a></li>
<li><a href="http://bbs.csdn.net/" target="_blank">论坛</a></li>
<li><a href="http://blog.csdn.net/" target="_blank">博客</a></li>
<li><a href="http://download.csdn.net/" target="_blank">下载</a></li>
<li class="more"><h2 id="topnav_btnmore" onclick="showNavMore(this)"><a href="javascript:void(0);">更多</a></h2>
<div id="topnav_hidlist">
<iframe name="nav_frm" src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/a.htm" frameborder="no" height="178" scrolling="no" width="92"></iframe>
</div>
</li>
</ul>
</div>
<div id="container">
<div id="header">
<div class="header">
<div id="blog_title">
<h1><a href="http://blog.csdn.net/shenbin1430">shenbin1430的专栏</a></h1>
<h2></h2>
<div class="clear"></div>
</div>
<div class="clear"></div>
</div>
</div>
<div id="navigator">
<div class="navigator_bg"></div>
<div class="navigator">
<ul>
<li id="btnContents"><a href="http://blog.csdn.net/shenbin1430?viewmode=contents"><span><img src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/ico_list.gif">目录视图</span></a></li>
<li id="btnView"><a href="http://blog.csdn.net/shenbin1430?viewmode=list"><span><img src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/ico_summary.gif">摘要视图</span></a></li>
<li id="btnRss"><a href="http://blog.csdn.net/shenbin1430/rss/list"><span><img src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/ico_rss.gif">订阅</span></a></li>
</ul>
</div>
</div>
<script type="text/javascript">
var username = "shenbin1430";
var blog_address = "http://blog.csdn.net/shenbin1430";
var static_host = "http://static.blog.csdn.net";
var currentUserName = "";
</script>
<div id="body">
<div id="main">
<div class="main">
<div class="notice">
<a href="http://blog.csdn.net/csdnproduct/article/details/8206587" target="_blank">
<font color="red">
公告CSDN 搜索第二版正式上线! </font></a>
&nbsp;&nbsp;
<a href="http://bbs.csdn.net/topics/390312398" target="_blank"><font color="red">CSDN论坛2012年度职场优秀帖评选活动正式开始</font></a>
&nbsp;&nbsp;&nbsp;
<a href="http://blog.csdn.net/zhangoi391/article/details/8161343" target="_blank">
<font color="red">2000元大奖征异构开发博文 </font></a>
<br>
<a href="http://vote.blog.csdn.net/details/blogstar" target="_blank">
<font color="red">2012CSDN博客之星评选正式上线 </font></a>
&nbsp;&nbsp;&nbsp;&nbsp;
<a href="http://events.csdn.net/DR2012/roadshow/index.html" target="_blank">
<font color="red">【免费】解读海外市场营销奥秘 </font></a>
&nbsp;&nbsp;&nbsp;&nbsp;
<a href="http://blog.csdn.net/csdnproduct/article/details/8101993" target="_blank">
<font color="red">CSDN博客频道推出TAG功能 </font></a>
</div><div id="article_details" class="details">
<div class="article_title">
<span class="ico ico_type_Original"></span>
<h3>
<span class="link_title"><a href="http://blog.csdn.net/shenbin1430/article/details/4292463">
C语言结构体的字节对齐原则
</a></span>
</h3>
</div>
<div class="article_manage">
<span class="link_categories">
分类:
<a href="http://blog.csdn.net/shenbin1430/article/category/558503">程序设计</a>
</span>
<span class="link_postdate">2009-06-23 18:27</span>
<span class="link_view" title="阅读次数">1284人阅读</span>
<span class="link_comments" title="评论次数"><a href="#comments">评论</a>(1)</span>
<span class="link_collect"><a href="javascript:void(0);" onclick="javascript:collectArticle('C语言结构体的字节对齐原则','4292463');return false;" title="收藏">收藏</a></span>
<span class="link_report"><a href="#report" onclick="javascript:report(4292463,2);return false;" title="举报">举报</a></span>
</div>
<div id="article_content" class="article_content">
<p style="text-indent: 2em;">为什么要对齐?</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;
现代计算机中内存空间都是按照byte划分的从理论上讲似乎对任何类型的变量的访问可以从任何地址开始但实际情况是在访问特定类型变量的时候经常在特
定的内存地址访问,这就需要各种类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;
对齐的作用和原因各个硬件平台对存储空间的处理上有很大的不同。一些平台对某些特定类型的数据只能从某些特定地址开始存取。比如有些架构的CPU在访问
一个没有进行对齐的变量的时候会发生错误,那么在这种架构下编程必须保证字节对齐.其他平台可能没有这种情况,但是最常见的是如果不按照适合其平台要求对
数据存放进行对齐会在存取效率上带来损失。比如有些平台每次读都是从偶地址开始如果一个int型假设为32位系统如果存放在偶地址开始的地方
么一个读周期就可以读出这32bit而如果存放在奇地址开始的地方就需要2个读周期并对两次读出的结果的高低字节进行拼凑才能得到该32bit数
据。显然在读取效率上下降很多。</p>
<p style="text-indent: 2em;">二.字节对齐对程序的影响:</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp; 先让我们看几个例子吧(32bit,x86环境,gcc编译器):</p>
<p style="text-indent: 2em;">设结构体如下定义:</p>
<p style="text-indent: 2em;">struct A</p>
<p style="text-indent: 2em;">{</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp; int a;</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp; char b;</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp; short c;</p>
<p style="text-indent: 2em;">};</p>
<p style="text-indent: 2em;">struct B</p>
<p style="text-indent: 2em;">{</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp; char b;</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp; int a;</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp; short c;</p>
<p style="text-indent: 2em;">};</p>
<p style="text-indent: 2em;">现在已知32位机器上各种数据类型的长度如下:</p>
<p style="text-indent: 2em;">char:1(有符号无符号同)&nbsp;&nbsp;&nbsp; </p>
<p style="text-indent: 2em;">short:2(有符号无符号同)&nbsp;&nbsp;&nbsp; </p>
<p style="text-indent: 2em;">int:4(有符号无符号同)&nbsp;&nbsp;&nbsp; </p>
<p style="text-indent: 2em;">long:4(有符号无符号同)&nbsp;&nbsp;&nbsp; </p>
<p style="text-indent: 2em;">float:4&nbsp;&nbsp;&nbsp; double:8</p>
<p style="text-indent: 2em;">那么上面两个结构大小如何呢?</p>
<p style="text-indent: 2em;">结果是:</p>
<p style="text-indent: 2em;">sizeof(strcut A)值为8</p>
<p style="text-indent: 2em;">sizeof(struct B)的值却是12</p>
<p style="text-indent: 2em;">结构体A中包含了4字节长度的int一个1字节长度的char一个和2字节长度的short型数据一个,B也一样;按理说A,B大小应该都是7字节。</p>
<p style="text-indent: 2em;">之所以出现上面的结果是因为编译器要对数据成员在空间上进行对齐。上面是按照编译器的默认设置进行对齐的结果,那么我们是不是可以改变编译器的这种默认对齐设置呢,当然可以.例如:</p>
<p style="text-indent: 2em;">#pragma pack (2) /*指定按2字节对齐*/</p>
<p style="text-indent: 2em;">struct C</p>
<p style="text-indent: 2em;">{</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp; char b;</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp; int a;</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp; short c;</p>
<p style="text-indent: 2em;">};</p>
<p style="text-indent: 2em;">#pragma pack () /*取消指定对齐,恢复缺省对齐*/</p>
<p style="text-indent: 2em;">sizeof(struct C)值是8。</p>
<p style="text-indent: 2em;">修改对齐值为1</p>
<p style="text-indent: 2em;">#pragma pack (1) /*指定按1字节对齐*/</p>
<p style="text-indent: 2em;">struct D</p>
<p style="text-indent: 2em;">{</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp; char b;</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp; int a;</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp; short c;</p>
<p style="text-indent: 2em;">};</p>
<p style="text-indent: 2em;">#pragma pack () /*取消指定对齐,恢复缺省对齐*/</p>
<p style="text-indent: 2em;">sizeof(struct D)值为7。</p>
<p style="text-indent: 2em;">后面我们再讲解#pragma pack()的作用.</p>
<p style="text-indent: 2em;">三.编译器是按照什么样的原则进行对齐的?</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp; 先让我们看四个重要的基本概念:</p>
<p style="text-indent: 2em;">1.数据类型自身的对齐值:</p>
<p style="text-indent: 2em;">&nbsp; 对于char型数据其自身对齐值为1对于short型为2对于int,float,double类型其自身对齐值为4单位字节。</p>
<p style="text-indent: 2em;">2.结构体或者类的自身对齐值:其成员中自身对齐值最大的那个值。</p>
<p style="text-indent: 2em;">3.指定对齐值:#pragma pack (value)时的指定对齐值value。</p>
<p style="text-indent: 2em;">4.数据成员、结构体和类的有效对齐值:自身对齐值和指定对齐值中小的那个值。</p>
<p style="text-indent: 2em;">
了这些值我们就可以很方便的来讨论具体数据结构的成员和其自身的对齐方式。有效对齐值N是最终用来决定数据存放地址方式的值最重要。有效对齐N就是
表示“对齐在N上”也就是说该数据的"存放起始地址%N=0".而数据结构中的数据变量都是按定义的先后顺序来排放的。第一个数据变量的起始地址就是数
据结构的起始地址。结构体的成员变量要对齐排放,结构体本身也要根据自身的有效对齐值圆整(就是结构体成员变量占用总长度需要是对结构体有效对齐值的整数
倍,结合下面例子理解)。这样就不能理解上面的几个例子的值了。</p>
<p style="text-indent: 2em;">例子分析:</p>
<p style="text-indent: 2em;">分析例子B</p>
<p style="text-indent: 2em;">struct B</p>
<p style="text-indent: 2em;">{</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp; char b;</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp; int a;</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp; short c;</p>
<p style="text-indent: 2em;">};</p>
<p style="text-indent: 2em;">
设B从地址空间0x0000开始排放。该例子中没有定义指定对齐值在笔者环境下该值默认为4。第一个成员变量b的自身对齐值是1比指定或者默认指定
对齐值4小所以其有效对齐值为1所以其存放地址0x0000符合0x0000%1=0.第二个成员变量a其自身对齐值为4所以有效对齐值也为4
所以只能存放在起始地址为0x0004到0x0007这四个连续的字节空间中复核0x0004%4=0,且紧靠第一个变量。第三个变量c,自身对齐值为
2所以有效对齐值也是2可以存放在0x0008到0x0009这两个字节空间中符合0x0008%2=0。所以从0x0000到0x0009存放的
都是B内容。再看数据结构B的自身对齐值为其变量中最大对齐值(这里是b所以就是4所以结构体的有效对齐值也是4。根据结构体圆整的要求
0x0009到0x0000=10字节10240。所以0x0000A到0x000B也为结构体B所占用。故B从0x0000到0x000B
共有12个字节,sizeof(struct B)=12;其实如果就这一个就来说它已将满足字节对齐了,
因为它的起始地址是0,因此肯定是对齐的,之所以在后面补充2个字节,是因为编译器为了实现结构数组的存取效率,试想如果我们定义了一个结构B的数组,那
么第一个结构起始地址是0没有问题,但是第二个结构呢?按照数组的定义,数组中所有元素都是紧挨着的,如果我们不把结构的大小补充为4的整数倍,那么下一
个结构的起始地址将是0x0000A,这显然不能满足结构的地址对齐了,因此我们要把结构补充成有效对齐大小的整数倍.其实诸如:对于char型数据
自身对齐值为1对于short型为2对于int,float,double类型其自身对齐值为4这些已有类型的自身对齐值也是基于数组考虑的,只
是因为这些类型的长度已知了,所以他们的自身对齐值也就已知了.</p>
<p style="text-indent: 2em;">同理,分析上面例子C</p>
<p style="text-indent: 2em;">#pragma pack (2) /*指定按2字节对齐*/</p>
<p style="text-indent: 2em;">struct C</p>
<p style="text-indent: 2em;">{</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp; char b;</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp; int a;</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp; short c;</p>
<p style="text-indent: 2em;">};</p>
<p style="text-indent: 2em;">#pragma pack () /*取消指定对齐,恢复缺省对齐*/</p>
<p style="text-indent: 2em;">
一个变量b的自身对齐值为1指定对齐值为2所以其有效对齐值为1假设C从0x0000开始那么b存放在0x0000符合0x0000%1=
0;第二个变量自身对齐值为4指定对齐值为2所以有效对齐值为2所以顺序存放在0x0002、0x0003、0x0004、0x0005四个连续
字节中符合0x0002%2=0。第三个变量c的自身对齐值为2所以有效对齐值为2顺序存放</p>
<p style="text-indent: 2em;">在0x0006、0x0007中符合
0x0006%2=0。所以从0x0000到0x00007共八字节存放的是C的变量。又C的自身对齐值为4所以C的有效对齐值为2。又8%2=0,C
只占用0x0000到0x0007的八个字节。所以sizeof(struct C)=8.</p>
<p style="text-indent: 2em;">四.如何修改编译器的默认对齐值?</p>
<p style="text-indent: 2em;">1.在VC IDE中可以这样修改[Project]|[Settings],c/c++选项卡Category的Code Generation选项的Struct Member Alignment中修改默认是8字节。</p>
<p style="text-indent: 2em;">2.在编码时,可以这样动态修改:#pragma pack .注意:是pragma而不是progma.</p>
<p style="text-indent: 2em;">五.针对字节对齐,我们在编程中如何考虑?</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;
如果在编程的时候要考虑节约空间的话,那么我们只需要假定结构的首地址是0,然后各个变量按照上面的原则进行排列即可,基本的原则就是把结构中的变量按照
类型大小从小到大声明,尽量减少中间的填补空间.还有一种就是为了以空间换取时间的效率,我们显示的进行填补空间进行对齐,比如:有一种使用空间换时间做
法是显式的插入reserved成员</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; struct A{</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char a;</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char reserved[3];//使用空间换时间</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int b;</p>
<p style="text-indent: 2em;">}</p>
<p style="text-indent: 2em;">reserved成员对我们的程序没有什么意义,它只是起到填补空间以达到字节对齐的目的,当然即使不加这个成员通常编译器也会给我们自动填补对齐,我们自己加上它只是起到显式的提醒作用.</p>
<p style="text-indent: 2em;">六.字节对齐可能带来的隐患:</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp; 代码中关于对齐的隐患,很多是隐式的。比如在强制类型转换的时候。例如:</p>
<p style="text-indent: 2em;">unsigned int i = 0x12345678;</p>
<p style="text-indent: 2em;">unsigned char *p=NULL;</p>
<p style="text-indent: 2em;">unsigned short *p1=NULL;</p>
<p style="text-indent: 2em;">p=&amp;i;</p>
<p style="text-indent: 2em;">*p=0x00;</p>
<p style="text-indent: 2em;">p1=(unsigned short *)(p+1);</p>
<p style="text-indent: 2em;">*p1=0x0000;</p>
<p style="text-indent: 2em;">最后两句代码从奇数边界去访问unsignedshort型变量显然不符合对齐的规定。</p>
<p style="text-indent: 2em;">在x86上类似的操作只会影响效率但是在MIPS或者sparc上可能就是一个error,因为它们要求必须字节对齐.</p>
<p style="text-indent: 2em;">七.如何查找与字节对齐方面的问题:</p>
<p style="text-indent: 2em;">如果出现对齐或者赋值问题首先查看</p>
<p style="text-indent: 2em;">1. 编译器的big little端设置</p>
<p style="text-indent: 2em;">2. 看这种体系本身是否支持非对齐访问</p>
<p style="text-indent: 2em;">3. 如果支持看设置了对齐与否,如果没有则看访问时需要加某些特殊的修饰来标志其特殊访问操作。</p>
<p style="text-indent: 2em;">&nbsp;ARM下的对齐处理 </p>
<p style="text-indent: 2em;">from DUI0067D_ADS1_2_CompLib </p>
<p style="text-indent: 2em;">3.13 type&nbsp; qulifiers </p>
<p style="text-indent: 2em;">有部分摘自ARM编译器文档对齐部分</p>
<p style="text-indent: 2em;">对齐的使用:</p>
<p style="text-indent: 2em;">1.__align(num)</p>
<p style="text-indent: 2em;">&nbsp;&nbsp; 这个用于修改最高级别对象的字节边界。在汇编中使用LDRD或者STRD时</p>
<p style="text-indent: 2em;">&nbsp;&nbsp; 就要用到此命令__align(8)进行修饰限制。来保证数据对象是相应对齐。</p>
<p style="text-indent: 2em;">&nbsp;&nbsp; 这个修饰对象的命令最大是8个字节限制,可以让2字节的对象进行4字节</p>
<p style="text-indent: 2em;">&nbsp;&nbsp; 对齐,但是不能让4字节的对象2字节对齐。</p>
<p style="text-indent: 2em;">&nbsp;&nbsp; __align是存储类修改,他只修饰最高级类型对象不能用于结构或者函数对象。</p>
<p style="text-indent: 2em;">&nbsp;</p>
<p style="text-indent: 2em;">2.__packed </p>
<p style="text-indent: 2em;">&nbsp; __packed是进行一字节对齐</p>
<p style="text-indent: 2em;">&nbsp; 1.不能对packed的对象进行对齐</p>
<p style="text-indent: 2em;">&nbsp; 2.所有对象的读写访问都进行非对齐访问</p>
<p style="text-indent: 2em;">&nbsp; 3.float及包含float的结构联合及未用__packed的对象将不能字节对齐</p>
<p style="text-indent: 2em;">&nbsp; 4.__packed对局部整形变量无影响</p>
<p style="text-indent: 2em;">&nbsp; 5.强制由unpacked对象向packed对象转化是未定义,整形指针可以合法定</p>
<p style="text-indent: 2em;">&nbsp; 义为packed。</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;&nbsp; __packed int* p;&nbsp; //__packed int 则没有意义</p>
<p style="text-indent: 2em;">&nbsp; 6.对齐或非对齐读写访问带来问题</p>
<p style="text-indent: 2em;">&nbsp; __packed struct STRUCT_TEST</p>
<p style="text-indent: 2em;">&nbsp;{</p>
<p style="text-indent: 2em;">&nbsp; char a;</p>
<p style="text-indent: 2em;">&nbsp; int b;</p>
<p style="text-indent: 2em;">&nbsp; char c;</p>
<p style="text-indent: 2em;">&nbsp;}&nbsp; ;&nbsp;&nbsp;&nbsp; //定义如下结构此时b的起始地址一定是不对齐的</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //在栈中访问b可能有问题,因为栈上数据肯定是对齐访问[from CL]</p>
<p style="text-indent: 2em;">//将下面变量定义成全局静态不在栈上 </p>
<p style="text-indent: 2em;">static char* p;</p>
<p style="text-indent: 2em;">static struct STRUCT_TEST a;</p>
<p style="text-indent: 2em;">void Main()</p>
<p style="text-indent: 2em;">{</p>
<p style="text-indent: 2em;">&nbsp;__packed int* q;&nbsp; //此时定义成__packed来修饰当前q指向为非对齐的数据地址下面的访问则可以</p>
<p style="text-indent: 2em;">&nbsp;p = (char*)&amp;a;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>
<p style="text-indent: 2em;">&nbsp;q = (int*)(p+1);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>
<p style="text-indent: 2em;">&nbsp;</p>
<p style="text-indent: 2em;">&nbsp;*q = 0x87654321; </p>
<p style="text-indent: 2em;">/*&nbsp;&nbsp; </p>
<p style="text-indent: 2em;">得到赋值的汇编指令很清楚</p>
<p style="text-indent: 2em;">ldr&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; r5,0x20001590 ; = #0x12345678</p>
<p style="text-indent: 2em;">[0xe1a00005]&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; r0,r5</p>
<p style="text-indent: 2em;">[0xeb0000b0]&nbsp;&nbsp; bl&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; __rt_uwrite4&nbsp; //在此处调用一个写4byte的操作函数 </p>
<p style="text-indent: 2em;">&nbsp;</p>
<p style="text-indent: 2em;">[0xe5c10000]&nbsp;&nbsp; strb&nbsp;&nbsp;&nbsp;&nbsp; r0,[r1,#0]&nbsp;&nbsp; //函数进行4次strb操作然后返回保证了数据正确的访问</p>
<p style="text-indent: 2em;">[0xe1a02420]&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; r2,r0,lsr #8</p>
<p style="text-indent: 2em;">[0xe5c12001]&nbsp;&nbsp; strb&nbsp;&nbsp;&nbsp;&nbsp; r2,[r1,#1]</p>
<p style="text-indent: 2em;">[0xe1a02820]&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; r2,r0,lsr #16</p>
<p style="text-indent: 2em;">[0xe5c12002]&nbsp;&nbsp; strb&nbsp;&nbsp;&nbsp;&nbsp; r2,[r1,#2]</p>
<p style="text-indent: 2em;">[0xe1a02c20]&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; r2,r0,lsr #24</p>
<p style="text-indent: 2em;">[0xe5c12003]&nbsp;&nbsp; strb&nbsp;&nbsp;&nbsp;&nbsp; r2,[r1,#3]</p>
<p style="text-indent: 2em;">[0xe1a0f00e]&nbsp;&nbsp; mov&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pc,r14</p>
<p style="text-indent: 2em;">*/</p>
<p style="text-indent: 2em;">/*</p>
<p style="text-indent: 2em;">如果q没有加__packed修饰则汇编出来指令是这样直接会导致奇地址处访问失败</p>
<p style="text-indent: 2em;">[0xe59f2018]&nbsp;&nbsp; ldr&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; r2,0x20001594 ; = #0x87654321</p>
<p style="text-indent: 2em;">[0xe5812000]&nbsp;&nbsp; str&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; r2,[r1,#0]</p>
<p style="text-indent: 2em;">*/</p>
<p style="text-indent: 2em;">//这样可以很清楚的看到非对齐访问是如何产生错误的</p>
<p style="text-indent: 2em;">//以及如何消除非对齐访问带来问题</p>
<p style="text-indent: 2em;">//也可以看到非对齐访问和对齐访问的指令差异导致效率问题</p>
<p style="text-indent: 2em;">}&nbsp;</p>
<p style="text-indent: 2em;">&nbsp;</p>
<p style="text-indent: 2em;">sizeof进行结构体大小的判断</p>
<p style="text-indent: 2em;">typedef struct</p>
<p style="text-indent: 2em;">{</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;&nbsp;int a;</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;&nbsp;char b;</p>
<p style="text-indent: 2em;">}A_t;</p>
<p style="text-indent: 2em;">typedef struct</p>
<p style="text-indent: 2em;">{</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;&nbsp;int a;</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;&nbsp;char b;</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;&nbsp;char c;</p>
<p style="text-indent: 2em;">}B_t;</p>
<p style="text-indent: 2em;">typedef struct</p>
<p style="text-indent: 2em;">{</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;&nbsp;char a;</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;&nbsp;int b;</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;&nbsp;char c;</p>
<p style="text-indent: 2em;">}C_t;</p>
<p style="text-indent: 2em;">void main()</p>
<p style="text-indent: 2em;">{</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;&nbsp;char*a=0;</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;&nbsp;cout&lt;&lt;sizeof(a)&lt;&lt;endl;//4</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;&nbsp;cout&lt;&lt;sizeof(*a)&lt;&lt;endl;//1--这个能理解</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cout&lt;&lt;sizeof(A_t)&lt;&lt;endl;//8</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cout&lt;&lt;sizeof(B_t)&lt;&lt;endl;//8</p>
<p style="text-indent: 2em;">&nbsp;&nbsp;&nbsp;&nbsp;cout&lt;&lt;sizeof(C_t)&lt;&lt;endl;//12</p>
<p style="text-indent: 2em;">}</p>
<p style="text-indent: 2em;">为什么是这样的结果啊? </p>
<p style="text-indent: 2em;">2. 语法: </p>
<p style="text-indent: 2em;">sizeof有三种语法形式如下 </p>
<p style="text-indent: 2em;">1) sizeof( object ); // sizeof( 对象 ); </p>
<p style="text-indent: 2em;">2) sizeof( type_name ); // sizeof( 类型 ); </p>
<p style="text-indent: 2em;">3) sizeof object; // sizeof 对象; </p>
<p style="text-indent: 2em;">5. 指针变量的sizeof </p>
<p style="text-indent: 2em;">既然是来存放地址的那么它当然等于计算机内部地址总线的宽度。所以在32位计算机中</p>
<p style="text-indent: 2em;">个指针变量的返回值必定是4以字节为单位可以预计在将来的64位系统</p>
<p style="text-indent: 2em;">中指针变量的sizeof结果为8。 </p>
<p style="text-indent: 2em;">char* pc = "abc"; </p>
<p style="text-indent: 2em;">int* pi; </p>
<p style="text-indent: 2em;">string* ps; </p>
<p style="text-indent: 2em;">char** ppc = &amp;pc; </p>
<p style="text-indent: 2em;">void (*pf)();// 函数指针 </p>
<p style="text-indent: 2em;">sizeof( pc ); // 结果为4 </p>
<p style="text-indent: 2em;">sizeof( pi ); // 结果为4 </p>
<p style="text-indent: 2em;">sizeof( ps ); // 结果为4 </p>
<p style="text-indent: 2em;">sizeof( ppc ); // 结果为4 </p>
<p style="text-indent: 2em;">sizeof( pf );// 结果为4 </p>
<p style="text-indent: 2em;">指针变量的sizeof值与指针所指的对象没有任何关系正是由于所有的指针变量所占内存</p>
<p style="text-indent: 2em;">大小相等所以MFC消息处理函数使用两个参数WPARAM、LPARAM就能传递各种复杂的消息结</p>
<p style="text-indent: 2em;">构(使用指向结构体的指针)。 </p>
<p style="text-indent: 2em;">6. 数组的sizeof </p>
<p style="text-indent: 2em;">数组的sizeof值等于数组所占用的内存字节数 </p>
<p style="text-indent: 2em;">char a1[] = "abc"; </p>
<p style="text-indent: 2em;">int a2[3]; </p>
<p style="text-indent: 2em;">sizeof( a1 ); // 结果为4字符串末尾还存在一个NULL终止符 </p>
<p style="text-indent: 2em;">sizeof( a2 ); // 结果为3*4=12依赖于int </p>
<p style="text-indent: 2em;">一些朋友刚开始时把sizeof当作了求数组元素的个数现在你应该知道这是不对的</p>
<p style="text-indent: 2em;">么应该怎么求数组元素的个数呢Easy通常有下面两种写法 </p>
<p style="text-indent: 2em;">int c1 = sizeof( a1 ) / sizeof( char ); // 总长度/单个元素的长度 </p>
<p style="text-indent: 2em;">int c2 = sizeof( a1 ) / sizeof( a1[0] ); // 总长度/第一个元素的长度 </p>
<p style="text-indent: 2em;">写到这里提一问下面的c3c4值应该是多少呢 </p>
<p style="text-indent: 2em;">void foo3(char a3[3]) </p>
<p style="text-indent: 2em;">{ </p>
<p style="text-indent: 2em;">int c3 = sizeof( a3 ); // c3 == </p>
<p style="text-indent: 2em;">} </p>
<p style="text-indent: 2em;">void foo4(char a4[]) </p>
<p style="text-indent: 2em;">{ </p>
<p style="text-indent: 2em;">int c4 = sizeof( a4 ); // c4 == </p>
<p style="text-indent: 2em;">} </p>
<p style="text-indent: 2em;">也许当你试图回答c4的值时已经意识到c3答错了是的c3!=3。这里函数参数a3已不再是</p>
<p style="text-indent: 2em;">数组类型而是蜕变成指针相当于char* a3为什么仔细想想就不难明白我们调用</p>
<p style="text-indent: 2em;">函数foo1时程序会在栈上分配一个大小为3的数组吗不会数组是“传址”的调用者</p>
<p style="text-indent: 2em;">只需将实参的地址传递过去所以a3自然为指针类型char*c3的值也就为4。 </p>
<p style="text-indent: 2em;">7. 结构体的sizeof </p>
<p style="text-indent: 2em;">这是初学者问得最多的一个问题,所以这里有必要多费点笔墨。让我们先看一个结构体:</p>
<p style="text-indent: 2em;">struct S1 </p>
<p style="text-indent: 2em;">{ </p>
<p style="text-indent: 2em;">char c; </p>
<p style="text-indent: 2em;">int i; </p>
<p style="text-indent: 2em;">}; </p>
<p style="text-indent: 2em;">问sizeof(s1)等于多少聪明的你开始思考了char占1个字节int占4个字节那么加起</p>
<p style="text-indent: 2em;">来就应该是5。是这样吗你在你机器上试过了吗也许你是对的但很可能你是错的V</p>
<p style="text-indent: 2em;">C6中按默认设置得到的结果为8。 </p>
<p style="text-indent: 2em;">Why为什么受伤的总是我 </p>
<p style="text-indent: 2em;">请不要沮丧我们来好好琢磨一下sizeof的定义——sizeof的结果等于对象或者类型所占</p>
<p style="text-indent: 2em;">的内存字节数好吧那就让我们来看看S1的内存分配情况 </p>
<p style="text-indent: 2em;">S1 s1 = {&nbsp;&nbsp;a , 0xFFFFFFFF }; </p>
<p style="text-indent: 2em;">定义上面的变量后加上断点运行程序观察s1所在的内存你发现了什么 </p>
<p style="text-indent: 2em;">以我的VC6.0为例s1的地址为0x0012FF78其数据内容如下 </p>
<p style="text-indent: 2em;">0012FF78: 61 CC CC CC FF FF FF FF </p>
<p style="text-indent: 2em;">发现了什么怎么中间夹杂了3个字节的CC看看MSDN上的说明 </p>
<p style="text-indent: 2em;">When applied to a structure type or variable, sizeof returns the actual size, </p>
<p style="text-indent: 2em;">which may include padding bytes inserted for alignment. </p>
<p style="text-indent: 2em;">原来如此,这就是传说中的字节对齐啊!一个重要的话题出现了。 </p>
<p style="text-indent: 2em;">为什么需要字节对齐?计算机组成原理教导我们这样有助于加快计算机的取数速度,否则</p>
<p style="text-indent: 2em;">就得多花指令周期了。为此,编译器默认会对结构体进行处理(实际上其它地方的数据变</p>
<p style="text-indent: 2em;">量也是如此让宽度为2的基本数据类型short等都位于能被2整除的地址上让宽度</p>
<p style="text-indent: 2em;">为4的基本数据类型int等都位于能被4整除的地址上以此类推。这样两个数中间就</p>
<p style="text-indent: 2em;">可能需要加入填充字节所以整个结构体的sizeof值就增长了。 </p>
<p style="text-indent: 2em;">让我们交换一下S1中char与int的位置 </p>
<p style="text-indent: 2em;">struct S2 </p>
<p style="text-indent: 2em;">{ </p>
<p style="text-indent: 2em;">int i; </p>
<p style="text-indent: 2em;">char c; </p>
<p style="text-indent: 2em;">}; </p>
<p style="text-indent: 2em;">看看sizeof(S2)的结果为多少怎么还是8再看看内存原来成员c后面仍然有3个填充字</p>
<p style="text-indent: 2em;">节,这又是为什么啊?别着急,下面总结规律。 </p>
<p style="text-indent: 2em;">字节对齐的细节和编译器实现相关,但一般而言,满足三个准则: </p>
<p style="text-indent: 2em;">1) 结构体变量的首地址能够被其最宽基本类型成员的大小所整除; </p>
<p style="text-indent: 2em;">2) 结构体每个成员相对于结构体首地址的偏移量offset都是成员大小的整数倍如有</p>
<p style="text-indent: 2em;">需要编译器会在成员之间加上填充字节internal adding </p>
<p style="text-indent: 2em;">3) 结构体的总大小为结构体最宽基本类型成员大小的整数倍,如有需要编译器会在最末一</p>
<p style="text-indent: 2em;">个成员之后加上填充字节trailing padding</p>
<p style="text-indent: 2em;">对于上面的准则,有几点需要说明: </p>
<p style="text-indent: 2em;">1) 前面不是说结构体成员的地址是其大小的整数倍,怎么又说到偏移量了呢?因为有了第</p>
<p style="text-indent: 2em;">1点存在所以我们就可以只考虑成员的偏移量这样思考起来简单。想想为什么。 </p>
<p style="text-indent: 2em;">结构体某个成员相对于结构体首地址的偏移量可以通过宏offsetof()来获得,这个宏也在</p>
<p style="text-indent: 2em;">stddef.h中定义如下 </p>
<p style="text-indent: 2em;">#define offsetof(s,m) (size_t)&amp;(((s *)0)-&gt;m) </p>
<p style="text-indent: 2em;">例如想要获得S2中c的偏移量方法为 </p>
<p style="text-indent: 2em;">size_t pos = offsetof(S2, c);// pos等于4 </p>
<p style="text-indent: 2em;">2) 基本类型是指前面提到的像char、short、int、float、double这样的内置数据类型</p>
<p style="text-indent: 2em;">这里所说的“数据宽度”就是指其sizeof的大小。由于结构体的成员可以是复合类型</p>
<p style="text-indent: 2em;">如另外一个结构体,所以在寻找最宽基本类型成员时,应当包括复合类型成员的子成员,</p>
<p style="text-indent: 2em;">而不是把复合成员看成是一个整体。但在确定复合类型成员的偏移位置时则是将复合类型</p>
<p style="text-indent: 2em;">作为整体看待。 </p>
<p style="text-indent: 2em;">这里叙述起来有点拗口思考起来也有点挠头还是让我们看看例子吧具体数值仍以VC</p>
<p style="text-indent: 2em;">6为例以后不再说明 </p>
<p style="text-indent: 2em;">struct S3 </p>
<p style="text-indent: 2em;">{ </p>
<p style="text-indent: 2em;">char c1; </p>
<p style="text-indent: 2em;">S1 s; </p>
<p style="text-indent: 2em;">char c2 </p>
<p style="text-indent: 2em;">}; </p>
<p style="text-indent: 2em;">S1的最宽简单成员的类型为intS3在考虑最宽简单类型成员时是将S1“打散”看的所以</p>
<p style="text-indent: 2em;">S3的最宽简单类型为int这样通过S3定义的变量其存储空间首地址需要被4整除</p>
<p style="text-indent: 2em;">个sizeof(S3)的值也应该被4整除。 </p>
<p style="text-indent: 2em;">c1的偏移量为0s的偏移量呢这时s是一个整体它作为结构体变量也满足前面三个准则</p>
<p style="text-indent: 2em;">所以其大小为8偏移量为4c1与s之间便需要3个填充字节而c2与s之间就不需要了</p>
<p style="text-indent: 2em;">所以c2的偏移量为12算上c2的大小为1313是不能被4整除的这样末尾还得补上3个填</p>
<p style="text-indent: 2em;">充字节。最后得到sizeof(S3)的值为16。 </p>
<p style="text-indent: 2em;">通过上面的叙述,我们可以得到一个公式: </p>
<p style="text-indent: 2em;">结构体的大小等于最后一个成员的偏移量加上其大小再加上末尾的填充字节数目,即: </p>
<p style="text-indent: 2em;">sizeof( struct ) = offsetof( last item ) + sizeof( last item ) + sizeof( trail</p>
<p style="text-indent: 2em;">ing padding ) </p>
<p style="text-indent: 2em;">到这里朋友们应该对结构体的sizeof有了一个全新的认识但不要高兴得太早有一个</p>
<p style="text-indent: 2em;">影响sizeof的重要参量还未被提及那便是编译器的pack指令。它是用来调整结构体对齐</p>
<p style="text-indent: 2em;">方式的不同编译器名称和用法略有不同VC6中通过#pragma pack实现也可以直接修改</p>
<p style="text-indent: 2em;">/Zp编译开关。#pragma pack的基本用法为#pragma pack( n )n为字节对齐数其取值</p>
<p style="text-indent: 2em;">为1、2、4、8、16默认是8如果这个值比结构体成员的sizeof值小那么该成员的偏移</p>
<p style="text-indent: 2em;">量应该以此值为准,即是说,结构体成员的偏移量应该取二者的最小值,公式如下: </p>
<p style="text-indent: 2em;">offsetof( item ) = min( n, sizeof( item ) ) </p>
<p style="text-indent: 2em;">再看示例: </p>
<p style="text-indent: 2em;">#pragma pack(push) // 将当前pack设置压栈保存 </p>
<p style="text-indent: 2em;">#pragma pack(2)// 必须在结构体定义之前使用 </p>
<p style="text-indent: 2em;">struct S1 </p>
<p style="text-indent: 2em;">{ </p>
<p style="text-indent: 2em;">char c; </p>
<p style="text-indent: 2em;">int i; </p>
<p style="text-indent: 2em;">}; </p>
<p style="text-indent: 2em;">struct S3 </p>
<p style="text-indent: 2em;">{ </p>
<p style="text-indent: 2em;">char c1; </p>
<p style="text-indent: 2em;">S1 s; </p>
<p style="text-indent: 2em;">char c2 </p>
<p style="text-indent: 2em;">}; </p>
<p style="text-indent: 2em;">#pragma pack(pop) // 恢复先前的pack设置 </p>
<p style="text-indent: 2em;">计算sizeof(S1)时min(2, sizeof(i))的值为2所以i的偏移量为2加上sizeof(i)等于</p>
<p style="text-indent: 2em;">6能够被2整除所以整个S1的大小为6。 </p>
<p style="text-indent: 2em;">同样对于sizeof(S3)s的偏移量为2c2的偏移量为8加上sizeof(c2)等于9不能被</p>
<p style="text-indent: 2em;">2整除添加一个填充字节所以sizeof(S3)等于10。 </p>
<p style="text-indent: 2em;">现在,朋友们可以轻松的出一口气了, </p>
<p style="text-indent: 2em;">还有一点要注意“空结构体”不含数据成员的大小不为0而是1。试想一个“不占</p>
<p style="text-indent: 2em;">空间”的变量如何被取地址、两个不同的“空结构体”变量又如何得以区分呢?于是,“</p>
<p style="text-indent: 2em;">空结构体”变量也得被存储,这样编译器也就只能为其分配一个字节的空间用于占位了。</p>
<p style="text-indent: 2em;">如下: </p>
<p style="text-indent: 2em;">struct S5 { }; </p>
<p style="text-indent: 2em;">sizeof( S5 ); // 结果为1 </p>
<p style="text-indent: 2em;">8. 含位域结构体的sizeof </p>
<p style="text-indent: 2em;">前面已经说过位域成员不能单独被取sizeof值我们这里要讨论的是含有位域的结构体</p>
<p style="text-indent: 2em;">的sizeof只是考虑到其特殊性而将其专门列了出来。 </p>
<p style="text-indent: 2em;">C99规定int、unsigned int和bool可以作为位域类型但编译器几乎都对此作了扩展</p>
<p style="text-indent: 2em;">许其它类型类型的存在。 </p>
<p style="text-indent: 2em;">使用位域的主要目的是压缩存储,其大致规则为: </p>
<p style="text-indent: 2em;">1) 如果相邻位域字段的类型相同且其位宽之和小于类型的sizeof大小则后面的字段将</p>
<p style="text-indent: 2em;">紧邻前一个字段存储,直到不能容纳为止; </p>
<p style="text-indent: 2em;">2) 如果相邻位域字段的类型相同但其位宽之和大于类型的sizeof大小则后面的字段将</p>
<p style="text-indent: 2em;">从新的存储单元开始,其偏移量为其类型大小的整数倍; </p>
<p style="text-indent: 2em;">3) 如果相邻的位域字段的类型不同则各编译器的具体实现有差异VC6采取不压缩方式</p>
<p style="text-indent: 2em;">Dev-C++采取压缩方式; </p>
<p style="text-indent: 2em;">4) 如果位域字段之间穿插着非位域字段,则不进行压缩; </p>
<p style="text-indent: 2em;">5) 整个结构体的总大小为最宽基本类型成员大小的整数倍。 </p>
<p style="text-indent: 2em;">还是让我们来看看例子。 </p>
<p style="text-indent: 2em;">示例1 </p>
<p style="text-indent: 2em;">struct BF1 </p>
<p style="text-indent: 2em;">{ </p>
<p style="text-indent: 2em;">char f1 : 3; </p>
<p style="text-indent: 2em;">char f2 : 4; </p>
<p style="text-indent: 2em;">char f3 : 5; </p>
<p style="text-indent: 2em;">}; </p>
<p style="text-indent: 2em;">其内存布局为: </p>
<p style="text-indent: 2em;">|_f1__|__f2__|_|____f3___|____| </p>
<p style="text-indent: 2em;">|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_| </p>
<p style="text-indent: 2em;">0 3&nbsp;&nbsp; 7 8&nbsp;&nbsp; 1316 </p>
<p style="text-indent: 2em;">位域类型为char第1个字节仅能容纳下f1和f2所以f2被压缩到第1个字节中而f3只能</p>
<p style="text-indent: 2em;">从下一个字节开始。因此sizeof(BF1)的结果为2。 </p>
<p style="text-indent: 2em;">示例2 </p>
<p style="text-indent: 2em;">struct BF2 </p>
<p style="text-indent: 2em;">{ </p>
<p style="text-indent: 2em;">char f1 : 3; </p>
<p style="text-indent: 2em;">short f2 : 4; </p>
<p style="text-indent: 2em;">char f3 : 5; </p>
<p style="text-indent: 2em;">}; </p>
<p style="text-indent: 2em;">由于相邻位域类型不同在VC6中其sizeof为6在Dev-C++中为2。 </p>
<p style="text-indent: 2em;">示例3 </p>
<p style="text-indent: 2em;">struct BF3 </p>
<p style="text-indent: 2em;">{ </p>
<p style="text-indent: 2em;">char f1 : 3; </p>
<p style="text-indent: 2em;">char f2; </p>
<p style="text-indent: 2em;">char f3 : 5; </p>
<p style="text-indent: 2em;">}; </p>
<p style="text-indent: 2em;">非位域字段穿插在其中不会产生压缩在VC6和Dev-C++中得到的大小均为3。 </p>
<p style="text-indent: 2em;">9. 联合体的sizeof </p>
<p style="text-indent: 2em;">结构体在内存组织上是顺序式的,联合体则是重叠式,各成员共享一段内存,所以整个联</p>
<p style="text-indent: 2em;">合体的sizeof也就是每个成员sizeof的最大值。结构体的成员也可以是复合类型这里</p>
<p style="text-indent: 2em;">复合类型成员是被作为整体考虑的。 </p>
<p style="text-indent: 2em;">所以下面例子中U的sizeof值等于sizeof(s)。 </p>
<p style="text-indent: 2em;">union U </p>
<p style="text-indent: 2em;">{ </p>
<p style="text-indent: 2em;">int i; </p>
<p style="text-indent: 2em;">char c; </p>
<p style="text-indent: 2em;">S1 s; </p>
<p style="text-indent: 2em;">};</p>
</div>
<div class="share_buttons" id="sharePanel"><span>分享到:</span> <a name="sina" class="share_sina" title="分享到新浪微博"></a><a name="qq" class="share_qq" title="分享到腾讯微博"></a></div>
<!--192.168.1.237-->
<div class="article_next_prev">
<li class="prev_article"><span>上一篇:</span><a href="http://blog.csdn.net/shenbin1430/article/details/4292457">c#程序集的定义</a></li>
<li class="next_article"><span>下一篇:</span><a href="http://blog.csdn.net/shenbin1430/article/details/4292477">堆和栈的区别</a></li>
</div>
</div>
<div id="ad_cen"><iframe src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/ad.htm" style="border-width: 0px; overflow: hidden; width: 732px; height: 96px;" id="ad_frm_0" frameborder="0" scrolling="no"></iframe></div>
<script type="text/javascript">
new Ad(4, 'ad_cen');
</script>
<div id="comment_title" class="panel_head">查看评论<a name="comments"></a></div>
<div id="comment_list"><dl class="comment_item comment_topic" id="comment_item_1527531"><dt class="comment_head" floor="1">1楼 <span class="user"><a class="username" href="http://blog.csdn.net/googya" target="_blank">googya</a> <span class="ptime">2010-11-07 17:16发表</span> <a href="#reply" class="cmt_btn reply" title="回复">[回复]</a> <span class="comment_manage" style="display:none;" commentid="1527531" username="googya"> <a href="#quote" class="cmt_btn quote" title="引用">[引用]</a> <a href="#report" class="cmt_btn report" title="举报">[举报]</a></span></span></dt><dd class="comment_userface"><a href="http://blog.csdn.net/googya" target="_blank"><img src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/3_googya.jpg" height="40" width="40"></a></dd><dd class="comment_body">现在才知道这个玩意的重要性</dd></dl><div class="clear"></div></div>
<div style="display: none;" id="comment_bar"></div>
<div id="comment_form"><div class="guest_link">您还没有登录,请<a href="http://passport.csdn.net/account/login?from=http%3A%2F%2Fblog.csdn.net%2Fshenbin1430%2Farticle%2Fdetails%2F4292463">[登录]</a><a href="http://passport.csdn.net/account/register?from=http%3A%2F%2Fblog.csdn.net%2Fshenbin1430%2Farticle%2Fdetails%2F4292463">[注册]</a></div></div>
<div class="announce">* 以上用户言论只代表其个人观点不代表CSDN网站的观点或立场<a name="reply"></a><a name="quote"></a></div>
<script type="text/javascript">
var fileName = '4292463';
var commentscount = 1;
var islock = false
</script>
<script type="text/javascript" src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/comment.js"></script>
<div id="ad_bot"><iframe src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/ad_002.htm" style="border-width: 0px; overflow: hidden; width: 732px; height: 170px;" id="ad_frm_1" frameborder="0" scrolling="no"></iframe></div>
<script type="text/javascript">
new Ad(5, 'ad_bot');
</script>
<div id="report_dialog"></div>
<div id="d-top">
<a href="#" onclick="javascript:document.body.scrollTop=0;document.documentElement.scrollTop=0;this.blur();return false;" title="回到顶部">
<img src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/top.png" alt="TOP"></a>
</div>
<div class="clear"></div>
</div>
</div>
<div id="side">
<div class="side">
<div id="panel_Profile" class="panel">
<ul class="panel_head"><span>个人资料</span></ul>
<ul class="panel_body profile">
<div id="blog_userface">
<a href="http://my.csdn.net/shenbin1430" target="_blank">
<img src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/1_shenbin1430.jpg" title="访问我的空间" style="max-width:90%">
</a>
<br>
<span><a href="http://my.csdn.net/shenbin1430" class="user_name" target="_blank">shenbin1430</a></span>
</div>
<div class="interact">
<!--<a href="#" class="attented" title="已关注"></a>-->
<a href="#" class="attent" id="span_add_follow" title="[加关注]"></a>
<a href="http://my.csdn.net/my/letter/send/shenbin1430" class="letter" title="[发私信]"></a>
</div>
<div id="blog_medal">
<div id="bms_box"></div></div>
<ul id="blog_rank">
<li>访问:<span>123138次</span></li>
<li>积分:<span>1948分</span></li>
<li>排名:<span>第3405名</span></li>
</ul>
<ul id="blog_statistics">
<li>原创:<span>41篇</span></li>
<li>转载:<span>122篇</span></li>
<li>译文:<span>1篇</span></li>
<li>评论:<span>86条</span></li>
</ul>
</ul>
</div>
<script type="text/javascript">
var _blogger = 'shenbin1430';
</script>
<script type="text/javascript">
$(document).ready(function () {
var un = getUN().toLowerCase();
if (un == _blogger.toLowerCase()) {
$('.interact').hide();
} else if(un) {
var url = "http://my.csdn.net/index.php/follow/check_is_followed/" + encodeURIComponent(un) + "/" + encodeURIComponent(_blogger) + "?jsonpcallback=?";
$.getJSON(url, {}, function (data) {
if (data.succ == 1 && data.info == 1) {
$('#span_add_follow').attr('class', 'attented');
} else {
$('#span_add_follow').click(guanzhu);
}
}, 'json');
}
});
function guanzhu() {
var url = "http://my.csdn.net/index.php/follow/do_follow?jsonpcallback=?";
$.getJSON(url, { "username": _blogger }, function (data) {
if (data.succ == 1) {
alert('关注成功!');
$('#span_add_follow').attr('class', 'attented').click(function () { return false; });
} else {
alert(data.msg);
}
});
return false;
}
function getUN() {
var m = document.cookie.match(new RegExp("(^| )UserName=([^;]*)(;|$)"));
if (m) return m[2];
else return '';
}
</script>
<div class="panel" id="panel_Search">
<ul class="panel_head"><span>文章搜索</span></ul>
<ul class="panel_body">
<form id="frmSearch" action="http://so.csdn.net/search" class="form_search" target="_blank">
<span><input id="inputSearch" class="blogsearch" title="请输入关键字" type="text"></span>
<input id="btnSubmit" value="搜索" title="search in blog" type="submit">
<input name="q" id="inputQ" type="hidden">
<input name="t" value="blog" type="hidden">
<a id="btnSearchBlog" target="_blank"></a>
</form>
</ul>
</div><div id="panel_Category" class="panel">
<ul class="panel_head"><span>文章分类</span></ul>
<ul class="panel_body">
<li>
<a href="http://blog.csdn.net/shenbin1430/article/category/558450">Android系统</a><span>(33)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/category/560487">J2EE开发</a><span>(8)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/category/542115">Linux系统</a><span>(21)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/category/559742">Moblin平台</a><span>(4)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/category/602878">Windows</a><span>(4)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/category/558479">多媒体技术</a><span>(43)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/category/573088">嵌入式与驱动开发</a><span>(21)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/category/797242">服务器与云计算</a><span>(12)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/category/558503">程序设计</a><span>(12)</span>
</li>
</ul>
</div><div id="panel_Archive" class="panel">
<ul class="panel_head"><span>文章存档</span></ul>
<ul class="panel_body">
<div id="archive_list"><li><a href="http://blog.csdn.net/shenbin1430/article/month/2011/11">2011年11月</a><span>(2)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2011/09">2011年09月</a><span>(5)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2011/08">2011年08月</a><span>(1)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2011/07">2011年07月</a><span>(2)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2011/06">2011年06月</a><span>(1)</span></li><span class="hidelist" style="display:none;"><li><a href="http://blog.csdn.net/shenbin1430/article/month/2011/05">2011年05月</a><span>(1)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2011/04">2011年04月</a><span>(1)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2011/03">2011年03月</a><span>(7)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2010/12">2010年12月</a><span>(1)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2010/10">2010年10月</a><span>(3)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2010/09">2010年09月</a><span>(1)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2010/07">2010年07月</a><span>(4)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2010/06">2010年06月</a><span>(2)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2010/05">2010年05月</a><span>(2)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2010/04">2010年04月</a><span>(1)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2010/03">2010年03月</a><span>(1)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2010/02">2010年02月</a><span>(1)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2010/01">2010年01月</a><span>(3)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2009/12">2009年12月</a><span>(3)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2009/11">2009年11月</a><span>(2)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2009/10">2009年10月</a><span>(5)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2009/09">2009年09月</a><span>(21)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2009/08">2009年08月</a><span>(12)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2009/07">2009年07月</a><span>(33)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2009/06">2009年06月</a><span>(48)</span></li><li><a href="http://blog.csdn.net/shenbin1430/article/month/2009/05">2009年05月</a><span>(1)</span></li></span><div id="archive_list_button" class="list_closed">展开</div></div>
</ul>
</div>
<div id="hotarticls" class="panel">
<ul class="panel_head"><span>阅读排行</span></ul>
<ul class="panel_body itemlist">
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4355921" title="OpenMAX简介">OpenMAX简介</a><span>(8553)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4291963" title="Gstreamer的一些基本概念与A/V同步分析">Gstreamer的一些基本概念与A/V同步分析</a><span>(4302)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4343584" title="Android多媒体之OpenCore的A/V同步机制">Android多媒体之OpenCore的A/V同步机制</a><span>(3949)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4344897" title="Android图形架构实现分析总结">Android图形架构实现分析总结</a><span>(3858)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/5444726" title="Camera原理">Camera原理</a><span>(3348)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4324456" title="Android的MediaPlayer架构介绍">Android的MediaPlayer架构介绍</a><span>(2504)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4318996" title="Android多媒体框架初步分析">Android多媒体框架初步分析</a><span>(2227)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4391566" title="NAND FLASH 内存详解与读写寻址方式">NAND FLASH 内存详解与读写寻址方式</a><span>(2124)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4291780" title="Android 技术专题系列之十 Audio manager">Android 技术专题系列之十 Audio manager</a><span>(2044)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4319051" title="Android的多媒体框架OpenCorePacketVideo介绍">Android的多媒体框架OpenCorePacketVideo介绍</a><span>(1976)</span>
</li>
</ul>
</div>
<div id="hotarticls2" class="panel">
<ul class="panel_head"><span>评论排行</span></ul>
<ul class="panel_body itemlist">
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4343584" title="Android多媒体之OpenCore的A/V同步机制">Android多媒体之OpenCore的A/V同步机制</a><span>(20)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4324520" title="Android的MediaRecorder架构介绍">Android的MediaRecorder架构介绍</a><span>(8)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/5705033" title="用gstreamer抓取视频的缩略图">用gstreamer抓取视频的缩略图</a><span>(5)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4291780" title="Android 技术专题系列之十 Audio manager">Android 技术专题系列之十 Audio manager</a><span>(4)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/5563194" title="Linux TCP Socket程序分析">Linux TCP Socket程序分析</a><span>(3)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4355921" title="OpenMAX简介">OpenMAX简介</a><span>(3)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4708244" title=" Linux下ALSA声卡编程"> Linux下ALSA声卡编程</a><span>(3)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4305968" title="Spring+Hibernate+WebWork配置">Spring+Hibernate+WebWork配置</a><span>(3)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4291963" title="Gstreamer的一些基本概念与A/V同步分析">Gstreamer的一些基本概念与A/V同步分析</a><span>(3)</span>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4324967" title="Android的Camera架构介绍">Android的Camera架构介绍</a><span>(3)</span>
</li>
</ul>
</div>
<div id="homepageArticles" class="panel">
<ul class="panel_head"><span>推荐文章</span></ul>
<ul class="panel_body" id="ad_commend">
<iframe src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/ad_003.htm" style="border-width: 0px; overflow: hidden; width: 182px; height: 218px;" id="ad_frm_2" frameborder="0" scrolling="no"></iframe></ul>
</div>
<script type="text/javascript">
new Ad(12, 'ad_commend');
</script><div id="newcomments" class="panel">
<ul class="panel_head"><span>最新评论</span></ul>
<ul class="panel_body itemlist">
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4291941#comments">FFPLAY的原理</a>
<p style="margin:0px;"><a href="http://blog.csdn.net/shenbin1430" class="user_name">shenbin1430</a>:
@p741953:ffplay其实是ffmpeg的一个例子程序ffmpeg封装了音视频处理的库用...
</p>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4291941#comments">FFPLAY的原理</a>
<p style="margin:0px;"><a href="http://blog.csdn.net/p741953" class="user_name">p741953</a>:
看了这个我怎么分不清ffmpeg和ffplay的区别啊都是调用libavcodec和libavf...
</p>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/5563194#comments">Linux TCP Socket程序分析</a>
<p style="margin:0px;"><a href="http://blog.csdn.net/zhyk7003427" class="user_name">zhyk7003427</a>:
地址转换很讨厌
</p>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4355921#comments">OpenMAX简介</a>
<p style="margin:0px;"><a href="http://blog.csdn.net/zhejiang9" class="user_name">漫步小者</a>:
@xiaoye065:个人觉得应该就是将ffmpeg封装成OpenMAX IL的compnent没...
</p>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4324520#comments">Android的MediaRecorder架构介绍</a>
<p style="margin:0px;"><a href="http://blog.csdn.net/shenbin1430" class="user_name">shenbin1430</a>:
@bufanbinbufanbin:可以啊,这不就是录像的功能嘛
</p>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/5705033#comments">用gstreamer抓取视频的缩略图</a>
<p style="margin:0px;"><a href="http://blog.csdn.net/shenbin1430" class="user_name">shenbin1430</a>:
@bufanbinbufanbin:那样也可以的只有知道从哪里到哪里直接Seek就行。
</p>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/5705033#comments">用gstreamer抓取视频的缩略图</a>
<p style="margin:0px;"><a href="http://blog.csdn.net/bufanbinbufanbin" class="user_name">bufanbinbufanbin</a>:
麻烦楼主,如水果不是把每一帧都提提取出来,能不能这样,每隔很小一段时间截取一段视频,保存为可播放的视...
</p>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4324520#comments">Android的MediaRecorder架构介绍</a>
<p style="margin:0px;"><a href="http://blog.csdn.net/bufanbinbufanbin" class="user_name">bufanbinbufanbin</a>:
我想问楼主一个问题,我能不能把摄像头捕捉的视频,保存为一段一段的可播放的文件啊?(一遍一遍录制一边保...
</p>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4324520#comments">Android的MediaRecorder架构介绍</a>
<p style="margin:0px;"><a href="http://blog.csdn.net/bufanbinbufanbin" class="user_name">bufanbinbufanbin</a>:
顶楼主!很详细!学习了。
</p>
</li>
<li>
<a href="http://blog.csdn.net/shenbin1430/article/details/4305968#comments">Spring+Hibernate+WebWork配置</a>
<p style="margin:0px;"><a href="http://blog.csdn.net/shenbin1430" class="user_name">shenbin1430</a>:
@jiebing:配置JDBC和Mysql那段就是阿有这些就够了。
</p>
</li>
</ul>
</div>
</div>
<div class="clear"></div>
</div>
<div class="clear"></div>
</div>
<script type="text/javascript" src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/shCore-src.js"></script>
<script type="text/javascript" src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/ZeroClipboard.js"></script>
<script type="text/javascript" src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/article_code.js"></script>
<script type="text/javascript" src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/cnick.js"></script>
<script type="text/javascript" src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/show.js"></script>
<script type="text/javascript" src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/showblogmedal.js"></script>
<script type="text/javascript" src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/publib_footer.js"></script><link rel="stylesheet" type="text/css" href="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/pub_footer_2012.css"><div class="pub_footerall"><dl><dt></dt> <dd><a href="http://www.csdn.net/company/about.html" target="_blank">公司简介</a>|<a href="http://www.csdn.net/company/recruit.html" target="_blank">招贤纳士</a>|<a href="http://www.csdn.net/company/marketing.html" target="_blank">广告服务</a>|<a href="http://www.csdn.net/company/account.html" target="_blank">银行汇款帐号</a>|<a href="http://www.csdn.net/company/contact.html" target="_blank">联系方式</a>|<a href="http://www.csdn.net/company/statement.html" target="_blank">版权声明</a>|<a href="http://www.csdn.net/company/layer.html" target="_blank">法律顾问</a>|<a href="mailto:webmaster@csdn.net">问题报告</a></dd><dd>&nbsp;ICP&nbsp;&nbsp;070598&nbsp;</dd><dd>北京创新乐知信息技术有限公司 版权所有</dd><dd>世纪乐知(北京)网络技术有限公司 提供技术支持</dd><dd>江苏乐知网络技术有限公司 提供商务支持</dd><dd><img src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/ico_email.gif" alt="" title=""> 联系邮箱webmaster(at)csdn.net</dd><dd>Copyright © 1999-2012, CSDN.NET, All Rights Reserved&nbsp;<a href="http://www.hd315.gov.cn/beian/view.asp?bianhao=010202001032100010" target="_blank"><img src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/gongshang_logos.gif" alt="GongshangLogo" title=""></a></dd></dl></div>
<script type="text/javascript">document.write("<img src=http://counter.csdn.net/pv.aspx?id=24 border=0 width=0 height=0>");</script><img src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/pv.txt" border="0" height="0" width="0">
<script type="text/javascript" src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/counter.js"></script><script type="text/javascript" charset="UTF-8" src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/msg.js"></script>
<!--ad.csdn.net-->
<script type="text/javascript" src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/ad-blog.js"></script><script type="text/javascript" src="C%E8%AF%AD%E8%A8%80%E7%BB%93%E6%9E%84%E4%BD%93%E5%AF%B9%E9%BD%90_files/ad-ibm432.js"></script>
</div>
</body></html>

View File

@@ -0,0 +1,312 @@
// Simple Set Clipboard System
// Author: Joseph Huckaby
var ZeroClipboard = {
version: "1.0.7",
clients: {}, // registered upload clients on page, indexed by id
moviePath: 'http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf', //http://skin.ganjinpai.com/script/plugins/ URL to movie
nextId: 1, // ID of next movie
$: function(thingy) {
// simple DOM lookup utility function
if (typeof(thingy) == 'string') thingy = document.getElementById(thingy);
if (true || !thingy.addClass) {
// extend element with a few useful methods
thingy.hide = function() { this.style.display = 'none'; };
thingy.show = function() { this.style.display = ''; };
thingy.addClass = function(name) { this.removeClass(name); this.className += ' ' + name; };
thingy.removeClass = function(name) {
var classes = this.className.split(/\s+/);
var idx = -1;
for (var k = 0; k < classes.length; k++) {
if (classes[k] == name) { idx = k; k = classes.length; }
}
if (idx > -1) {
classes.splice( idx, 1 );
this.className = classes.join(' ');
}
return this;
};
thingy.hasClass = function(name) {
return !!this.className.match( new RegExp("\\s*" + name + "\\s*") );
};
}
return thingy;
},
setMoviePath: function(path) {
// set path to ZeroClipboard.swf
this.moviePath = path;
},
dispatch: function(id, eventName, args) {
// receive event from flash movie, send to client
var client = this.clients[id];
if (client) {
client.receiveEvent(eventName, args);
}
},
register: function(id, client) {
// register new client to receive events
this.clients[id] = client;
},
getDOMObjectPosition: function(obj, stopObj) {
// get absolute coordinates for dom element
var info = {
left: 0,
top: 0,
width: obj.width ? obj.width : obj.offsetWidth,
height: obj.height ? obj.height : obj.offsetHeight
};
while (obj && (obj != stopObj)) {
info.left += obj.offsetLeft;
info.top += obj.offsetTop;
obj = obj.offsetParent;
}
return info;
},
Client: function(elem) {
// constructor for new simple upload client
this.handlers = {};
// unique ID
this.id = ZeroClipboard.nextId++;
this.movieId = 'ZeroClipboardMovie_' + this.id;
// register client with singleton to receive flash events
ZeroClipboard.register(this.id, this);
// create movie
if (elem) this.glue(elem);
}
};
ZeroClipboard.Client.prototype = {
id: 0, // unique ID for us
ready: false, // whether movie is ready to receive events or not
movie: null, // reference to movie object
clipText: '', // text to copy to clipboard
handCursorEnabled: true, // whether to show hand cursor, or default pointer cursor
cssEffects: true, // enable CSS mouse effects on dom container
handlers: null, // user event handlers
glue: function (elem, appendElem, stylesToAdd) {
// glue to DOM element
// elem can be ID or actual DOM element object
this.domElement = ZeroClipboard.$(elem);
// float just above object, or zIndex 99 if dom element isn't set
var zIndex = 99;
if (this.domElement.style.zIndex) {
zIndex = parseInt(this.domElement.style.zIndex, 10) + 1;
}
if (typeof (appendElem) == 'string') {
appendElem = ZeroClipboard.$(appendElem);
}
else if (typeof (appendElem) == 'undefined') {
appendElem = document.getElementsByTagName('body')[0];
}
// find X/Y position of domElement
var box = ZeroClipboard.getDOMObjectPosition(this.domElement, appendElem);
// create floating DIV above element
this.div = document.createElement('div');
var style = this.div.style;
//this.div.id = 'flv_box';
style.position = 'absolute';
style.left = '' + box.left + 'px';
style.top = '' + box.top + 'px';
style.width = '' + box.width + 'px';
style.height = '' + box.height + 'px';
style.zIndex = zIndex;
if (typeof (stylesToAdd) == 'object') {
for (addedStyle in stylesToAdd) {
style[addedStyle] = stylesToAdd[addedStyle];
}
}
//style.backgroundColor = '#f00'; // debug
appendElem.appendChild(this.div);
this.div.innerHTML = this.getHTML(box.width, box.height);
},
getHTML: function (width, height) {
// return HTML for movie
var html = '';
var flashvars = 'id=' + this.id +
'&width=' + width +
'&height=' + height;
if (navigator.userAgent.match(/MSIE/)) {
// IE gets an OBJECT tag
var protocol = location.href.match(/^https/i) ? 'https://' : 'http://';
html += '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="' + protocol + 'download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="' + width + '" height="' + height + '" id="' + this.movieId + '" align="middle"><param name="allowScriptAccess" value="always" /><param name="allowFullScreen" value="false" /><param name="movie" value="' + ZeroClipboard.moviePath + '" /><param name="loop" value="false" /><param name="menu" value="false" /><param name="quality" value="best" /><param name="bgcolor" value="#ffffff" /><param name="flashvars" value="' + flashvars + '"/><param name="wmode" value="transparent"/></object>';
}
else {
// all other browsers get an EMBED tag
html += '<embed id="' + this.movieId + '" src="' + ZeroClipboard.moviePath + '" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="' + width + '" height="' + height + '" name="' + this.movieId + '" align="middle" allowScriptAccess="always" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="' + flashvars + '" wmode="transparent" />';
}
return html;
},
hide: function () {
// temporarily hide floater offscreen
if (this.div) {
this.div.style.left = '-2000px';
}
},
show: function () {
// show ourselves after a call to hide()
this.reposition();
},
destroy: function () {
// destroy control and floater
if (this.domElement && this.div) {
this.hide();
this.div.innerHTML = '';
var body = document.getElementsByTagName('body')[0];
try { body.removeChild(this.div); } catch (e) { ; }
this.domElement = null;
this.div = null;
}
},
reposition: function (elem) {
// reposition our floating div, optionally to new container
// warning: container CANNOT change size, only position
if (elem) {
this.domElement = ZeroClipboard.$(elem);
if (!this.domElement) this.hide();
}
if (this.domElement && this.div) {
var box = ZeroClipboard.getDOMObjectPosition(this.domElement);
var style = this.div.style;
style.left = '' + box.left + 'px';
style.top = '' + box.top + 'px';
}
},
setText: function (newText) {
// set text to be copied to clipboard
this.clipText = newText;
if (this.ready) this.movie.setText(newText);
},
addEventListener: function (eventName, func) {
// add user event listener for event
// event types: load, queueStart, fileStart, fileComplete, queueComplete, progress, error, cancel
eventName = eventName.toString().toLowerCase().replace(/^on/, '');
if (!this.handlers[eventName]) this.handlers[eventName] = [];
this.handlers[eventName].push(func);
},
setHandCursor: function (enabled) {
// enable hand cursor (true), or default arrow cursor (false)
this.handCursorEnabled = enabled;
if (this.ready) this.movie.setHandCursor(enabled);
},
setCSSEffects: function (enabled) {
// enable or disable CSS effects on DOM container
this.cssEffects = !!enabled;
},
receiveEvent: function (eventName, args) {
// receive event from flash
eventName = eventName.toString().toLowerCase().replace(/^on/, '');
// special behavior for certain events
switch (eventName) {
case 'load':
// movie claims it is ready, but in IE this isn't always the case...
// bug fix: Cannot extend EMBED DOM elements in Firefox, must use traditional function
this.movie = document.getElementById(this.movieId);
if (!this.movie) {
var self = this;
setTimeout(function () { self.receiveEvent('load', null); }, 1);
return;
}
// firefox on pc needs a "kick" in order to set these in certain cases
if (!this.ready && navigator.userAgent.match(/Firefox/) && navigator.userAgent.match(/Windows/)) {
var self = this;
setTimeout(function () { self.receiveEvent('load', null); }, 100);
this.ready = true;
return;
}
this.ready = true;
this.movie.setText(this.clipText);
this.movie.setHandCursor(this.handCursorEnabled);
break;
case 'mouseover':
if (this.domElement && this.cssEffects) {
this.domElement.addClass('hover');
if (this.recoverActive) this.domElement.addClass('active');
}
break;
case 'mouseout':
if (this.domElement && this.cssEffects) {
this.recoverActive = false;
if (this.domElement.hasClass('active')) {
this.domElement.removeClass('active');
this.recoverActive = true;
}
this.domElement.removeClass('hover');
}
break;
case 'mousedown':
if (this.domElement && this.cssEffects) {
this.domElement.addClass('active');
}
break;
case 'mouseup':
if (this.domElement && this.cssEffects) {
this.domElement.removeClass('active');
this.recoverActive = false;
}
break;
} // switch eventName
if (this.handlers[eventName]) {
for (var idx = 0, len = this.handlers[eventName].length; idx < len; idx++) {
var func = this.handlers[eventName][idx];
if (typeof (func) == 'function') {
// actual function reference
func(this, args);
}
else if ((typeof (func) == 'object') && (func.length == 2)) {
// PHP style object + method, i.e. [myObject, 'myMethod']
func[0][func[1]](this, args);
}
else if (typeof (func) == 'string') {
// name of function
window[func](this, args);
}
} // foreach event handler defined
} // user defined handler for event
}
};

View File

@@ -0,0 +1,2 @@
<html><head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"></head><body></body></html>

View File

@@ -0,0 +1,7 @@
var ad_type = 'ibm432';
var ad_sc = '<script type="text/javascript" '
+ 'src="http://ad.csdn.net/scripts/ad-' + ad_type + '.js"'
+ '></'
+ 'script>';
document.writeln(ad_sc);

View File

@@ -0,0 +1,53 @@
//blog 12.14
var cloudad_type = 'ibm432';
var cloudad_urls = [
'http://ad.csdn.net/adsrc/ibm-caq4-eis-bloghomepage-960-90-1102.swf'
];
var cloudad_clks = [
'http://e.cn.miaozhen.com/r.gif?k=1003524&p=3y2u40&rt=2&o=http://ad-apac.doubleclick.net/click;h=v2|3FEA|0|0|%2a|d;264138153;0-0;0;89741279;31-1|1;50977344|50947757|1;;%3fhttp://www.ibm.com/systems/cn/ads/2012q4_flexsystem.shtml?csr=apch_cfg4_20121019_1350631108813&ck=csdn&cmp=245ff&ct=245ff07w&cr=csdn&cm=b&csot=-&ccy=cn&cpb=-&cd=2012-10-17&cot=a&cpg=off&cn=intel_rebate_flex_system_(eis)&csz=960*90'
];
var can_swf = (function () {
if (document.all) swf = new ActiveXObject('ShockwaveFlash.ShockwaveFlash');
else if (navigator.plugins) swf = navigator.plugins["Shockwave Flash"];
return !!swf;
})();
function cloudad_show() {
var rd = Math.random();
var ad_url, log_url;
if (rd < 0.5 && can_swf) {
ad_url = cloudad_urls[0];
log_url = 'http://ad.csdn.net/log.ashx';
log_url += '?t=view&adtype=' + cloudad_type + '&adurl=' + encodeURIComponent(ad_url);
cloudad_doRequest(log_url, true);
}
if (rd < 0.002) {
ad_url = cloudad_clks[0];
log_url = 'http://ad.csdn.net/log.ashx';
log_url += '?t=click&adtype=' + cloudad_type + '&adurl=' + encodeURIComponent(ad_url);
cloudad_doRequest(log_url, true);
}
}
function cloudad_doRequest(url, useFrm) {
var e = document.createElement(useFrm ? "iframe" : "img");
e.style.width = "1px";
e.style.height = "1px";
e.style.position = "absolute";
e.style.visibility = "hidden";
if (url.indexOf('?') > 0) url += '&r_m=';
else url += '?r_m=';
url += new Date().getMilliseconds();
e.src = url;
document.body.appendChild(e);
}
setTimeout(function () {
cloudad_show();
}, 1000);

View File

@@ -0,0 +1,38 @@
<!DOCTYPE html>
<html><head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>CSDN Ad</title>
<style type="text/css">
body { margin:0px; padding:0px;}
</style>
</head>
<body>
<div id="div1"><!-- 广告位:博客内文页下方 760 90 -->
<script src="ad_data/log.js" async="" charset="utf-8"></script><script type="text/javascript">BAIDU_CLB_SLOT_ID = "117306";</script>
<script type="text/javascript" src="ad_data/o.js"></script><script charset="utf-8" src="ad_data/ecom"></script><script type="text/javascript"><!--
google_ad_client = "ca-pub-1076724771190722";
/* blog正文下方728x90 */
google_ad_slot = "4497271841";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript" src="ad_data/show_ads.js">
</script><ins style="display:inline-table;border:none;height:90px;margin:0;padding:0;position:relative;visibility:visible;width:728px"><ins id="aswift_0_anchor" style="display:block;border:none;height:90px;margin:0;padding:0;position:relative;visibility:visible;width:728px"><iframe allowtransparency="true" hspace="0" marginwidth="0" marginheight="0" onload="var i=this.id,s=window.google_iframe_oncopy,H=s&amp;&amp;s.handlers,h=H&amp;&amp;H[i],w=this.contentWindow,d;try{d=w.document}catch(e){}if(h&amp;&amp;d&amp;&amp;(!d.body||!d.body.firstChild)){if(h.call){setTimeout(h,0)}else if(h.match){w.location.replace(h)}}" vspace="0" id="aswift_0" name="aswift_0" style="left:0;position:absolute;top:0;" frameborder="0" height="90" scrolling="no" width="728"></iframe></ins></ins>
</div>
<script type="text/javascript">
window.onload = function () {
//这种给广告区域赋值的方式对于有些JS广告不能完美的显示
//top.document.getElementById('ad_cen').innerHTML = document.getElementById('div1').innerHTML;
var h = document.body.offsetHeight + 2;
setTimeout(function () {
if (h > 800) h = document.getElementById('div1').offsetHeight + 4;
top.document.getElementById('ad_frm_0').style.height = h + 'px';
}, 100);
};
</script>
</body></html>

View File

@@ -0,0 +1,55 @@
var home_domain = "blog.csdn.net";
var ad_cnt = ad_cnt || 0;
/*CSDN广告延迟加载 t:广告类型数字id:容器id*/
var Ad = function (t, id) {
this.adType = t;
this.containerId = id;
this.adIndex = ad_cnt++;
this.loadAd = function () {
//document.domain = "csdn.net";
var container = document.getElementById(this.containerId);
var width = container.offsetWidth - 2 - container.style.paddingLeft - container.style.paddingRight;
//var height = container.offsetHeight - 2 - container.style.paddingTop - container.style.paddingBottom;
var frm = document.createElement('iframe');
frm.id = "ad_frm_" + this.adIndex;
frm.frameBorder = "0";
frm.scrolling = "no";
frm.style.borderWidth = "0px";
frm.style.overflow = "hidden";
if (width > 0) frm.style.width = width + "px";
else frm.style.width = "98%";
frm.style.height = "0px";
frm.src = "http://" + home_domain + "/common/ad.html"
+ "?t=" + this.adType
+ "&containerId=" + this.containerId
+ "&frmId=" + frm.id;
container.appendChild(frm);
};
if (jQuery) {
jQuery((function (_ad) {
return function () { _ad.loadAd(); }
})(this));
} else {
this.loadAd();
}
};
/*pongo广告延迟加载 id:广告idcontinerId:容器id*/
var PongoAd = function (id, continerId) {
var func = 'window.showad' + id + '=function(html){document.getElementById("' + continerId + '").innerHTML=html;}';
eval(func);
function loadad(id) {
var url = encodeURIComponent(top.location.href);
var cbfun = "showad" + id;
var src = 'http://a.pongo.cn/Job/GetAdForCallBack?id=' + id + '&UrlAdParam=' + encodeURIComponent(url) + '&CallBack=' + cbfun;
var sc = document.createElement('script');
sc.type = 'text/javascript';
sc.async = true;
sc.src = src;
document.body.appendChild(sc);
}
setTimeout(function () { loadad(id); }, 1000);
};

View File

@@ -0,0 +1,63 @@
<!DOCTYPE html>
<html><head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>CSDN Ad</title>
<style type="text/css">
body { margin:0px; padding:0px;}
</style>
</head>
<body>
<div id="div1"><style type="text/css">
ul { margin:0px; padding:0 4px 0 0; }
ul, x:-moz-any-link, x:default { width:90%; }
ul li { padding:3px 0px;}
a { font-size:12px; text-decoration:none; color:#006699; }
a:hover { color:#000; }
</style>
<ul>
<li><a href="http://blog.csdn.net/blogdevteam/article/details/8277639" target="_blank">* 开源 Java 博客 B3log Solo 开发团队专访</a></li>
<li><a href="http://blog.csdn.net/clever101/article/details/8286066" target="_blank">* Windows平台下Makefile学习笔记 </a></li>
<li><a href="http://blog.csdn.net/nkmnkm/article/details/8285484" target="_blank">* Qt 动画详解一 </a></li>
<li><a href="http://blog.csdn.net/mapdigit/article/details/8284959" target="_blank">* Android ApiDemos示例解析(205) </a></li>
<li><a href="http://blog.csdn.net/yiyaaixuexi/article/details/8288077" target="_blank">* IOS安全攻防Hack必备的命令与工具 </a></li>
<li><a href="http://blog.csdn.net/kongxx/article/details/8284952" target="_blank">* 使用awk按表格格式化显示 </a></li>
</ul></div>
<script type="text/javascript">
window.onload = function () {
//这种给广告区域赋值的方式对于有些JS广告不能完美的显示
//top.document.getElementById('ad_commend').innerHTML = document.getElementById('div1').innerHTML;
var h = document.body.offsetHeight + 2;
setTimeout(function () {
if (h > 800) h = document.getElementById('div1').offsetHeight + 4;
top.document.getElementById('ad_frm_2').style.height = h + 'px';
}, 100);
};
</script>
</body></html>

View File

@@ -0,0 +1 @@
BAIDU_CLB_SETJSONADSLOT ({ "117306" : { "_stype" : 0, "_w" : 728, "_h" : 90, "_type" : "json_html", "_html" : {"content":"\x3cscript type=\"text\/javascript\"\x3e\x3c!--\x0agoogle_ad_client = \"ca-pub-1076724771190722\";\x0a\/* blog正文下方728x90 *\/\x0agoogle_ad_slot = \"4497271841\";\x0agoogle_ad_width = 728;\x0agoogle_ad_height = 90;\x0a\/\/--\x3e\x0a\x3c\/script\x3e\x0a\x3cscript type=\"text\/javascript\"\x0asrc=\"http:\/\/pagead2.googlesyndication.com\/pagead\/show_ads.js\"\x3e\x0a\x3c\/script\x3e","type":"rich","version":1}, "_fxp" : true, "_sf" : false, "_st" : 0, "_top" : 0, "_left" : 0, "_hs" : 0, "_vs" : 0, "_bf" : false, "_isMlt" : 1, "_fr" : false, "_qid" : "c296c91c416e0a86", "_v" : 1, "_qn" : "" } });

View File

@@ -0,0 +1,2 @@
(function(){function e(a,c){var b=c||{};b.type=a;b.url=f.URL;b.host=d.location.hostname;d.BAIDU_CLB_sendLog(b)}var d=window,f=document,g="CSS1Compat"!==f.compatMode,h=d.BAIDU_CLB_SLOTS_MAP||{};try{g&&e("quirks"),function(){var a=f.domain;0===a.indexOf("www.")&&(a=a.substring(4));"."===a.charAt(a.length-1)&&(a=a.substring(0,a.length-1));RegExp("([a-z0-9][a-z0-9\\-]*?\\.(?:com|cn|net|org|gov|info|la|cc|co|jp|us|hk|tv|me|biz|in|be|io|tk|cm|li|ru|ws|hn|fm)(?:\\.(?:cn|jp|tw|ru))?)$","i").test(a)||e("domainNotMatch")}(),
function(){setTimeout(function(){for(var a in h){var c=a,b=h[a];if("object"!==typeof b)e("loadFail",{id:c});else if(!0!==b._done)e("renderFail",{id:c,qid:b._qid,error:b._done||"NotFilled",empty:!!b._html});else{var d=f.getElementById("baidu_clb_slot_iframe_"+c);if(d)try{var i=d.contentWindow.document.body;(!i||!i.firstChild)&&e("renderEmpty",{id:c,qid:b._qid,stype:b._stype})}catch(g){}}}},0)}()}catch(j){}})();

View File

@@ -0,0 +1,18 @@
(function(){var g=!0,h=null,j=!1,aa=function(a,b,c){return a.call.apply(a.bind,arguments)},ba=function(a,b,c){if(!a)throw Error();if(2<arguments.length){var e=Array.prototype.slice.call(arguments,2);return function(){var c=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(c,e);return a.apply(b,c)}}return function(){return a.apply(b,arguments)}},l=function(a,b,c){l=Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?aa:ba;return l.apply(h,arguments)};var m=(new Date).getTime();var ca=function(a){a=parseFloat(a);return isNaN(a)||1<a||0>a?0:a},da=/^([\w-]+\.)*([\w-]{2,})(\:[0-9]+)?$/,ea=function(a,b){if(!a)return b;var c=a.match(da);return c?c[0]:b};var fa=ca("0.0"),ga=ca("0.001"),ha=ca("0.0");var ia=/^true$/.test("false")?g:j;var ja=function(){return ea("","pagead2.googlesyndication.com")};var ka=/&/g,la=/</g,ma=/>/g,oa=/\"/g,pa={"\x00":"\\0","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\x0B":"\\x0B",'"':'\\"',"\\":"\\\\"},n={"'":"\\'"};var t=window,x,qa=h,y=document.getElementsByTagName("script");y&&y.length&&(qa=y[y.length-1].parentNode);x=qa;ja();var z=function(a){return!!a&&"function"==typeof a&&!!a.call},ra=function(a,b){if(!(2>arguments.length))for(var c=1,e=arguments.length;c<e;++c)a.push(arguments[c])},sa=function(a,b){if(!(1E-4>Math.random())){var c=Math.random();if(c<b)return a[Math.floor(c/b*a.length)]}return h},ta=function(a){try{return!!a.location.href||""===a.location.href}catch(b){return j}};var ua=h,va=function(){if(!ua){for(var a=window,b=a,c=0;a!=a.parent;)if(a=a.parent,c++,ta(a))b=a;else break;ua=b}return ua};var A,B=function(a){this.c=[];this.b=a||window;this.a=0;this.d=h},wa=function(a,b){this.l=a;this.i=b};B.prototype.o=function(a,b){0==this.a&&0==this.c.length&&(!b||b==window)?(this.a=2,this.f(new wa(a,window))):this.g(a,b)};B.prototype.g=function(a,b){this.c.push(new wa(a,b||this.b));xa(this)};B.prototype.p=function(a){this.a=1;a&&(this.d=this.b.setTimeout(l(this.e,this),a))};B.prototype.e=function(){1==this.a&&(this.d!=h&&(this.b.clearTimeout(this.d),this.d=h),this.a=0);xa(this)};B.prototype.q=function(){return g};
B.prototype.nq=B.prototype.o;B.prototype.nqa=B.prototype.g;B.prototype.al=B.prototype.p;B.prototype.rl=B.prototype.e;B.prototype.sz=B.prototype.q;var xa=function(a){a.b.setTimeout(l(a.m,a),0)};B.prototype.m=function(){if(0==this.a&&this.c.length){var a=this.c.shift();this.a=2;a.i.setTimeout(l(this.f,this,a),0);xa(this)}};B.prototype.f=function(a){this.a=0;a.l()};
var ya=function(a){try{return a.sz()}catch(b){return j}},za=function(a){return!!a&&("object"==typeof a||"function"==typeof a)&&ya(a)&&z(a.nq)&&z(a.nqa)&&z(a.al)&&z(a.rl)},Aa=function(){if(A&&ya(A))return A;var a=va(),b=a.google_jobrunner;return za(b)?A=b:a.google_jobrunner=A=new B(a)},Ba=function(a,b){Aa().nq(a,b)},Ca=function(a,b){Aa().nqa(a,b)};var Da=/MSIE [2-7]|PlayStation|Gecko\/20090226/i,Ea=/Android|Opera/,Fa=function(){var a=C,b=D.google_ad_width,c=D.google_ad_height,e=["<iframe"],d;for(d in a)a.hasOwnProperty(d)&&ra(e,d+"="+a[d]);e.push('style="left:0;position:absolute;top:0;"');e.push("></iframe>");b="border:none;height:"+c+"px;margin:0;padding:0;position:relative;visibility:visible;width:"+b+"px";return['<ins style="display:inline-table;',b,'"><ins id="',a.id+"_anchor",'" style="display:block;',b,'">',e.join(" "),"</ins></ins>"].join("")};var Ga=function(a,b,c){c||(c=ia?"https":"http");return[c,"://",a,b].join("")};var Ha=function(){},Ja=function(a,b,c){switch(typeof b){case "string":Ia(b,c);break;case "number":c.push(isFinite(b)&&!isNaN(b)?b:"null");break;case "boolean":c.push(b);break;case "undefined":c.push("null");break;case "object":if(b==h){c.push("null");break}if(b instanceof Array){var e=b.length;c.push("[");for(var d="",f=0;f<e;f++)c.push(d),Ja(a,b[f],c),d=",";c.push("]");break}c.push("{");e="";for(d in b)b.hasOwnProperty(d)&&(f=b[d],"function"!=typeof f&&(c.push(e),Ia(d,c),c.push(":"),Ja(a,f,c),e=
","));c.push("}");break;case "function":break;default:throw Error("Unknown type: "+typeof b);}},Ka={'"':'\\"',"\\":"\\\\","/":"\\/","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\x0B":"\\u000b"},La=/\uffff/.test("\uffff")?/[\\\"\x00-\x1f\x7f-\uffff]/g:/[\\\"\x00-\x1f\x7f-\xff]/g,Ia=function(a,b){b.push('"');b.push(a.replace(La,function(a){if(a in Ka)return Ka[a];var b=a.charCodeAt(0),d="\\u";16>b?d+="000":256>b?d+="00":4096>b&&(d+="0");return Ka[a]=d+b.toString(16)}));b.push('"')};var E="google_ad_block google_ad_channel google_ad_client google_ad_format google_ad_height google_ad_host google_ad_host_channel google_ad_host_tier_id google_ad_output google_ad_override google_ad_region google_ad_section google_ad_slot google_ad_type google_ad_width google_adtest google_allow_expandable_ads google_alternate_ad_url google_alternate_color google_analytics_domain_name google_analytics_uacct google_bid google_city google_color_bg google_color_border google_color_line google_color_link google_color_text google_color_url google_container_id google_contents google_country google_cpm google_ctr_threshold google_cust_age google_cust_ch google_cust_gender google_cust_id google_cust_interests google_cust_job google_cust_l google_cust_lh google_cust_u_url google_disable_video_autoplay google_ed google_eids google_enable_ose google_encoding google_font_face google_font_size google_frame_id google_gl google_hints google_image_size google_kw google_kw_type google_lact google_language google_loeid google_max_num_ads google_max_radlink_len google_mtl google_num_radlinks google_num_radlinks_per_unit google_num_slots_to_rotate google_only_ads_with_video google_only_pyv_ads google_only_userchoice_ads google_override_format google_page_url google_previous_watch google_previous_searches google_referrer_url google_region google_reuse_colors google_rl_dest_url google_rl_filtering google_rl_mode google_rt google_safe google_sc_id google_scs google_sui google_skip google_tag_info google_targeting google_tdsma google_tfs google_tl google_ui_features google_ui_version google_video_doc_id google_video_product_type google_with_pyv_ads google_yt_pt google_yt_up".split(" ");var Ma=function(){var a=F,b=/\.((google(|groups|mail|images|print))|gmail)\./.test(a.location.host);return!(!a.postMessage||!a.localStorage||!a.JSON||b)};var Na=function(a){this.b=a;a.google_iframe_oncopy||(a.google_iframe_oncopy={handlers:{}});this.j=a.google_iframe_oncopy},Oa;var G="var i=this.id,s=window.google_iframe_oncopy,H=s&&s.handlers,h=H&&H[i],w=this.contentWindow,d;try{d=w.document}catch(e){}if(h&&d&&(!d.body||!d.body.firstChild)){if(h.call){setTimeout(h,0)}else if(h.match){w.location.replace(h)}}";
/[&<>\"]/.test(G)&&(-1!=G.indexOf("&")&&(G=G.replace(ka,"&amp;")),-1!=G.indexOf("<")&&(G=G.replace(la,"&lt;")),-1!=G.indexOf(">")&&(G=G.replace(ma,"&gt;")),-1!=G.indexOf('"')&&(G=G.replace(oa,"&quot;")));Oa=G;Na.prototype.set=function(a,b){this.j.handlers[a]=b;this.b.addEventListener&&this.b.addEventListener("load",l(this.k,this,a),j)};Na.prototype.k=function(a){a=this.b.document.getElementById(a);var b=a.contentWindow.document;if(a.onload&&b&&(!b.body||!b.body.firstChild))a.onload()};function Pa(){var a=F,b=F.document,c=a.google_ad_width,e=a.google_ad_height,d;a:{try{d=a.top.document==b;break a}catch(f){}d=j}if(d)return j;d=b.documentElement;if(c&&e){var k=1,p=1;a.innerHeight?(k=a.innerWidth,p=a.innerHeight):d&&d.clientHeight?(k=d.clientWidth,p=d.clientHeight):b.body&&(k=b.body.clientWidth,p=b.body.clientHeight);if(p>2*e||k>2*c)return j}return g};var Qa=function(){var a="script";return["<",a,' src="',Ga(ja(),"/pagead/js/r20121206/r20121214/show_ads_impl.js",""),'"></',a,">"].join("")},Ra=function(){var a="script";return["<",a,' src="',Ga(ja(),"/pagead/expansion_embed.js"),'"></',a,">"].join("")},Sa=function(a){var b;if(!(b="expt"!=a.google_expand_experiment))a:{var c=a.document;try{var e;if(!(e=
a.google_allow_expandable_ads===j)){var d;if(!(d=!c.body)){var f;if(!(f=a.google_ad_output&&"html"!=a.google_ad_output)){var k;if(!(k=isNaN(a.google_ad_height))){var p;if(!(p=isNaN(a.google_ad_width))){var v;if(!(v=c.domain!=a.location.hostname)){var u;b:{a=navigator;var q=a.userAgent,H=a.platform;if(/Win|Mac|Linux/.test(H)&&!/^Opera/.test(q)){var V=(/WebKit\/(\d+)/.exec(q)||[0,0])[1],na=(/rv\:(\d+\.\d+)/.exec(q)||[0,0])[1];if(/Win/.test(H)&&/MSIE.*Trident/.test(q)&&7<c.documentMode||!V&&"Gecko"==
a.product&&1.7<na&&!/rv\:1\.8([^.]|\.0)/.test(q)||524<V){u=g;break b}}u=j}v=!u}p=v}k=p}f=k}d=f}e=d}if(e){b=g;break a}}catch(W){b=g;break a}b=j}return b?j:g},Ta=function(a,b,c,e){return function(){var d=j;e&&Aa().al(3E4);try{if(ta(a.document.getElementById(b).contentWindow)){var f=a.document.getElementById(b).contentWindow,k=f.document;if(!k.body||!k.body.firstChild)k.open(),f.google_async_iframe_close=g,k.write(c)}else{var p=a.document.getElementById(b).contentWindow,v;f=c;f=String(f);if(f.quote)v=
f.quote();else{for(var k=['"'],u=0;u<f.length;u++){var q=f.charAt(u),H=q.charCodeAt(0),V=k,na=u+1,W;if(!(W=pa[q])){var I;if(31<H&&127>H)I=q;else{var s=q;if(s in n)I=n[s];else if(s in pa)I=n[s]=pa[s];else{var r=s,w=s.charCodeAt(0);if(31<w&&127>w)r=s;else{if(256>w){if(r="\\x",16>w||256<w)r+="0"}else r="\\u",4096>w&&(r+="0");r+=w.toString(16).toUpperCase()}I=n[s]=r}}W=I}V[na]=W}k.push('"');v=k.join("")}p.location.replace("javascript:"+v)}d=g}catch(Mb){p=va().google_jobrunner,za(p)&&p.rl()}d&&(new Na(a)).set(b,
Ta(a,b,c,j))}},Ua=Math.floor(1E6*Math.random()),Va=function(a){a=a.data.split("\n");for(var b={},c=0;c<a.length;c++){var e=a[c].indexOf("=");-1!=e&&(b[a[c].substr(0,e)]=a[c].substr(e+1))}b[1]==Ua&&(window.google_top_url=b[3])};window.google_loader_used=g;var J=window;if(!("google_onload_fired"in J)){J.google_onload_fired=j;var Wa=function(){J.google_onload_fired=g};J.addEventListener?J.addEventListener("load",Wa,j):J.attachEvent&&J.attachEvent("onload",Wa)}var Xa=window,Ya=2;try{Xa.top.document==Xa.document?Ya=0:ta(Xa.top)&&(Ya=1)}catch(Za){}
if(2===Ya&&top.postMessage&&!window.google_top_experiment&&(window.google_top_experiment=sa(["jp_e","jp_c"],ga),"jp_e"===window.google_top_experiment)){var K=window;K.addEventListener?K.addEventListener("message",Va,j):K.attachEvent&&K.attachEvent("onmessage",Va);var $a={"0":"google_loc_request",1:Ua},ab=[],bb;for(bb in $a)ab.push(bb+"="+$a[bb]);top.postMessage(ab.join("\n"),"*")}window.google_expand_experiment||(window.google_expand_experiment=sa(["expt","control"],fa)||"none");var cb;
if(window.google_enable_async===j)cb=0;else{var db=navigator.userAgent;cb=(Da.test(db)||Ea.test(db)?j:g)&&!window.google_container_id&&(!window.google_ad_output||"html"==window.google_ad_output)}
if(cb){var eb=window;eb.google_unique_id?++eb.google_unique_id:eb.google_unique_id=1;for(var F=window,_script$$inline_87="script",L,D=F,C={allowtransparency:'"true"',frameborder:'"0"',height:'"'+F.google_ad_height+'"',hspace:'"0"',marginwidth:'"0"',marginheight:'"0"',onload:'"'+Oa+'"',scrolling:'"no"',vspace:'"0"',width:'"'+F.google_ad_width+'"'},fb=D.document,M=C.id,gb=0;!M||D.document.getElementById(M);)M="aswift_"+gb++;C.id=M;C.name=M;fb.write(Fa());L=M;var hb,N=F;N.google_page_url&&(N.google_page_url=
String(N.google_page_url));for(var ib=[],jb=0,kb=E.length;jb<kb;jb++){var lb=E[jb];if(N[lb]!=h){var mb;try{var nb=[];Ja(new Ha,N[lb],nb);mb=nb.join("")}catch(ob){}mb&&ra(ib,lb,"=",mb,";")}}hb=ib.join("");var O=window,pb=O.google_ad_output,P=O.google_ad_format;if(!P&&("html"==pb||pb==h))P=O.google_ad_width+"x"+O.google_ad_height;P=P&&(!O.google_ad_slot||O.google_override_format)?P.toLowerCase():"";O.google_ad_format=P;var Q,qb=[t.google_ad_slot,t.google_ad_format,t.google_ad_type,t.google_ad_width,
t.google_ad_height];if(x){var R;if(x){for(var rb=[],sb=0,S=x;S&&25>sb;S=S.parentNode,++sb)rb.push(9!=S.nodeType&&S.id||"");R=rb.join()}else R="";R&&qb.push(R)}var tb=0;if(qb){var ub=qb.join(":"),vb=ub.length;if(0==vb)tb=0;else{for(var T=305419896,wb=0;wb<vb;wb++)T^=(T<<5)+(T>>2)+ub.charCodeAt(wb)&4294967295;tb=0<T?T:4294967296+T}}Q=tb.toString();a:{var U=window,X=U.google_async_slots;X||(X=U.google_async_slots={});var xb=U.google_unique_id,Y=String("number"==typeof xb?xb:0);if(Y in X&&(Y+="b",Y in
X))break a;X[Y]={sent:j,w:U.google_ad_width||"",h:U.google_ad_height||"",adk:Q,type:U.google_ad_type||"",slot:U.google_ad_slot||"",fmt:U.google_ad_format||"",cli:U.google_ad_client||"",saw:[]}}var Z=F.google_ad_handling_experiment||(Ma()?sa("X XN S SC PL PS".split(" "),ha):""),yb="";if(Ma()&&"S"!=Z&&"XN"!=Z){var zb;zb="zrt_ads_frame"+F.google_unique_id;var Ab=F.google_page_url||Pa()?F.document.referrer:F.document.URL,Bb=h;if("PL"==Z||"PS"==Z)Bb="K="+(Ab+"_"+Q+"_"+F.google_unique_id);var Cb=Bb,$={style:"display:none"};
$.id=zb;$.name=zb;$.src=Ga(ea("","googleads.g.doubleclick.net"),["/pagead/html/r20121206/r20121214/zrt_lookup.html",Cb?"#"+Cb:""].join(""));var Db=["<iframe"],Eb=function(a,b){Db.push(" "+b+'="'+(a==h?"":a)+'"')},Fb;for(Fb in $)Object.prototype.hasOwnProperty.call($,Fb)&&Eb.call(h,$[Fb],Fb);Db.push("></iframe>");yb=Db.join("")}for(var Gb=F,Hb=0,Ib=E.length;Hb<Ib;Hb++)Gb[E[Hb]]=h;var Jb=(new Date).getTime(),
Kb=F.google_top_experiment,Lb=F.google_expand_experiment,Nb="";Sa(F)&&(Nb=Ra());var Ob=["<!doctype html><html><body>",yb,"<",_script$$inline_87,">",hb,"google_show_ads_impl=true;google_unique_id=",F.google_unique_id,';google_async_iframe_id="',L,'";google_ad_unit_key="',Q,'";google_start_time=',m,";",Kb?'google_top_experiment="'+Kb+'";':"",Lb?'google_expand_experiment="'+Lb+'";':"",Z?'google_ad_handling_experiment="'+Z+'";':"","google_bpp=",Jb>m?Jb-m:1,";</",_script$$inline_87,">",Nb,Qa(),"</body></html>"].join("");
(F.document.getElementById(L)?Ba:Ca)(Ta(F,L,Ob,g))}else window.google_start_time=m,!("object"==typeof window.n&&"function"==typeof window.n.createIframe)&&Sa(window)&&document.write(Ra()),document.write(Qa());})();

View File

@@ -0,0 +1,14 @@
// JScript 文件
function LogClickCount(link,areaId)
{
var url=window.location.href;
var myImage=new Image(0,0);
if(link!=null && link!='')
{
myImage.src="http://counter.csdn.net/a/Counter.aspx?area=" + areaId+"&u="+ escape(link);
}
else
{
myImage.src="http://counter.csdn.net/a/Counter.aspx?area=" + areaId+"&u="+ escape(link);
}
}

View File

@@ -0,0 +1 @@
showad7('<li><a href="http://c.pongo.cn/Job/JobDetails?ID=69485&AdInfoID=0&PositionID=7&GroupID=0&OrgID=0&SiteID=1&AdJobID=0&AdOrgID=0" title="【云南远信科技有限公司】Iphone手机软件开发工程师" target="_blank">【云南远信科技有限公司】Iphone手机软件开发工程师</a></li><li><a href="http://c.pongo.cn/Job/JobDetails?ID=69484&AdInfoID=0&PositionID=7&GroupID=0&OrgID=0&SiteID=1&AdJobID=0&AdOrgID=0" title="【上海瑞创网络科技股份有限公司】产品策划OA项目" target="_blank">【上海瑞创网络科技股份有限公司】产品策划OA项目</a></li><li><a href="http://c.pongo.cn/Job/JobDetails?ID=69470&AdInfoID=0&PositionID=7&GroupID=0&OrgID=0&SiteID=1&AdJobID=0&AdOrgID=0" title="【对外经济贸易大学】JAVA或.NET高级工程师" target="_blank">【对外经济贸易大学】JAVA或.NET高级工程师</a></li><li><a href="http://c.pongo.cn/Job/JobDetails?ID=69415&AdInfoID=0&PositionID=7&GroupID=0&OrgID=0&SiteID=1&AdJobID=0&AdOrgID=0" title="【北京木仓科技有限公司】Java高级开发工程师" target="_blank">【北京木仓科技有限公司】Java高级开发工程师</a></li><li><a href="http://c.pongo.cn/Job/JobDetails?ID=68118&AdInfoID=0&PositionID=7&GroupID=0&OrgID=0&SiteID=1&AdJobID=0&AdOrgID=0" title="【北京东源汇智咨询有限责任公司】资深3D引擎师" target="_blank">【北京东源汇智咨询有限责任公司】资深3D引擎师</a></li><li><a href="http://c.pongo.cn/Job/JobDetails?ID=69261&AdInfoID=0&PositionID=7&GroupID=0&OrgID=0&SiteID=1&AdJobID=0&AdOrgID=0" title="【CSDN】前端工程师" target="_blank">【CSDN】前端工程师</a></li><li><a href="http://c.pongo.cn/Job/JobDetails?ID=69426&AdInfoID=0&PositionID=7&GroupID=0&OrgID=0&SiteID=1&AdJobID=0&AdOrgID=0" title="【上海科锐福克斯人才顾问有限公司】IT猎头顾问" target="_blank">【上海科锐福克斯人才顾问有限公司】IT猎头顾问</a></li><li><a href="http://c.pongo.cn/Job/JobDetails?ID=69131&AdInfoID=0&PositionID=7&GroupID=0&OrgID=0&SiteID=1&AdJobID=0&AdOrgID=0" title="【广州市科普会计信息有限公司】PHP高级工程师" target="_blank">【广州市科普会计信息有限公司】PHP高级工程师</a></li><li><a href="http://c.pongo.cn/Job/JobDetails?ID=69401&AdInfoID=0&PositionID=7&GroupID=0&OrgID=0&SiteID=1&AdJobID=0&AdOrgID=0" title="【中国工商银行】信息科技部-产品开发岗" target="_blank">【中国工商银行】信息科技部-产品开发岗</a></li><li><a href="http://c.pongo.cn/Job/JobDetails?ID=69459&AdInfoID=0&PositionID=7&GroupID=0&OrgID=0&SiteID=1&AdJobID=0&AdOrgID=0" title="【悠悠村uucun】Android开发工程师支付" target="_blank">【悠悠村uucun】Android开发工程师支付</a></li>')

View File

@@ -0,0 +1,67 @@
function RandomNum(min, max) {
return Math.floor(Math.random() * (max - min) + min);
}
// 水平滚动插件
(function ($) {
$.fn.extend({
Scroll: function (opt, callback) {
//参数初始化
if (!opt) var opt = {};
var _btnRight = $("#" + opt.right); //Shawphy:向右按钮
var _btnLeft = $("#" + opt.left); //Shawphy:向左按钮
var timerID;
var _this = this.eq(0).find("ul:first");
var lineW = _this.find("li:first").width(), //获取列表宽度
line = opt.line ? parseInt(opt.line, 10) : parseInt(this.width() / lineW, 10), //每次滚动的行数,默认为一屏,即父容器高度
speed = opt.speed ? parseInt(opt.speed, 10) : 500; //卷动速度,数值越大,速度越慢(毫秒)
timer = opt.timer //?parseInt(opt.timer,10):3000; //滚动的时间间隔(毫秒)
if (line == 0) line = 1;
var rightWidth = 0 - line * lineW;
//滚动函数
var scrollRight = function () {
_btnRight.unbind("click", scrollRight);
_this.animate({
marginLeft: rightWidth
}, speed, function () {
for (i = 1; i <= line; i++) {
_this.find("li:first").appendTo(_this);
}
_this.css({ marginLeft: 0 });
_btnRight.bind("click", scrollRight);
});
}
//Shawphy:向左翻页函数
var scrollLeft = function () {
_btnLeft.unbind("click", scrollLeft);
for (i = 1; i <= line; i++) {
_this.find("li:last").show().prependTo(_this);
}
_this.css({ marginLeft: rightWidth });
_this.animate({
marginLeft: 0
}, speed, function () {
_btnLeft.bind("click", scrollLeft);
});
}
//Shawphy:自动播放
var autoPlay = function () {
if (timer) timerID = window.setInterval(scrollRight, timer);
};
var autoStop = function () {
if (timer) window.clearInterval(timerID);
};
//鼠标事件绑定
_this.hover(autoStop, autoPlay);
autoPlay();
var i = 0;
var rd = RandomNum(0, 10);
while (i++ < rd) {
scrollRight();
}
_btnRight.css("cursor", "pointer").click(scrollRight).hover(autoStop, autoPlay);
_btnLeft.css("cursor", "pointer").click(scrollLeft).hover(autoStop, autoPlay);
}
})
})(jQuery);

View File

@@ -0,0 +1,38 @@
/*文章中的插入代码*/
$(document).ready(function () {
$(".article_content pre").each(function () {
var $this = $(this);
if ($this.attr("class").indexOf("brush:") != -1) {
var lang = $this.attr("class").split(';')[0].split(':')[1];
$this.attr('name', 'code');
$this.attr('class', lang);
}
if ($this.attr("class")) {
$this.attr('name', 'code');
}
});
dp.SyntaxHighlighter.HighlightAll('code');
/*如果浏览器不支持访问剪切板就用flash实现*/
if (!window.clipboardData) {
setTimeout("setCopyBtn()", 1000);
}
});
/*使用flash实现复制到剪切板*/
function setCopyBtn() {
$('.CopyToClipboard').each(function () {
var clip = new ZeroClipboard.Client();
clip.setHandCursor(true);
clip.addEventListener('load', function (client) { });
clip.addEventListener('mouseOver', function (client) {
var _c_ode = client.movie.parentNode.parentNode.parentNode.parentNode.nextSibling.innerHTML;
_c_ode = _c_ode.replace(/&lt;/g, "<").replace(/&gt;/g, ">").replace(/&amp;/g, "&");
client.setText(_c_ode);
});
clip.addEventListener('complete', function (client, text) {
alert("代码已经复制到你的剪贴板。");
});
clip.glue(this, this.parentNode);
});
}

View File

@@ -0,0 +1,25 @@
var CNick = function (selector) {
if (!selector) selector = 'a.user_name';
var un_eles = jQuery(selector);
this.showNickname = function () {
var uns = [];
un_eles.each(function (idx) {
uns.push(this.innerHTML);
});
var uri = 'http://api.csdn.net/service/open/nick';
var data = 'users=' + uns.join(',') + '&callback=?';
jQuery.getJSON(uri, data, printNickname);
};
window.printNickname = function (data) {
un_eles.each(function (idx) {
this.innerHTML = data[idx][this.innerHTML];
});
};
}
jQuery(function () {
new CNick().showNickname();
});

View File

@@ -0,0 +1,37 @@

var list=[];$(document).ready(function(){if(islock){$("#comment_form").html("<div class='notice'>该文章已被禁止评论!</div>");}else if(currentUserName){var html='<a name="commentbox"></a><a name="reply"></a><a name="quote"></a><form action="/'+username+'/comment/submit?id='+fileName+'" method="post">'+'<div class="commentform"><div class="panel_head">发表评论</div>'+'<ul><li class="left">用 户 名:</li><li class="right">'+currentUserName+'</li></ul>'+'<ul><li class="left">评论内容:</li><li class="right" style="position:relative;">'+'<div id="ubbtools">'+'<a href="#insertcode" code="code"><img src="'+static_host+'/images/ubb/code.gif" border="0" alt="插入代码" title="插入代码"/></a>'+'</div>'+'<div id="lang_list" style="display:none; position:absolute;top:25px; left:0px;"></div>'+'<textarea class="comment_content" name="comment_content" id="comment_content" style="width: 400px; height: 200px;"></textarea>'+'</li></ul>'+'<ul><input type="hidden" id="comment_replyId" name="comment_replyId" />'+'<input type="hidden" id="comment_userId" name="comment_userId" value="521203" />'+'<input type="hidden" id="commentId" name="commentId" value="" />'+'<input type="submit" class="comment_btn" value="提交" />&nbsp;&nbsp;<span id="tip_comment" style="color: Red; display: none;"></span>'+'</ul></div></form>';$("#comment_form").html(html);}else{var curl=encodeURIComponent(location.href);$("#comment_form").html('<div class="guest_link">您还没有登录,请'+'<a href="http://passport.csdn.net/account/login?from='+curl+'">[登录]</a>或'+'<a href="http://passport.csdn.net/account/register?from='+curl+'">[注册]</a></div>');}
var editorId="#comment_content";editor=$(editorId);var verifycodeId="#img_verifycode";var editor_inter=null;if(editor.length>0){var v=["html","javascript","css","php","csharp","cpp","java","python","ruby","vb","delphi","sql","plain"];var k=["HTML/XML","JavaScript","CSS","PHP","C#","C++","Java","Python","Ruby","Visual Basic","Delphi","SQL","其它"];for(var i=0;i<v.length;i++){$("#lang_list").append('<a href="#'+v[i]+'">'+k[i]+'</a>')}
editor.focus(function(){editor_inter=setInterval(function(){commentTip("还能输入"+(1000-editor.val().length)+"个字符");},200);}).blur(function(){if(editor_inter)clearInterval(editor_inter);});}
var listId="#comment_list";loadList(1);function noComments(){$(listId).html('<br />&nbsp;&nbsp;暂无评论<br /><br /><div class="clear"></div>');}
function loadList(pageIndex,isSub){if(commentscount==0){noComments();return;}
pageIndex=parseInt(pageIndex)||1;$("#comments_bar").html("正在加载评论...");var cmtUrl="../../comment/list/"+fileName+"?page="+(pageIndex||1);if(isSub)cmtUrl+="&_"+Math.random();$.get(cmtUrl,function(json){if(!json){noComments();return;}
var data=(typeof json=='object')?json:eval("("+json+")");if(isSub)list=data.list;else list=list.concat(data.list);var listHtml='';var topics=getTopics(list);var total=data.page.RecordCount>0?data.page.RecordCount:topics.length;for(var i=0;i<topics.length;i++){var comment=topics[i];var layer=total-i;listHtml+=getItemHtml(comment,layer);}
listHtml+='<div class="clear"></div>';$(listId).html(listHtml);dp.SyntaxHighlighter.HighlightAll('code2');new CNick(listId+' a.username').showNickname();if(data.page.PageIndex>=data.page.PageCount){$("#comment_bar").hide();}else{$("#comment_bar").html('<div id="load_comments" page="'+(pageIndex+1)+'">查看更多评论</div>');}
setBtnEvent();});};function getTopics(list){var topics=[];for(var i=0;i<list.length;i++){var t=list[i];if(t.ParentId==0){t.Replies=getReplies(t,list);topics.push(t);}}
return topics;}
function getReplies(item,list){var replies=[];for(var i=0;i<list.length;i++){var r=list[i];if(r.ParentId==item.CommentId){r.Replies=getReplies(r,list);replies.push(r);}}
return replies;}
function getItemHtml(comment,index,floor){var html='<dl class="comment_item comment_'+(comment.ParentId>0?"reply":"topic")+'" id="comment_item_{id}">'+'<dt class="comment_head" floor='+(floor||index)+'>'+(comment.ParentId>0?"Re:":index+'楼')+' <span class="user">';if(comment.UserName!=null&&comment.UserName!='')
html+='<a class="username" href="/'+comment.UserName+'" target="_blank">'+comment.UserName+'</a>';else
html+='[游客]';html+=" <span class='ptime'>"+comment.PostTime+"发表</span> ";html+=' <a href="#reply" class="cmt_btn reply" title="回复">[回复]</a> <span class="comment_manage" style="display:none;" commentid={id} username={username}> <a href="#quote" class="cmt_btn quote" title="引用">[引用]</a> <a href="#report" class="cmt_btn report" title="举报">[举报]</a>';if(username==currentUserName||comment.UserName==currentUserName)html+=' <a href="#delete" class="cmt_btn delete" title="删除">[删除]</a>';html+='</span></dt>';html+='<dd class="comment_userface"><a href="/'+comment.UserName+'" target="_blank"><img src="'+comment.Userface+'" width="40" height="40" /></a></dd>';html+='<dd class="comment_body">'+replaceUBBToHTML(comment)+'</dd>';html=html.replace(/\{id\}/g,comment.CommentId).replace(/\{username\}/g,comment.UserName);if(comment.Replies!=null){for(var j=0;j<comment.Replies.length;j++){html+=getItemHtml(comment.Replies[j],j+1,index);}}
html+="</dl>";return html;}
function getComment(commentId,list){for(var i=0;i<list.length;i++){var comment=list[i];if(comment.CommentId==commentId)
return comment;}
return null;}
function setBtnEvent(){$("#load_comments").click(function(){var page=$(this).attr("page");loadList(page);});$(".comment_head a").click(function(){var action=$(this).attr("href");action=action.substring(action.lastIndexOf('#'));var commentId=$(this).parent().attr("commentid");switch(action){case"#reply":if(currentUserName){commentId=$(".comment_manage",$(this).parent()).attr("commentid");replyComment(commentId,list);setEditorFocus();}
return true;case"#quote":if(currentUserName){quoteComment(commentId,list);setEditorFocus();}
return true;case"#report":reportComment(commentId,this);break;case"#delete":deleteComment(commentId);break;default:return true;}
return false;});$(".comment_item").mouseover(function(){$(".comment_manage",$(this)).eq(0).show();}).mouseout(function(){$(".comment_manage",$(this)).eq(0).hide();});}
function setEditorFocus(){var val=editor.val();editor.val('');editor.focus();editor.val(val);}
function quoteComment(commentId,list){var comment=getComment(commentId,list);var content=comment.Content;if(comment.Content.length>50){content=comment.Content.substring(0,50)+"...";}
editor.val("[quote="+(comment.UserName==null?"游客":comment.UserName)+"]"+content+"[/quote]\r\n");}
function replyComment(commentId,list){var comment=getComment(commentId,list);editor.val('[reply]'+comment.UserName+"[/reply]\r\n");$("#comment_replyId").val(commentId);}
function reportComment(commentId,e){report(commentId,3,e);}
function deleteComment(commentId){if(!confirm("你确定要删除这篇评论吗?"))return;var delUrl=blog_address+"/comment/delete?commentid="+commentId+"&filename="+fileName;$.get(delUrl,function(data){if(data.result==1){$("#comment_item_"+commentId).hide().remove();}else{alert("你没有删除该评论的权限!");}});}
function replaceUBBToHTML(comment){var content=$.trim(comment.Content);var re=/\[code=([\w#\.]+)\]([\s\S]*?)\[\/code\]/ig;var codelist=[];while((mc=re.exec(content))!=null){codelist.push(mc[0]);content=content.replace(mc[0],"--code--");}
content=replaceQuote(content);content=content.replace(/\[reply]([\s\S]*?)\[\/reply\][\r\n]{0,2}/gi,"回复$1");content=content.replace(/\[url=([^\]]+)]([\s\S]*?)\[\/url\]/gi,'<a href="$1" target="_blank">$2</a>');content=content.replace(/\[img(=([^\]]+))?]([\s\S]*?)\[\/img\]/gi,'<img src="$3" style="max-width:400px;max-height:200px;" border="0" title="$2" />');content=content.replace(/\r?\n/ig,"<br />");if(codelist.length>0){var re1=/--code--/ig;var i=0;while((mc=re1.exec(content))!=null){content=content.replace(mc[0],codelist[i]);i++;}}
content=content.replace(/\[code=([\w#\.]+)\]([\s\S]*?)\[\/code\]/ig,function(m0,m1,m2){if($.trim(m2)=="")return'';return'<pre name="code2" class="'+m1+'">'+m2+'</pre>';});return content;}
function replaceQuote(str){var m=/\[quote=([^\]]+)]([\s\S]*)\[\/quote\]/gi.exec(str);if(m){return str.replace(m[0],'<fieldset><legend>引用“'+m[1]+'”的评论:</legend>'+replaceQuote(m[2])+'</fieldset>');}else{return str;}}
$("#ubbtools").children().click(function(){var selectedValue=editor.selection();editor.focus();var code=$(this).attr("code");switch(code){case"code":var lang_list=$("#lang_list");lang_list.show();lang_list.children().each(function(){$(this).unbind("click").click(function(){editor.val("[code="+$.trim(this.href.split('#')[1])+"]\n"+selectedValue+"\n[/code]");lang_list.hide();});});editor.click(function(e){lang_list.hide();});break;default:editor.val("["+code+"]"+selectedValue+"[/"+code+"]");break;}
return false;});var c_doing=false;$("#comment_form > form").submit(function(){if(c_doing)return false;var content=$.trim($(editorId).val());if(content==""){commentTip("评论内容没有填写!");return false;}else if(content.length>1000){commentTip("评论内容太长了不能超过1000个字符");return false;}
var commentId=$("#commentId").val();commentTip("正在发表评论...");var beginTime=new Date();$(editorId).attr("disabled",true);$("button[type=submit]",this).attr("disabled",true);c_doing=true;$.ajax({type:"POST",url:$(this).attr("action"),data:{"commentid":commentId,"content":content,"replyId":$("#comment_replyId").val()},success:function(data){c_doing=false;commentTip(data.content);if(data.result){$(editorId).val('');$("#comment_replyId,#comment_verifycode").val('');commentscount++;loadList(1,true);$(editorId).attr("disabled",false);$("button[type=submit]",this).attr("disabled",false);commentTip("发表成功!评论耗时:"+(new Date()-beginTime)+"毫秒")}}});return false;});var t;function commentTip(message){$("#tip_comment").html(message).show();clearTimeout(t);t=setTimeout(function(){$("#tip_comment").hide();},10000);}});

View File

@@ -0,0 +1,232 @@
$(document).ready(function () {
$("#btnSubmit").click(function () {
var key = $("#inputSearch").val();
if (key == "") {
alert("请输入搜索关键字");
$("#inputSearch").focus();
return false;
}
$("#inputQ").val('blog:' + username + ' ' + key);
return true;
});
initDigg();
initArchives();
initShareButtons();
buildCTable();//创建目录
});
function initArchives() {
var shortlist = '';
var hidelist = '';
var list = $("#archive_list");
list.children().each(function (i) {
if (i < 5)
shortlist += "<li>" + $(this).html() + "</li>";
else
hidelist += "<li>" + $(this).html() + "</li>";
});
if (hidelist == '') return;
hidelist = '<span class="hidelist" style="display:none;">' + hidelist + '</span>';
list.html(shortlist + hidelist + '<div id="archive_list_button" class="list_closed">展开</div>');
$("#archive_list_button").toggle(function () {
$(this).html("收起");
$(this).removeClass("list_closed").addClass("list_opended");
$(".hidelist", list).show();
}, function () {
$(this).html("展开");
$(this).removeClass("list_opended").addClass("list_closed");
$(".hidelist", list).hide();
});
}
function initShareButtons() {
var panel = $("#sharePanel");
if (panel.length == 0) return;
var url = encodeURIComponent(document.location);
var title = encodeURIComponent(document.title);
var shareto = {
"sina": function () {
var _u = 'http://v.t.sina.com.cn/share/share.php?url=' + url + '&title=' + title;
var imgs = $(".article_content img");
if (imgs.length > 0) {
_u += "&pic=" + encodeURIComponent(imgs[0].src);
}
openWindow(_u);
},
"qq": function () {
var _site = 'http://blog.csdn.net';
var _u = 'http://v.t.qq.com/share/share.php?url=' + url + '&site=' + _site + '&title=' + title;
var imgs = $(".article_content img");
if (imgs.length > 0) {
_u += "&pic=" + encodeURIComponent(imgs[0].src);
}
openWindow(_u);
}
};
$("#sharePanel").html('<span>分享到:</span> <a name="sina" class="share_sina" title="分享到新浪微博"></a><a name="qq" class="share_qq" title="分享到腾讯微博"></a>');
$("#sharePanel a").each(function () {
var name = $(this).attr("name");
if (!name) return;
$(this).click(function () {
shareto[name]();
return false;
});
});
}
function initDigg() {
var diggdiv = $("#digg");
if (diggdiv.length > 0) {
var articleId = diggdiv.attr("ArticleId");
$("#btnDigg,#btnBury").click(function () {
var me = $(this);
var className = me.attr("class").replace("digg digg_", "");
if (className == "enable") {
var id = me.attr("id");
var action = id == "btnDigg" ? "digg" : "bury";
$.get(blog_address + "/article/" + action + "?ArticleId=" + articleId, function () {
$("#btnDigg,#btnBury").unbind("click").removeClass("digg_enable").addClass("digg_disable");
var val = parseInt($.trim($("dd", me).html()));
val++;
$("dd", me).html(val);
var digged = [];
var tmp = $.cookie("digged");
if (tmp) { digged = tmp.split(','); }
digged.push(articleId);
$.cookie("digged", digged.join());
});
} else {
$(this).unbind("click");
}
});
}
}
function initBodyHeight() {
var siderHeight = $("#sider").height();
var mainHeight = $("#main").height();
if (siderHeight > mainHeight) {
$("#body").height(siderHeight);
}
else {
$("#body").height(mainHeight + 100);
}
}
function collectArticle(title, fileName) {
openWindow("http://wz.csdn.net/storeit.aspx?t=" + encodeURIComponent(title) + "&u=" + blog_address + "/article/details/" + fileName, title);
}
function untopArticle(articleId) {
if (!confirm("你确定要取消置顶这篇文章吗?")) return;
$.get(blog_address + "/article/untop?articleId=" + articleId, function (txt) {
var data = eval("(" + txt + ")");
if (data.result) {
alert("文章已取消置顶!");
location.reload();
} else {
if (data.content)
alert(data.content);
else
alert("无法取消置顶,请到后台操作!");
}
});
}
function deleteArticle(articleId) {
if(!confirm("你确定要删除这篇文章吗?")) return;
$.get(blog_address + "/article/delete?articleId=" + articleId, function (txt) {
var data = eval("(" + txt + ")");
if (data.result) {
alert("文章已删除!");
location.reload();
} else {
if (data.content)
alert(data.content);
else
alert("无法删除,请到后台删除!");
}
});
}
function openWindow(url, title) {
var _t = title || encodeURI(document.title);
var _u = url || encodeURIComponent(document.location);
var f = function(){
var left = (screen.width - 600)/2;
var top = (screen.height - 450)/2;
if(!window.open(url,'','toolbar=0,resizable=1,scrollbars=yes,status=1,width=600,height=400'))
location.href = url;
}
if(/Firefox/.test(navigator.userAgent)) setTimeout(f,0); else f();
}
function report(id, t, e) {
//创建遮罩
$.createMask();
//加载对话框
var url = blog_address + "/common/report?id=" + id + "&t=" + t;
if (t == 3) {
var floor = e.parentNode.parentNode.parentNode.getAttribute('floor');
url += "&floor=" + floor;
}
var top = (document.documentElement.clientHeight - 400) / 2 + (document.documentElement.scrollTop || document.body.scrollTop);
var left = (document.documentElement.clientWidth - 400) / 2;
$("#report_dialog").load(url).css({ "top": top + "px", "left": left }).show();
}
function getCalendar(time) {
$("#calendar").load(blog_address + "/Article/Calendar?time=" + time + "&.calendar");
return false;
};
/*只能创建文章目录*/
function buildCTable(){
var hs = $('#article_content').find('h1,h2,h3,h4,h5,h6');
if(hs.length<2) return;
var s = '';
s += '<div style="clear:both"></div>';
s += '<div style="border:solid 1px #ccc; background:#eee; float:left; min-width:200px;padding:4px 10px;">';
s += '<p style="text-align:right;margin:0;"><span style="float:left;">目录<a href="#" title="系统根据文章中H1到H6标签自动生成文章目录">(?)</a></span><a href="#" onclick="javascript:return openct(this);" title="展开">[+]</a></p>';
s += '<ol style="display:none;margin-left:14px;padding-left:14px;line-height:160%;">';
var old_h = 0,ol_cnt = 0;
for(var i=0;i<hs.length;i++){
var h = parseInt(hs[i].tagName.substr(1), 10);
if(!old_h) old_h = h;
if(h > old_h){ s += '<ol>'; ol_cnt++;}
else if(h < old_h && ol_cnt>0){ s += '</ol>'; ol_cnt--;}
old_h = h;
var tit = hs.eq(i).text().replace(/^[\d.、\s]+/g, '');
tit = tit.replace(/[^a-zA-Z0-9_\-\s\u4e00-\u9fa5]+/g, '');
s += '<li><a href="#t'+i+'">'+tit+'</a></li>';
hs.eq(i).html('<a name="t'+i+'"></a>'+hs.eq(i).html());
}
while(ol_cnt>0){
s += '</ol>';
ol_cnt--;
}
s += '</ol></div>';
s += '<div style="clear:both"></div>';
$(s).insertBefore($('#article_content'));
}
function openct(e){
if(e.innerHTML=='[+]'){
$(e).attr('title','收起').html('[-]').parent().next().slideDown(500);
}else{
$(e).attr('title','展开').html('[+]').parent().next().slideUp(500);
}
e.blur();
return false;
}

View File

@@ -0,0 +1 @@
document.write('<script type="text/javascript" charset="UTF-8" src="http://message.csdn.net/msg.popup.js"><'+'/script>');

View File

@@ -0,0 +1,112 @@
.dp-highlighter { font-family: "Consolas" , "Courier New" , Courier, mono, serif; font-size: 12px; background-color: #E7E5DC; width: 99%; overflow: auto; margin: 18px 0 18px 0 !important; padding-top: 1px; /* adds a little border on top when controls are hidden */ }
/* clear styles */
.dp-highlighter ol, .dp-highlighter ol li, .dp-highlighter ol li span { margin: 0; padding: 0; border: none; }
.dp-highlighter a, .dp-highlighter a:hover { background: none; border: none; padding: 0; margin: 0; }
.dp-highlighter .bar { padding-left: 45px; }
.dp-highlighter.collapsed .bar, .dp-highlighter.nogutter .bar { padding-left: 0px; }
.dp-highlighter ol { list-style: decimal; /* for ie */ background-color: #fff; margin: 0px 0px 1px 45px !important; /* 1px bottom margin seems to fix occasional Firefox scrolling */ padding: 0px; color: #5C5C5C; }
.dp-highlighter.nogutter ol, .dp-highlighter.nogutter ol li { list-style: none !important; margin-left: 0px !important; }
.dp-highlighter ol li, .dp-highlighter .columns div { list-style: decimal-leading-zero; /* better look for others, override cascade from OL */ list-style-position: outside !important; border-left: 3px solid #6CE26C; background-color: #F8F8F8; color: #5C5C5C; padding: 0 3px 0 10px !important; margin: 0 !important; line-height: 150%; }
.dp-highlighter.nogutter ol li, .dp-highlighter.nogutter .columns div { border: 0; }
.dp-highlighter .columns { background-color: #F8F8F8; color: gray; overflow: hidden; width: 100%; }
.dp-highlighter .columns div { padding-bottom: 5px; }
.dp-highlighter ol li.alt { background-color: #FFF; color: inherit; }
.dp-highlighter ol li span { color: black; background-color: inherit; }
/* Adjust some properties when collapsed */
.dp-highlighter.collapsed ol { margin: 0px; }
.dp-highlighter.collapsed ol li { display: none; }
/* Additional modifications when in print-view */
.dp-highlighter.printing { border: none; }
.dp-highlighter.printing .tools { display: none !important; }
.dp-highlighter.printing li { display: list-item !important; }
/* Styles for the tools */
.dp-highlighter .tools { padding: 3px 8px 3px 10px; font: 9px Verdana, Geneva, Arial, Helvetica, sans-serif; color: silver; background-color: #f8f8f8; padding-bottom: 10px; border-left: 3px solid #6CE26C; }
.dp-highlighter.nogutter .tools { border-left: 0; }
.dp-highlighter.collapsed .tools { border-bottom: 0; }
.dp-highlighter .tools a { font-size: 9px; color: #a0a0a0; background-color: inherit; text-decoration: none; margin-right: 10px; }
.dp-highlighter .tools a:hover { color: red; background-color: inherit; text-decoration: underline; }
/* About dialog styles */
.dp-about { background-color: #fff; color: #333; margin: 0px; padding: 0px; }
.dp-about table { width: 100%; height: 100%; font-size: 11px; font-family: Tahoma, Verdana, Arial, sans-serif !important; }
.dp-about td { padding: 10px; vertical-align: top; }
.dp-about .copy { border-bottom: 1px solid #ACA899; height: 95%; }
.dp-about .title { color: red; background-color: inherit; font-weight: bold; }
.dp-about .para { margin: 0 0 4px 0; }
.dp-about .footer { background-color: #ECEADB; color: #333; border-top: 1px solid #fff; text-align: right; }
.dp-about .close { font-size: 11px; font-family: Tahoma, Verdana, Arial, sans-serif !important; background-color: #ECEADB; color: #333; width: 60px; height: 22px; }
/* Language specific styles */
.dp-highlighter .comment, .dp-highlighter .comments { color: #008200; background-color: inherit; }
.dp-highlighter .string { color: blue; background-color: inherit; }
.dp-highlighter .keyword { color: #069; font-weight: bold; background-color: inherit; }
.dp-highlighter .preprocessor { color: gray; background-color: inherit; }
/*xml*/
.dp-xml .cdata { color: #ff1493; }
.dp-xml .tag, .dp-xml .tag-name { color: #993300; font-weight: bold; }
.dp-xml .attribute { color: red; }
.dp-xml .attribute-value { color: blue; }
/*sql*/
.dp-sql .func { color: #ff1493; }
.dp-sql .op { color: #808080; }
/*ruby*/
.dp-rb .symbol { color: #a70; }
.dp-rb .variable { color: #a70; font-weight: bold; }
/*python*/
.dp-py .builtins { color: #ff1493; }
.dp-py .magicmethods { color: #808080; }
.dp-py .exceptions { color: brown; }
.dp-py .types { color: brown; font-style: italic; }
.dp-py .commonlibs { color: #8A2BE2; font-style: italic; }
/*java*/
.dp-j .annotation { color: #646464; }
.dp-j .number { color: #C00000; }
/*delphi*/
.dp-delphi .number { color: blue; }
.dp-delphi .directive { color: #008284; }
.dp-delphi .vars { color: #000; }
/*css*/
.dp-css .value { color: black; }
.dp-css .important { color: red; }
/*csharp*/
.dp-c .vars { color: #d00; }
/*cpp*/
.dp-cpp .datatypes { color: #2E8B57; font-weight: bold; }
/*tools image*/
.dp-highlighter .bar a { background-repeat:no-repeat; background-position:left top; display:inline-block; width:16px; height:16px; padding:1px; text-indent:-2000px; _width:0px; _overflow:hidden; _padding-left:16px; _text-indent:0px; }
.dp-highlighter .bar a:hover { border:solid 1px #ccc; text-decoration:none; padding:0px; background-repeat:no-repeat;_padding-left:16px;}
.dp-highlighter .bar a.ExpandSource {}
.dp-highlighter .bar a.ViewSource { background-image:url(images/default/ico_plain.gif); }
.dp-highlighter .bar a.CopyToClipboard { background-image:url(images/default/ico_copy.gif);}
.dp-highlighter .bar a.PrintSource { display:none; }
.dp-highlighter .bar a.About { display:none;}

View File

@@ -0,0 +1,59 @@
(function(){var g=void 0,h=!0,j=null,l=!1,aa=encodeURIComponent,ba=Infinity,ca=setTimeout,n=Math,da=decodeURIComponent;function ea(a,b){return a.name=b}
var p="push",fa="test",ia="slice",q="replace",ja="load",ka="floor",la="charAt",ma="value",r="indexOf",na="match",oa="port",pa="createElement",qa="path",s="name",v="host",w="toString",x="length",y="prototype",ra="clientWidth",z="split",sa="stopPropagation",ta="scope",A="location",ua="search",B="protocol",va="clientHeight",wa="href",C="substring",xa="apply",ya="navigator",D="join",E="toLowerCase",F;function za(a,b){switch(b){case 0:return""+a;case 1:return 1*a;case 2:return!!a;case 3:return 1E3*a}return a}function Aa(a){return"function"==typeof a}function Ba(a){return a!=g&&-1<(a.constructor+"")[r]("String")}function G(a,b){return g==a||"-"==a&&!b||""==a}function Ca(a){if(!a||""==a)return"";for(;a&&-1<" \n\r\t"[r](a[la](0));)a=a[C](1);for(;a&&-1<" \n\r\t"[r](a[la](a[x]-1));)a=a[C](0,a[x]-1);return a}function Da(){return n.round(2147483647*n.random())}function Ea(){}
function H(a,b){if(aa instanceof Function)return b?encodeURI(a):aa(a);I(68);return escape(a)}function J(a){a=a[z]("+")[D](" ");if(da instanceof Function)try{return da(a)}catch(b){I(17)}else I(68);return unescape(a)}var Fa=function(a,b,c,d){a.addEventListener?a.addEventListener(b,c,!!d):a.attachEvent&&a.attachEvent("on"+b,c)},Ga=function(a,b,c,d){a.removeEventListener?a.removeEventListener(b,c,!!d):a.detachEvent&&a.detachEvent("on"+b,c)};
function Ha(a,b){if(a){var c=K[pa]("script");c.type="text/javascript";c.async=h;c.src=a;c.id=b;var d=K.getElementsByTagName("script")[0];d.parentNode.insertBefore(c,d);return c}}function L(a){return a&&0<a[x]?a[0]:""}function Ia(a){var b=a?a[x]:0;return 0<b?a[b-1]:""}var Ja=function(){this.prefix="ga.";this.R={}};Ja[y].set=function(a,b){this.R[this.prefix+a]=b};Ja[y].get=function(a){return this.R[this.prefix+a]};Ja[y].contains=function(a){return this.get(a)!==g};function Ka(a){0==a[r]("www.")&&(a=a[C](4));return a[E]()}function La(a,b){var c,d={url:a,protocol:"http",host:"",path:"",d:new Ja,anchor:""};if(!a)return d;c=a[r]("://");0<=c&&(d.protocol=a[C](0,c),a=a[C](c+3));c=a[ua]("/|\\?|#");if(0<=c)d.host=a[C](0,c)[E](),a=a[C](c);else return d.host=a[E](),d;c=a[r]("#");0<=c&&(d.anchor=a[C](c+1),a=a[C](0,c));c=a[r]("?");0<=c&&(Ma(d.d,a[C](c+1)),a=a[C](0,c));d.anchor&&b&&Ma(d.d,d.anchor);a&&"/"==a[la](0)&&(a=a[C](1));d.path=a;return d}
function Oa(a,b){function c(a){var b=(a.hostname||"")[z](":")[0][E](),c=(a[B]||"")[E](),c=1*a[oa]||("http:"==c?80:"https:"==c?443:"");a=a.pathname||"";0==a[r]("/")||(a="/"+a);return[b,""+c,a]}var d=b||K[pa]("a");d.href=K[A][wa];var e=(d[B]||"")[E](),f=c(d),k=d[ua]||"",m=e+"//"+f[0]+(f[1]?":"+f[1]:"");0==a[r]("//")?a=e+a:0==a[r]("/")?a=m+a:!a||0==a[r]("?")?a=m+f[2]+(a||k):0>a[z]("/")[0][r](":")&&(a=m+f[2][C](0,f[2].lastIndexOf("/"))+"/"+a);d.href=a;e=c(d);return{protocol:(d[B]||"")[E](),host:e[0],
port:e[1],path:e[2],Oa:d[ua]||"",url:a||""}}function Ma(a,b){function c(b,c){a.contains(b)||a.set(b,[]);a.get(b)[p](c)}for(var d=Ca(b)[z]("&"),e=0;e<d[x];e++)if(d[e]){var f=d[e][r]("=");0>f?c(d[e],"1"):c(d[e][C](0,f),d[e][C](f+1))}}function Pa(a,b){if(G(a)||"["==a[la](0)&&"]"==a[la](a[x]-1))return"-";var c=K.domain;return a[r](c+(b&&"/"!=b?b:""))==(0==a[r]("http://")?7:0==a[r]("https://")?8:0)?"0":a};var Qa=0;function Ra(a,b,c){!(1<=Qa)&&!(1<=100*n.random())&&(a=["utmt=error","utmerr="+a,"utmwv=5.3.8","utmn="+Da(),"utmsp=1"],b&&a[p]("api="+b),c&&a[p]("msg="+H(c[C](0,100))),M.w&&a[p]("aip=1"),Sa(a[D]("&")),Qa++)};var Ta=0,Ua={};function N(a){return Va("x"+Ta++,a)}function Va(a,b){Ua[a]=!!b;return a}
var Wa=N(),Xa=Va("anonymizeIp"),Ya=N(),$a=N(),ab=N(),bb=N(),O=N(),P=N(),cb=N(),db=N(),eb=N(),fb=N(),gb=N(),hb=N(),ib=N(),jb=N(),kb=N(),lb=N(),nb=N(),ob=N(),pb=N(),qb=N(),rb=N(),sb=N(),tb=N(),ub=N(),vb=N(),wb=N(),xb=N(),yb=N(),zb=N(),Ab=N(),Bb=N(),Cb=N(),Db=N(),Eb=N(),Fb=N(h),Gb=Va("currencyCode"),Hb=Va("page"),Ib=Va("title"),Jb=N(),Kb=N(),Lb=N(),Mb=N(),Nb=N(),Ob=N(),Pb=N(),Qb=N(),Rb=N(),Q=N(h),Sb=N(h),Tb=N(h),Ub=N(h),Vb=N(h),Wb=N(h),Zb=N(h),$b=N(h),ac=N(h),bc=N(h),cc=N(h),R=N(h),dc=N(h),ec=N(h),fc=
N(h),gc=N(h),hc=N(h),ic=N(h),jc=N(h),S=N(h),kc=N(h),lc=N(h),mc=N(h),nc=N(h),oc=N(h),pc=N(h),qc=N(h),rc=Va("campaignParams"),sc=N(),tc=Va("hitCallback"),uc=N();N();var vc=N(),wc=N(),xc=N(),yc=N(),zc=N(),Ac=N(),Bc=N(),Cc=N(),Dc=N(),Ec=N(),Fc=N(),Gc=N(),Hc=N(),Ic=N();N();var Mc=N(),Nc=N(),Oc=N();function Pc(a){var b=this.plugins_;if(b)return b.get(a)}var T=function(a,b,c,d){a[b]=function(){try{return d!=g&&I(d),c[xa](this,arguments)}catch(a){throw Ra("exc",b,a&&a[s]),a;}}},Qc=function(a,b,c,d){U[y][a]=function(){try{return I(c),za(this.a.get(b),d)}catch(e){throw Ra("exc",a,e&&e[s]),e;}}},V=function(a,b,c,d,e){U[y][a]=function(f){try{I(c),e==g?this.a.set(b,za(f,d)):this.a.set(b,e)}catch(k){throw Ra("exc",a,k&&k[s]),k;}}};var Rc=RegExp(/(^|\.)doubleclick\.net$/i),Sc=function(a,b){return Rc[fa](K[A].hostname)?h:"/"!==b?l:(0==a[r]("www.google.")||0==a[r](".google.")||0==a[r]("google."))&&!(-1<a[r]("google.org"))?h:l},Tc=function(a){var b=a.get(bb),c=a.c(P,"/");Sc(b,c)&&a[sa]()};var Zc=function(){var a={},b={},c=new Uc;this.g=function(a,b){c.add(a,b)};var d=new Uc;this.e=function(a,b){d.add(a,b)};var e=l,f=l,k=h;this.T=function(){e=h};this.j=function(a){this[ja]();this.set(sc,a,h);a=new Vc(this);e=l;d.execute(this);e=h;b={};this.n();a.Ja()};this.load=function(){e&&(e=l,this.Ka(),Wc(this),f||(f=h,c.execute(this),Xc(this),Wc(this)),e=h)};this.n=function(){if(e)if(f)e=l,Xc(this),e=h;else this[ja]()};this.get=function(c){Ua[c]&&this[ja]();return b[c]!==g?b[c]:a[c]};this.set=
function(c,d,e){Ua[c]&&this[ja]();e?b[c]=d:a[c]=d;Ua[c]&&this.n()};this.z=function(b){a[b]=this.b(b,0)+1};this.b=function(a,b){var c=this.get(a);return c==g||""===c?b:1*c};this.c=function(a,b){var c=this.get(a);return c==g?b:c+""};this.Ka=function(){if(k){var b=this.c(bb,""),c=this.c(P,"/");Sc(b,c)||(a[O]=a[hb]&&""!=b?Yc(b):1,k=l)}}};Zc[y].stopPropagation=function(){throw"aborted";};
var Vc=function(a){var b=this;this.q=0;var c=a.get(tc);this.Ua=function(){0<b.q&&c&&(b.q--,b.q||c())};this.Ja=function(){!b.q&&c&&ca(c,10)};a.set(uc,b,h)};function $c(a,b){b=b||[];for(var c=0;c<b[x];c++){var d=b[c];if(""+a==d||0==d[r](a+"."))return d}return"-"}
var bd=function(a,b,c){c=c?"":a.c(O,"1");b=b[z](".");if(6!==b[x]||ad(b[0],c))return l;c=1*b[1];var d=1*b[2],e=1*b[3],f=1*b[4];b=1*b[5];if(!(0<=c&&0<d&&0<e&&0<f&&0<=b))return l;a.set(Q,c);a.set(Vb,d);a.set(Wb,e);a.set(Zb,f);a.set($b,b);return h},cd=function(a){var b=a.get(Q),c=a.get(Vb),d=a.get(Wb),e=a.get(Zb),f=a.b($b,1);return[a.b(O,1),b!=g?b:"-",c||"-",d||"-",e||"-",f][D](".")},dd=function(a){return[a.b(O,1),a.b(cc,0),a.b(R,1),a.b(dc,0)][D](".")},ed=function(a,b,c){c=c?"":a.c(O,"1");var d=b[z](".");
if(4!==d[x]||ad(d[0],c))d=j;a.set(cc,d?1*d[1]:0);a.set(R,d?1*d[2]:10);a.set(dc,d?1*d[3]:a.get(ab));return d!=j||!ad(b,c)},fd=function(a,b){var c=H(a.c(Tb,"")),d=[],e=a.get(Fb);if(!b&&e){for(var f=0;f<e[x];f++){var k=e[f];k&&1==k[ta]&&d[p](f+"="+H(k[s])+"="+H(k[ma])+"=1")}0<d[x]&&(c+="|"+d[D]("^"))}return c?a.b(O,1)+"."+c:j},gd=function(a,b,c){c=c?"":a.c(O,"1");b=b[z](".");if(2>b[x]||ad(b[0],c))return l;b=b[ia](1)[D](".")[z]("|");0<b[x]&&a.set(Tb,J(b[0]));if(1>=b[x])return h;b=b[1][z](-1==b[1][r](",")?
"^":",");for(c=0;c<b[x];c++){var d=b[c][z]("=");if(4==d[x]){var e={};ea(e,J(d[1]));e.value=J(d[2]);e.scope=1;a.get(Fb)[d[0]]=e}}return h},hd=function(a){var b;b=function(b,e){if(!G(a.get(b))){var f=a.c(b,""),f=f[z](" ")[D]("%20"),f=f[z]("+")[D]("%20");c[p](e+"="+f)}};var c=[];b(ic,"utmcid");b(nc,"utmcsr");b(S,"utmgclid");b(kc,"utmgclsrc");b(lc,"utmdclid");b(mc,"utmdsid");b(jc,"utmccn");b(oc,"utmcmd");b(pc,"utmctr");b(qc,"utmcct");return(b=c[D]("|"))?[a.b(O,1),a.b(ec,0),a.b(fc,1),a.b(gc,1),b][D]("."):
""},id=function(a,b,c){c=c?"":a.c(O,"1");b=b[z](".");if(5>b[x]||ad(b[0],c))return a.set(ec,g),a.set(fc,g),a.set(gc,g),a.set(ic,g),a.set(jc,g),a.set(nc,g),a.set(oc,g),a.set(pc,g),a.set(qc,g),a.set(S,g),a.set(kc,g),a.set(lc,g),a.set(mc,g),l;a.set(ec,1*b[1]);a.set(fc,1*b[2]);a.set(gc,1*b[3]);var d=b[ia](4)[D](".");b=function(a){return(a=d[na](a+"=(.*?)(?:\\|utm|$)"))&&2==a[x]?a[1]:g};c=function(b,c){c?(c=e?J(c):c[z]("%20")[D](" "),a.set(b,c)):a.set(b,g)};-1==d[r]("=")&&(d=J(d));var e="2"==b("utmcvr");
c(ic,b("utmcid"));c(jc,b("utmccn"));c(nc,b("utmcsr"));c(oc,b("utmcmd"));c(pc,b("utmctr"));c(qc,b("utmcct"));c(S,b("utmgclid"));c(kc,b("utmgclsrc"));c(lc,b("utmdclid"));c(mc,b("utmdsid"));return h},ad=function(a,b){return b?a!=b:!/^\d+$/[fa](a)};var Uc=function(){this.filters=[]};Uc[y].add=function(a,b){this.filters[p]({name:a,s:b})};Uc[y].execute=function(a){try{for(var b=0;b<this.filters[x];b++)this.filters[b].s.call(W,a)}catch(c){}};function jd(a){100!=a.get(vb)&&a.get(Q)%1E4>=100*a.get(vb)&&a[sa]()}function kd(a){ld(a.get(Wa))&&a[sa]()}function md(a){"file:"==K[A][B]&&a[sa]()}function nd(a){a.get(Ib)||a.set(Ib,K.title,h);a.get(Hb)||a.set(Hb,K[A].pathname+K[A][ua],h)};var od=new function(){var a=[];this.set=function(b){a[b]=h};this.Xa=function(){for(var b=[],c=0;c<a[x];c++)a[c]&&(b[n[ka](c/6)]=b[n[ka](c/6)]^1<<c%6);for(c=0;c<b[x];c++)b[c]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"[la](b[c]||0);return b[D]("")+"~"}};function I(a){od.set(a)};var W=window,K=document,ld=function(a){var b=W._gaUserPrefs;return b&&b.ioo&&b.ioo()||!!a&&W["ga-disable-"+a]===h},pd=function(a){var b=[],c=K.cookie[z](";");a=RegExp("^\\s*"+a+"=\\s*(.*?)\\s*$");for(var d=0;d<c[x];d++){var e=c[d][na](a);e&&b[p](e[1])}return b},X=function(a,b,c,d,e,f){e=ld(e)?l:Sc(d,c)?l:h;if(e){if(b&&0<=W[ya].userAgent[r]("Firefox")){b=b[q](/\n|\r/g," ");e=0;for(var k=b[x];e<k;++e){var m=b.charCodeAt(e)&255;if(10==m||13==m)b=b[C](0,e)+"?"+b[C](e+1)}}b&&2E3<b[x]&&(b=b[C](0,2E3),I(69));
a=a+"="+b+"; path="+c+"; ";f&&(a+="expires="+(new Date((new Date).getTime()+f)).toGMTString()+"; ");d&&(a+="domain="+d+";");K.cookie=a}};var qd,rd,sd=function(){if(!qd){var a={},b=W[ya],c=W.screen;a.Q=c?c.width+"x"+c.height:"-";a.P=c?c.colorDepth+"-bit":"-";a.language=(b&&(b.language||b.browserLanguage)||"-")[E]();a.javaEnabled=b&&b.javaEnabled()?1:0;a.characterSet=K.characterSet||K.charset||"-";try{var d=K.documentElement,e=K.body,f=e&&e[ra]&&e[va],b=[];d&&(d[ra]&&d[va])&&("CSS1Compat"===K.compatMode||!f)?b=[d[ra],d[va]]:f&&(b=[e[ra],e[va]]);a.Wa=b[D]("x")}catch(k){I(135)}qd=a}},td=function(){sd();for(var a=qd,b=W[ya],a=b.appName+
b.version+a.language+b.platform+b.userAgent+a.javaEnabled+a.Q+a.P+(K.cookie?K.cookie:"")+(K.referrer?K.referrer:""),b=a[x],c=W.history[x];0<c;)a+=c--^b++;return Yc(a)},ud=function(a){sd();var b=qd;a.set(Lb,b.Q);a.set(Mb,b.P);a.set(Pb,b.language);a.set(Qb,b.characterSet);a.set(Nb,b.javaEnabled);a.set(Rb,b.Wa);if(a.get(ib)&&a.get(jb)){if(!(b=rd)){var c,d,e;d="ShockwaveFlash";if((b=(b=W[ya])?b.plugins:g)&&0<b[x])for(c=0;c<b[x]&&!e;c++)d=b[c],-1<d[s][r]("Shockwave Flash")&&(e=d.description[z]("Shockwave Flash ")[1]);
else{d=d+"."+d;try{c=new ActiveXObject(d+".7"),e=c.GetVariable("$version")}catch(f){}if(!e)try{c=new ActiveXObject(d+".6"),e="WIN 6,0,21,0",c.AllowScriptAccess="always",e=c.GetVariable("$version")}catch(k){}if(!e)try{c=new ActiveXObject(d),e=c.GetVariable("$version")}catch(m){}e&&(e=e[z](" ")[1][z](","),e=e[0]+"."+e[1]+" r"+e[2])}b=e?e:"-"}rd=b;a.set(Ob,rd)}else a.set(Ob,"-")};var vd=function(a){if(Aa(a))this.s=a;else{var b=a[0],c=b.lastIndexOf(":"),d=b.lastIndexOf(".");this.h=this.i=this.l="";-1==c&&-1==d?this.h=b:-1==c&&-1!=d?(this.i=b[C](0,d),this.h=b[C](d+1)):-1!=c&&-1==d?(this.l=b[C](0,c),this.h=b[C](c+1)):c>d?(this.i=b[C](0,d),this.l=b[C](d+1,c),this.h=b[C](c+1)):(this.i=b[C](0,d),this.h=b[C](d+1));this.k=a[ia](1);this.Ma=!this.l&&"_require"==this.h;this.J=!this.i&&!this.l&&"_provide"==this.h}},Y=function(){T(Y[y],"push",Y[y][p],5);T(Y[y],"_getPlugin",Pc,121);T(Y[y],
"_createAsyncTracker",Y[y].Sa,33);T(Y[y],"_getAsyncTracker",Y[y].Ta,34);this.I=new Ja;this.p=[]};F=Y[y];F.Na=function(a,b,c){var d=this.I.get(a);if(!Aa(d))return l;b.plugins_=b.plugins_||new Ja;b.plugins_.set(a,new d(b,c||{}));return h};F.push=function(a){var b=Z.Va[xa](this,arguments),b=Z.p.concat(b);for(Z.p=[];0<b[x]&&!Z.O(b[0])&&!(b.shift(),0<Z.p[x]););Z.p=Z.p.concat(b);return 0};F.Va=function(a){for(var b=[],c=0;c<arguments[x];c++)try{var d=new vd(arguments[c]);d.J?this.O(d):b[p](d)}catch(e){}return b};
F.O=function(a){try{if(a.s)a.s[xa](W);else if(a.J)this.I.set(a.k[0],a.k[1]);else{var b="_gat"==a.i?M:"_gaq"==a.i?Z:M.u(a.i);if(a.Ma){if(!this.Na(a.k[0],b,a.k[2])){if(!a.Pa){var c=Oa(""+a.k[1]);var d=c[B],e=K[A][B];var f;if(f="https:"==d||d==e?h:"http:"!=d?l:"http:"==e){var k;a:{var m=Oa(K[A][wa]);if(!(c.Oa||0<=c.url[r]("?")||0<=c[qa][r]("://")||c[v]==m[v]&&c[oa]==m[oa]))for(var t="http:"==c[B]?80:443,u=M.S,b=0;b<u[x];b++)if(c[v]==u[b][0]&&(c[oa]||t)==(u[b][1]||t)&&0==c[qa][r](u[b][2])){k=h;break a}k=
l}f=k&&!ld()}f&&(a.Pa=Ha(c.url))}return h}}else a.l&&(b=b.plugins_.get(a.l)),b[a.h][xa](b,a.k)}}catch(Za){}};F.Sa=function(a,b){return M.r(a,b||"")};F.Ta=function(a){return M.u(a)};var yd=function(){function a(a,b,c,d){g==f[a]&&(f[a]={});g==f[a][b]&&(f[a][b]=[]);f[a][b][c]=d}function b(a,b,c){if(g!=f[a]&&g!=f[a][b])return f[a][b][c]}function c(a,b){if(g!=f[a]&&g!=f[a][b]){f[a][b]=g;var c=h,d;for(d=0;d<k[x];d++)if(g!=f[a][k[d]]){c=l;break}c&&(f[a]=g)}}function d(a){var b="",c=l,d,e;for(d=0;d<k[x];d++)if(e=a[k[d]],g!=e){c&&(b+=k[d]);for(var c=[],f=g,ha=g,ha=0;ha<e[x];ha++)if(g!=e[ha]){f="";ha!=mb&&g==e[ha-1]&&(f+=ha[w]()+Za);for(var Cd=e[ha],Jc="",Yb=g,Kc=g,Lc=g,Yb=0;Yb<Cd[x];Yb++)Kc=
Cd[la](Yb),Lc=Na[Kc],Jc+=g!=Lc?Lc:Kc;f+=Jc;c[p](f)}b+=m+c[D](u)+t;c=l}else c=h;return b}var e=this,f=[],k=["k","v"],m="(",t=")",u="*",Za="!",Na={"'":"'0"};Na[t]="'1";Na[u]="'2";Na[Za]="'3";var mb=1;e.Ra=function(a){return g!=f[a]};e.A=function(){for(var a="",b=0;b<f[x];b++)g!=f[b]&&(a+=b[w]()+d(f[b]));return a};e.Qa=function(a){if(a==g)return e.A();for(var b=a.A(),c=0;c<f[x];c++)g!=f[c]&&!a.Ra(c)&&(b+=c[w]()+d(f[c]));return b};e.f=function(b,c,d){if(!wd(d))return l;a(b,"k",c,d);return h};e.o=function(b,
c,d){if(!xd(d))return l;a(b,"v",c,d[w]());return h};e.getKey=function(a,c){return b(a,"k",c)};e.N=function(a,c){return b(a,"v",c)};e.L=function(a){c(a,"k")};e.M=function(a){c(a,"v")};T(e,"_setKey",e.f,89);T(e,"_setValue",e.o,90);T(e,"_getKey",e.getKey,87);T(e,"_getValue",e.N,88);T(e,"_clearKey",e.L,85);T(e,"_clearValue",e.M,86)};function wd(a){return"string"==typeof a}function xd(a){return"number"!=typeof a&&(g==Number||!(a instanceof Number))||n.round(a)!=a||NaN==a||a==ba?l:h};var zd=function(a){var b=W.gaGlobal;a&&!b&&(W.gaGlobal=b={});return b},Ad=function(){var a=zd(h).hid;a==j&&(a=Da(),zd(h).hid=a);return a},Dd=function(a){a.set(Kb,Ad());var b=zd();if(b&&b.dh==a.get(O)){var c=b.sid;c&&("0"==c&&I(112),a.set(Zb,c),a.get(Sb)&&a.set(Wb,c));b=b.vid;a.get(Sb)&&b&&(b=b[z]("."),1*b[1]||I(112),a.set(Q,1*b[0]),a.set(Vb,1*b[1]))}};var Ed,Fd=function(a,b,c){var d=a.c(bb,""),e=a.c(P,"/"),f=a.b(cb,0);a=a.c(Wa,"");X(b,c,e,d,a,f)},Xc=function(a){var b=a.c(bb,"");a.b(O,1);var c=a.c(P,"/"),d=a.c(Wa,"");X("__utma",cd(a),c,b,d,a.get(cb));X("__utmb",dd(a),c,b,d,a.get(db));X("__utmc",""+a.b(O,1),c,b,d);var e=hd(a,h);e?X("__utmz",e,c,b,d,a.get(eb)):X("__utmz","",c,b,"",-1);(e=fd(a,l))?X("__utmv",e,c,b,d,a.get(cb)):X("__utmv","",c,b,"",-1)},Wc=function(a){var b=a.b(O,1);if(!bd(a,$c(b,pd("__utma"))))return a.set(Ub,h),l;var c=!ed(a,$c(b,
pd("__utmb")));a.set(bc,c);id(a,$c(b,pd("__utmz")));gd(a,$c(b,pd("__utmv")));Ed=!c;return h},Gd=function(a){!Ed&&!(0<pd("__utmb")[x])&&(X("__utmd","1",a.c(P,"/"),a.c(bb,""),a.c(Wa,""),1E4),0==pd("__utmd")[x]&&a[sa]())};var Jd=function(a){a.get(Q)==g?Hd(a):a.get(Ub)&&!a.get(Mc)?Hd(a):a.get(bc)&&Id(a)},Kd=function(a){a.get(hc)&&!a.get(ac)&&(Id(a),a.set(fc,a.get($b)))},Hd=function(a){var b=a.get(ab);a.set(Sb,h);a.set(Q,Da()^td(a)&2147483647);a.set(Tb,"");a.set(Vb,b);a.set(Wb,b);a.set(Zb,b);a.set($b,1);a.set(ac,h);a.set(cc,0);a.set(R,10);a.set(dc,b);a.set(Fb,[]);a.set(Ub,l);a.set(bc,l)},Id=function(a){a.set(Wb,a.get(Zb));a.set(Zb,a.get(ab));a.z($b);a.set(ac,h);a.set(cc,0);a.set(R,10);a.set(dc,a.get(ab));a.set(bc,l)};var Ld="daum:q eniro:search_word naver:query pchome:q images.google:q google:q yahoo:p yahoo:q msn:q bing:q aol:query aol:q lycos:q lycos:query ask:q netscape:query cnn:query about:terms mamma:q voila:rdata virgilio:qs live:q baidu:wd alice:qs yandex:text najdi:q seznam:q rakuten:qt biglobe:q goo.ne:MT wp:szukaj onet:qt yam:k kvasir:q ozu:q terra:query rambler:query conduit:q babylon:q search-results:q avg:q comcast:q incredimail:q startsiden:q go.mail.ru:q search.centrum.cz:q".split(" "),Sd=function(a){if(a.get(kb)&&
!a.get(Mc)){for(var b=!G(a.get(ic))||!G(a.get(nc))||!G(a.get(S))||!G(a.get(lc)),c={},d=0;d<Md[x];d++){var e=Md[d];c[e]=a.get(e)}(d=a.get(rc))?(I(149),e=new Ja,Ma(e,d),d=e):d=La(K[A][wa],a.get(gb)).d;if(!("1"==Ia(d.get(a.get(ub)))&&b)){var f=d,k=function(b,c){c=c||"-";var d=Ia(f.get(a.get(b)));return d&&"-"!=d?J(d):c},d=Ia(f.get(a.get(nb)))||"-",e=Ia(f.get(a.get(qb)))||"-",m=Ia(f.get(a.get(pb)))||"-",t=Ia(f.get("gclsrc"))||"-",u=Ia(f.get("dclid"))||"-",Za=k(ob,"(not set)"),Na=k(rb,"(not set)"),mb=
k(sb),k=k(tb);if(G(d)&&G(m)&&G(u)&&G(e))d=l;else{var Xb=!G(m)&&!G(t),Xb=G(e)&&(!G(u)||Xb),Bd=G(mb);if(Xb||Bd){var ga=Nd(a),ga=La(ga,h);if((ga=Od(a,ga))&&!G(ga[1]&&!ga[2]))Xb&&(e=ga[0]),Bd&&(mb=ga[1])}Pd(a,d,e,m,t,u,Za,Na,mb,k);d=h}d=d||Qd(a);!d&&(!b&&a.get(ac))&&(Pd(a,g,"(direct)",g,g,g,"(direct)","(none)",g,g),d=h);if(d&&(a.set(hc,Rd(a,c)),b="(direct)"==a.get(nc)&&"(direct)"==a.get(jc)&&"(none)"==a.get(oc),a.get(hc)||a.get(ac)&&!b))a.set(ec,a.get(ab)),a.set(fc,a.get($b)),a.z(gc)}}},Qd=function(a){var b=
Nd(a),c=La(b,h);if(!(b!=g&&b!=j&&""!=b&&"0"!=b&&"-"!=b&&0<=b[r]("://"))||c&&-1<c[v][r]("google")&&c.d.contains("q")&&"cse"==c[qa])return l;if((b=Od(a,c))&&!b[2])return Pd(a,g,b[0],g,g,g,"(organic)","organic",b[1],g),h;if(b||!a.get(ac))return l;a:{for(var b=a.get(Bb),d=Ka(c[v]),e=0;e<b[x];++e)if(-1<d[r](b[e])){a=l;break a}Pd(a,g,d,g,g,g,"(referral)","referral",g,"/"+c[qa]);a=h}return a},Od=function(a,b){for(var c=a.get(zb),d=0;d<c[x];++d){var e=c[d][z](":");if(-1<b[v][r](e[0][E]())){var f=b.d.get(e[1]);
if(f&&(f=L(f),!f&&-1<b[v][r]("google.")&&(f="(not provided)"),!e[3]||-1<b.url[r](e[3]))){a:{for(var c=f,d=a.get(Ab),c=J(c)[E](),k=0;k<d[x];++k)if(c==d[k]){c=h;break a}c=l}return[e[2]||e[0],f,c]}}}return j},Pd=function(a,b,c,d,e,f,k,m,t,u){a.set(ic,b);a.set(nc,c);a.set(S,d);a.set(kc,e);a.set(lc,f);a.set(jc,k);a.set(oc,m);a.set(pc,t);a.set(qc,u)},Md=[jc,ic,S,lc,nc,oc,pc,qc],Rd=function(a,b){function c(a){a=(""+a)[z]("+")[D]("%20");return a=a[z](" ")[D]("%20")}function d(c){var d=""+(a.get(c)||"");c=
""+(b[c]||"");return 0<d[x]&&d==c}if(d(S)||d(lc))return I(131),l;for(var e=0;e<Md[x];e++){var f=Md[e],k=b[f]||"-",f=a.get(f)||"-";if(c(k)!=c(f))return h}return l},Td=RegExp(/^https:\/\/(www\.)?google(\.com?)?(\.[a-z]{2}t?)?\/?$/i),Nd=function(a){a=Pa(a.get(Jb),a.get(P));try{if(Td[fa](a))return I(136),a+"?q="}catch(b){I(145)}return a};var Ud,Vd,Wd=function(a){Ud=a.c(S,"");Vd=a.c(kc,"")},Xd=function(a){var b=a.c(S,""),c=a.c(kc,"");b!=Ud&&(-1<c[r]("ds")?a.set(mc,g):!G(Ud)&&-1<Vd[r]("ds")&&a.set(mc,Ud))};var Zd=function(a){Yd(a,K[A][wa])?(a.set(Mc,h),I(12)):a.set(Mc,l)},Yd=function(a,b){if(!a.get(fb))return l;var c=La(b,a.get(gb)),d=L(c.d.get("__utma")),e=L(c.d.get("__utmb")),f=L(c.d.get("__utmc")),k=L(c.d.get("__utmx")),m=L(c.d.get("__utmz")),t=L(c.d.get("__utmv")),c=L(c.d.get("__utmk"));if(Yc(""+d+e+f+k+m+t)!=c){d=J(d);e=J(e);f=J(f);k=J(k);f=$d(d+e+f+k,m,t,c);if(!f)return l;m=f[0];t=f[1]}if(!bd(a,d,h))return l;ed(a,e,h);id(a,m,h);gd(a,t,h);ae(a,k,h);return h},ce=function(a,b,c){var d;d=cd(a)||"-";
var e=dd(a)||"-",f=""+a.b(O,1)||"-",k=be(a)||"-",m=hd(a,l)||"-";a=fd(a,l)||"-";var t=Yc(""+d+e+f+k+m+a),u=[];u[p]("__utma="+d);u[p]("__utmb="+e);u[p]("__utmc="+f);u[p]("__utmx="+k);u[p]("__utmz="+m);u[p]("__utmv="+a);u[p]("__utmk="+t);d=u[D]("&");if(!d)return b;e=b[r]("#");if(c)return 0>e?b+"#"+d:b+"&"+d;c="";f=b[r]("?");0<e&&(c=b[C](e),b=b[C](0,e));return 0>f?b+"?"+d+c:b+"&"+d+c},$d=function(a,b,c,d){for(var e=0;3>e;e++){for(var f=0;3>f;f++){if(d==Yc(a+b+c))return I(127),[b,c];var k=b[q](/ /g,"%20"),
m=c[q](/ /g,"%20");if(d==Yc(a+k+m))return I(128),[k,m];k=k[q](/\+/g,"%20");m=m[q](/\+/g,"%20");if(d==Yc(a+k+m))return I(129),[k,m];try{var t=b[na]("utmctr=(.*?)(?:\\|utm|$)");if(t&&2==t[x]&&(k=b[q](t[1],H(J(t[1]))),d==Yc(a+k+c)))return I(139),[k,c]}catch(u){}b=J(b)}c=J(c)}};var de="|",fe=function(a,b,c,d,e,f,k,m,t){var u=ee(a,b);u||(u={},a.get(Cb)[p](u));u.id_=b;u.affiliation_=c;u.total_=d;u.tax_=e;u.shipping_=f;u.city_=k;u.state_=m;u.country_=t;u.items_=u.items_||[];return u},ge=function(a,b,c,d,e,f,k){a=ee(a,b)||fe(a,b,"",0,0,0,"","","");var m;a:{if(a&&a.items_){m=a.items_;for(var t=0;t<m[x];t++)if(m[t].sku_==c){m=m[t];break a}}m=j}t=m||{};t.transId_=b;t.sku_=c;t.name_=d;t.category_=e;t.price_=f;t.quantity_=k;m||a.items_[p](t);return t},ee=function(a,b){for(var c=
a.get(Cb),d=0;d<c[x];d++)if(c[d].id_==b)return c[d];return j};var he,ie=function(a){if(!he){var b;b=K[A].hash;var c=W[s],d=/^#?gaso=([^&]*)/;if(c=(b=(b=b&&b[na](d)||c&&c[na](d))?b[1]:L(pd("GASO")))&&b[na](/^(?:[|!]([-0-9a-z.]{1,40})[|!])?([-.\w]{10,1200})$/i))Fd(a,"GASO",""+b),M._gasoDomain=a.get(bb),M._gasoCPath=a.get(P),a=c[1],Ha("https://www.google.com/analytics/web/inpage/pub/inpage.js?"+(a?"prefix="+a+"&":"")+Da(),"_gasojs");he=h}};var ae=function(a,b,c){c&&(b=J(b));c=a.b(O,1);b=b[z](".");!(2>b[x])&&/^\d+$/[fa](b[0])&&(b[0]=""+c,Fd(a,"__utmx",b[D](".")))},be=function(a,b){var c=$c(a.get(O),pd("__utmx"));"-"==c&&(c="");return b?H(c):c};var ke=function(a,b){var c=n.min(a.b(Dc,0),100);if(a.b(Q,0)%100>=c)return l;a:{if(c=(c=W.performance||W.webkitPerformance)&&c.timing){var d=c.navigationStart;if(0==d)I(133);else{c=[c.loadEventStart-d,c.domainLookupEnd-c.domainLookupStart,c.connectEnd-c.connectStart,c.responseStart-c.requestStart,c.responseEnd-c.responseStart,c.fetchStart-d,c.domInteractive-d,c.domContentLoadedEventStart-d];break a}}c=g}c||(W.top!=W?c=g:(d=(c=W.external)&&c.onloadT,c&&!c.isValidLoadTime&&(d=g),2147483648<d&&(d=g),
0<d&&c.setPageReadyTime(),c=d==g?g:[d]));if(c==g)return l;d=c[0];if(d==g||d==ba||isNaN(d))return l;if(0<d){a:{for(d=1;d<c[x];d++)if(isNaN(c[d])||c[d]==ba||0>c[d]){d=l;break a}d=h}d?b(je(c)):b(je(c[ia](0,1)))}else Fa(W,"load",function(){ke(a,b)},l);return h},me=function(a,b,c,d){var e=new yd;e.f(14,90,b[C](0,64));e.f(14,91,a[C](0,64));e.f(14,92,""+le(c));d!=g&&e.f(14,93,d[C](0,64));e.o(14,90,c);return e},le=function(a){return isNaN(a)||0>a?0:5E3>a?10*n[ka](a/10):5E4>a?100*n[ka](a/100):41E5>a?1E3*n[ka](a/
1E3):41E5},je=function(a){for(var b=new yd,c=0;c<a[x];c++)b.f(14,c+1,""+le(a[c])),b.o(14,c+1,a[c]);return b};var U=function(a,b,c){function d(a){return function(b){if((b=b.get(Nc)[a])&&b[x])for(var c={type:a,target:e,stopPropagation:function(){throw"aborted";}},d=0;d<b[x];d++)b[d].call(e,c)}}var e=this;this.a=new Zc;this.get=function(a){return this.a.get(a)};this.set=function(a,b,c){this.a.set(a,b,c)};this.set(Wa,b||"UA-XXXXX-X");this.set($a,a||"");this.set(Ya,c||"");this.set(ab,n.round((new Date).getTime()/1E3));this.set(P,"/");this.set(cb,63072E6);this.set(eb,15768E6);this.set(db,18E5);this.set(fb,l);
this.set(yb,50);this.set(gb,l);this.set(hb,h);this.set(ib,h);this.set(jb,h);this.set(kb,h);this.set(lb,h);this.set(ob,"utm_campaign");this.set(nb,"utm_id");this.set(pb,"gclid");this.set(qb,"utm_source");this.set(rb,"utm_medium");this.set(sb,"utm_term");this.set(tb,"utm_content");this.set(ub,"utm_nooverride");this.set(vb,100);this.set(Dc,1);this.set(Ec,l);this.set(wb,"/__utm.gif");this.set(xb,1);this.set(Cb,[]);this.set(Fb,[]);this.set(zb,Ld[ia](0));this.set(Ab,[]);this.set(Bb,[]);this.B("auto");this.set(Jb,
K.referrer);a=this.a;try{var f=La(K[A][wa],l),k=da(Ia(f.d.get("utm_referrer")))||"";k&&a.set(Jb,k);var m=W.gaData&&W.gaData.expId;m||(m=da(L(f.d.get("utm_expid")))||"");m&&a.set(Oc,""+m)}catch(t){I(146)}this.set(Nc,{hit:[],load:[]});this.a.g("0",Zd);this.a.g("1",Wd);this.a.g("2",Jd);this.a.g("3",Sd);this.a.g("4",Xd);this.a.g("5",Kd);this.a.g("6",d("load"));this.a.g("7",ie);this.a.e("A",kd);this.a.e("B",md);this.a.e("C",Jd);this.a.e("D",jd);this.a.e("E",Tc);this.a.e("F",ne);this.a.e("G",Gd);this.a.e("H",
nd);this.a.e("I",ud);this.a.e("J",Dd);this.a.e("K",d("hit"));this.a.e("L",oe);this.a.e("M",pe);0===this.get(ab)&&I(111);this.a.T();this.H=g};F=U[y];F.m=function(){var a=this.get(Db);a||(a=new yd,this.set(Db,a));return a};F.La=function(a){for(var b in a){var c=a[b];a.hasOwnProperty(b)&&this.set(b,c,h)}};F.K=function(a){if(this.get(Ec))return l;var b=this,c=ke(this.a,function(c){b.set(Hb,a,h);b.t(c)});this.set(Ec,c);return c};
F.Fa=function(a){a&&Ba(a)?(I(13),this.set(Hb,a,h)):"object"===typeof a&&a!==j&&this.La(a);this.H=a=this.get(Hb);this.a.j("page");this.K(a)};F.F=function(a,b,c,d,e){if(""==a||(!wd(a)||""==b||!wd(b))||c!=g&&!wd(c)||d!=g&&!xd(d))return l;this.set(wc,a,h);this.set(xc,b,h);this.set(yc,c,h);this.set(zc,d,h);this.set(vc,!!e,h);this.a.j("event");return h};
F.Ha=function(a,b,c,d,e){var f=this.a.b(Dc,0);1*e===e&&(f=e);if(this.a.b(Q,0)%100>=f)return l;c=1*(""+c);if(""==a||(!wd(a)||""==b||!wd(b)||!xd(c)||isNaN(c)||0>c||0>f||100<f)||d!=g&&(""==d||!wd(d)))return l;this.t(me(a,b,c,d));return h};F.Ga=function(a,b,c,d){if(!a||!b)return l;this.set(Ac,a,h);this.set(Bc,b,h);this.set(Cc,c||K[A][wa],h);d&&this.set(Hb,d,h);this.a.j("social");return h};F.Ea=function(){this.set(Dc,10);this.K(this.H)};F.Ia=function(){this.a.j("trans")};
F.t=function(a){this.set(Eb,a,h);this.a.j("event")};F.ia=function(a){this.v();var b=this;return{_trackEvent:function(c,d,e){I(91);b.F(a,c,d,e)}}};F.ma=function(a){return this.get(a)};F.xa=function(a,b){if(a)if(Ba(a))this.set(a,b);else if("object"==typeof a)for(var c in a)a.hasOwnProperty(c)&&this.set(c,a[c])};F.addEventListener=function(a,b){var c=this.get(Nc)[a];c&&c[p](b)};F.removeEventListener=function(a,b){for(var c=this.get(Nc)[a],d=0;c&&d<c[x];d++)if(c[d]==b){c.splice(d,1);break}};F.qa=function(){return"5.3.8"};
F.B=function(a){this.get(hb);a="auto"==a?Ka(K.domain):!a||"-"==a||"none"==a?"":a[E]();this.set(bb,a)};F.va=function(a){this.set(hb,!!a)};F.na=function(a,b){return ce(this.a,a,b)};F.link=function(a,b){if(this.a.get(fb)&&a){var c=ce(this.a,a,b);K[A].href=c}};F.ua=function(a,b){this.a.get(fb)&&(a&&a.action)&&(a.action=ce(this.a,a.action,b))};
F.za=function(){this.v();var a=this.a,b=K.getElementById?K.getElementById("utmtrans"):K.utmform&&K.utmform.utmtrans?K.utmform.utmtrans:j;if(b&&b[ma]){a.set(Cb,[]);for(var b=b[ma][z]("UTM:"),c=0;c<b[x];c++){b[c]=Ca(b[c]);for(var d=b[c][z](de),e=0;e<d[x];e++)d[e]=Ca(d[e]);"T"==d[0]?fe(a,d[1],d[2],d[3],d[4],d[5],d[6],d[7],d[8]):"I"==d[0]&&ge(a,d[1],d[2],d[3],d[4],d[5],d[6])}}};F.$=function(a,b,c,d,e,f,k,m){return fe(this.a,a,b,c,d,e,f,k,m)};F.Y=function(a,b,c,d,e,f){return ge(this.a,a,b,c,d,e,f)};
F.Aa=function(a){de=a||"|"};F.ea=function(){this.set(Cb,[])};F.wa=function(a,b,c,d){var e=this.a;if(0>=a||a>e.get(yb))a=l;else if(!b||!c||128<b[x]+c[x])a=l;else{1!=d&&2!=d&&(d=3);var f={};ea(f,b);f.value=c;f.scope=d;e.get(Fb)[a]=f;a=h}a&&this.a.n();return a};F.ka=function(a){this.a.get(Fb)[a]=g;this.a.n()};F.ra=function(a){return(a=this.a.get(Fb)[a])&&1==a[ta]?a[ma]:g};F.Ca=function(a,b,c){this.m().f(a,b,c)};F.Da=function(a,b,c){this.m().o(a,b,c)};F.sa=function(a,b){return this.m().getKey(a,b)};
F.ta=function(a,b){return this.m().N(a,b)};F.fa=function(a){this.m().L(a)};F.ga=function(a){this.m().M(a)};F.ja=function(){return new yd};F.W=function(a){a&&this.get(Ab)[p](a[E]())};F.ba=function(){this.set(Ab,[])};F.X=function(a){a&&this.get(Bb)[p](a[E]())};F.ca=function(){this.set(Bb,[])};F.Z=function(a,b,c,d,e){if(a&&b){a=[a,b[E]()][D](":");if(d||e)a=[a,d,e][D](":");d=this.get(zb);d.splice(c?0:d[x],0,a)}};F.da=function(){this.set(zb,[])};
F.ha=function(a){this.a[ja]();var b=this.get(P),c=be(this.a);this.set(P,a);this.a.n();ae(this.a,c);this.set(P,b)};F.ya=function(a,b){if(0<a&&5>=a&&Ba(b)&&""!=b){var c=this.get(Fc)||[];c[a]=b;this.set(Fc,c)}};F.V=function(a){a=""+a;if(a[na](/^[A-Za-z0-9]{1,5}$/)){var b=this.get(Ic)||[];b[p](a);this.set(Ic,b)}};F.v=function(){this.a[ja]()};F.Ba=function(a){a&&""!=a&&(this.set(Tb,a),this.a.j("var"))};var ne=function(a){"trans"!==a.get(sc)&&500<=a.b(cc,0)&&a[sa]();if("event"===a.get(sc)){var b=(new Date).getTime(),c=a.b(dc,0),d=a.b(Zb,0),c=n[ka](1*((b-(c!=d?c:1E3*c))/1E3));0<c&&(a.set(dc,b),a.set(R,n.min(10,a.b(R,0)+c)));0>=a.b(R,0)&&a[sa]()}},pe=function(a){"event"===a.get(sc)&&a.set(R,n.max(0,a.b(R,10)-1))};var qe=function(){var a=[];this.add=function(b,c,d){d&&(c=H(""+c));a[p](b+"="+c)};this.toString=function(){return a[D]("&")}},re=function(a,b){(b||2!=a.get(xb))&&a.z(cc)},se=function(a,b){b.add("utmwv","5.3.8");b.add("utms",a.get(cc));b.add("utmn",Da());var c=K[A].hostname;G(c)||b.add("utmhn",c,h);c=a.get(vb);100!=c&&b.add("utmsp",c,h)},te=function(a,b){b.add("utmac",Ca(a.get(Wa)));a.get(Oc)&&b.add("utmxkey",a.get(Oc),h);a.get(vc)&&b.add("utmni",1);var c=a.get(Ic);c&&0<c[x]&&b.add("utmdid",c[D]("."));
var c=function(a,b){b&&d[p](a+"="+b+";")},d=[];c("__utma",cd(a));c("__utmz",hd(a,l));c("__utmv",fd(a,h));c("__utmx",be(a));b.add("utmcc",d[D]("+"),h);a.get(Xa)!==l&&(a.get(Xa)||M.w)&&b.add("aip",1);b.add("utmu",od.Xa())},ue=function(a,b){for(var c=a.get(Fc)||[],d=[],e=1;e<c[x];e++)c[e]&&d[p](e+":"+H(c[e][q](/%/g,"%25")[q](/:/g,"%3A")[q](/,/g,"%2C")));d[x]&&b.add("utmpg",d[D](","))},ve=function(a,b){a.get(ib)&&(b.add("utmcs",a.get(Qb),h),b.add("utmsr",a.get(Lb)),a.get(Rb)&&b.add("utmvp",a.get(Rb)),
b.add("utmsc",a.get(Mb)),b.add("utmul",a.get(Pb)),b.add("utmje",a.get(Nb)),b.add("utmfl",a.get(Ob),h))},we=function(a,b){a.get(lb)&&a.get(Ib)&&b.add("utmdt",a.get(Ib),h);b.add("utmhid",a.get(Kb));b.add("utmr",Pa(a.get(Jb),a.get(P)),h);b.add("utmp",H(a.get(Hb),h),h)},xe=function(a,b){for(var c=a.get(Db),d=a.get(Eb),e=a.get(Fb)||[],f=0;f<e[x];f++){var k=e[f];k&&(c||(c=new yd),c.f(8,f,k[s]),c.f(9,f,k[ma]),3!=k[ta]&&c.f(11,f,""+k[ta]))}!G(a.get(wc))&&!G(a.get(xc),h)&&(c||(c=new yd),c.f(5,1,a.get(wc)),
c.f(5,2,a.get(xc)),e=a.get(yc),e!=g&&c.f(5,3,e),e=a.get(zc),e!=g&&c.o(5,1,e));c?b.add("utme",c.Qa(d),h):d&&b.add("utme",d.A(),h)},ye=function(a,b,c){var d=new qe;re(a,c);se(a,d);d.add("utmt","tran");d.add("utmtid",b.id_,h);d.add("utmtst",b.affiliation_,h);d.add("utmtto",b.total_,h);d.add("utmttx",b.tax_,h);d.add("utmtsp",b.shipping_,h);d.add("utmtci",b.city_,h);d.add("utmtrg",b.state_,h);d.add("utmtco",b.country_,h);xe(a,d);ve(a,d);we(a,d);(b=a.get(Gb))&&d.add("utmcu",b,h);c||(ue(a,d),te(a,d));return d[w]()},
ze=function(a,b,c){var d=new qe;re(a,c);se(a,d);d.add("utmt","item");d.add("utmtid",b.transId_,h);d.add("utmipc",b.sku_,h);d.add("utmipn",b.name_,h);d.add("utmiva",b.category_,h);d.add("utmipr",b.price_,h);d.add("utmiqt",b.quantity_,h);xe(a,d);ve(a,d);we(a,d);(b=a.get(Gb))&&d.add("utmcu",b,h);c||(ue(a,d),te(a,d));return d[w]()},Ae=function(a,b){var c=a.get(sc);if("page"==c)c=new qe,re(a,b),se(a,c),xe(a,c),ve(a,c),we(a,c),b||(ue(a,c),te(a,c)),c=[c[w]()];else if("event"==c)c=new qe,re(a,b),se(a,c),
c.add("utmt","event"),xe(a,c),ve(a,c),we(a,c),b||(ue(a,c),te(a,c)),c=[c[w]()];else if("var"==c)c=new qe,re(a,b),se(a,c),c.add("utmt","var"),!b&&te(a,c),c=[c[w]()];else if("trans"==c)for(var c=[],d=a.get(Cb),e=0;e<d[x];++e){c[p](ye(a,d[e],b));for(var f=d[e].items_,k=0;k<f[x];++k)c[p](ze(a,f[k],b))}else"social"==c?b?c=[]:(c=new qe,re(a,b),se(a,c),c.add("utmt","social"),c.add("utmsn",a.get(Ac),h),c.add("utmsa",a.get(Bc),h),c.add("utmsid",a.get(Cc),h),xe(a,c),ve(a,c),we(a,c),ue(a,c),te(a,c),c=[c[w]()]):
"feedback"==c?b?c=[]:(c=new qe,re(a,b),se(a,c),c.add("utmt","feedback"),c.add("utmfbid",a.get(Gc),h),c.add("utmfbpr",a.get(Hc),h),xe(a,c),ve(a,c),we(a,c),ue(a,c),te(a,c),c=[c[w]()]):c=[];return c},oe=function(a){var b,c=a.get(xb),d=a.get(uc),e=d&&d.Ua,f=0;if(0==c||2==c){var k=a.get(wb)+"?";b=Ae(a,h);for(var m=0,t=b[x];m<t;m++)Sa(b[m],e,k,h),f++}if(1==c||2==c){b=Ae(a);m=0;for(t=b[x];m<t;m++)try{Sa(b[m],e),f++}catch(u){u&&Ra(u[s],g,u.message)}}d&&(d.q=f)};var Be=function(){return"https:"==K[A][B]||M.G?"https://ssl.google-analytics.com":"http://www.google-analytics.com"},Ce=function(a){ea(this,"len");this.message=a+"-8192"},De=function(a){ea(this,"ff2post");this.message=a+"-2036"},Sa=function(a,b,c,d){b=b||Ea;if(d||2036>=a[x]){var e=b;b=c||Be()+"/__utm.gif?";var f=new Image(1,1);f.src=b+a;f.onload=function(){f.onload=j;f.onerror=j;e()};f.onerror=function(){f.onload=j;f.onerror=j;e()}}else if(8192>=a[x]){var k=b;if(0<=W[ya].userAgent[r]("Firefox")&&
![].reduce)throw new De(a[x]);var m;b=Be()+"/p/__utm.gif";if(c=W.XDomainRequest)m=new c,m.open("POST",b);else if(c=W.XMLHttpRequest)c=new c,"withCredentials"in c&&(m=c,m.open("POST",b,h),m.setRequestHeader("Content-Type","text/plain"));m?(m.onreadystatechange=function(){4==m.readyState&&(k(),m=j)},m.send(a),b=h):b=g;b||Ee(a,k)}else throw new Ce(a[x]);},Ee=function(a,b){if(K.body){a=aa(a);try{var c=K[pa]('<iframe name="'+a+'"></iframe>')}catch(d){c=K[pa]("iframe"),ea(c,a)}c.height="0";c.width="0";
c.style.display="none";c.style.visibility="hidden";var e=K[A],e=Be()+"/u/post_iframe.html#"+aa(e[B]+"//"+e[v]+"/favicon.ico"),f=function(){c.src="";c.parentNode&&c.parentNode.removeChild(c)};Fa(W,"beforeunload",f);var k=l,m=0,t=function(){if(!k){try{if(9<m||c.contentWindow[A][v]==K[A][v]){k=h;f();Ga(W,"beforeunload",f);b();return}}catch(a){}m++;ca(t,200)}};Fa(c,"load",t);K.body.appendChild(c);c.src=e}else ca(function(){Ee(a,b)},100)};var $=function(){this.G=this.w=l;this.C={};this.D=[];this.U=0;this.S=[["www.google-analytics.com","","/plugins/"]];this._gasoCPath=this._gasoDomain=g;var a=function(a,c,d){T($[y],a,c,d)};a("_createTracker",$[y].r,55);a("_getTracker",$[y].oa,0);a("_getTrackerByName",$[y].u,51);a("_getTrackers",$[y].pa,130);a("_anonymizeIp",$[y].aa,16);a("_forceSSL",$[y].la,125);a("_getPlugin",Pc,120);a=function(a,c,d){T(U[y],a,c,d)};Qc("_getName",$a,58);Qc("_getAccount",Wa,64);Qc("_visitCode",Q,54);Qc("_getClientInfo",
ib,53,1);Qc("_getDetectTitle",lb,56,1);Qc("_getDetectFlash",jb,65,1);Qc("_getLocalGifPath",wb,57);Qc("_getServiceMode",xb,59);V("_setClientInfo",ib,66,2);V("_setAccount",Wa,3);V("_setNamespace",Ya,48);V("_setAllowLinker",fb,11,2);V("_setDetectFlash",jb,61,2);V("_setDetectTitle",lb,62,2);V("_setLocalGifPath",wb,46,0);V("_setLocalServerMode",xb,92,g,0);V("_setRemoteServerMode",xb,63,g,1);V("_setLocalRemoteServerMode",xb,47,g,2);V("_setSampleRate",vb,45,1);V("_setCampaignTrack",kb,36,2);V("_setAllowAnchor",
gb,7,2);V("_setCampNameKey",ob,41);V("_setCampContentKey",tb,38);V("_setCampIdKey",nb,39);V("_setCampMediumKey",rb,40);V("_setCampNOKey",ub,42);V("_setCampSourceKey",qb,43);V("_setCampTermKey",sb,44);V("_setCampCIdKey",pb,37);V("_setCookiePath",P,9,0);V("_setMaxCustomVariables",yb,0,1);V("_setVisitorCookieTimeout",cb,28,1);V("_setSessionCookieTimeout",db,26,1);V("_setCampaignCookieTimeout",eb,29,1);V("_setReferrerOverride",Jb,49);V("_setSiteSpeedSampleRate",Dc,132);a("_trackPageview",U[y].Fa,1);a("_trackEvent",
U[y].F,4);a("_trackPageLoadTime",U[y].Ea,100);a("_trackSocial",U[y].Ga,104);a("_trackTrans",U[y].Ia,18);a("_sendXEvent",U[y].t,78);a("_createEventTracker",U[y].ia,74);a("_getVersion",U[y].qa,60);a("_setDomainName",U[y].B,6);a("_setAllowHash",U[y].va,8);a("_getLinkerUrl",U[y].na,52);a("_link",U[y].link,101);a("_linkByPost",U[y].ua,102);a("_setTrans",U[y].za,20);a("_addTrans",U[y].$,21);a("_addItem",U[y].Y,19);a("_clearTrans",U[y].ea,105);a("_setTransactionDelim",U[y].Aa,82);a("_setCustomVar",U[y].wa,
10);a("_deleteCustomVar",U[y].ka,35);a("_getVisitorCustomVar",U[y].ra,50);a("_setXKey",U[y].Ca,83);a("_setXValue",U[y].Da,84);a("_getXKey",U[y].sa,76);a("_getXValue",U[y].ta,77);a("_clearXKey",U[y].fa,72);a("_clearXValue",U[y].ga,73);a("_createXObj",U[y].ja,75);a("_addIgnoredOrganic",U[y].W,15);a("_clearIgnoredOrganic",U[y].ba,97);a("_addIgnoredRef",U[y].X,31);a("_clearIgnoredRef",U[y].ca,32);a("_addOrganic",U[y].Z,14);a("_clearOrganic",U[y].da,70);a("_cookiePathCopy",U[y].ha,30);a("_get",U[y].ma,
106);a("_set",U[y].xa,107);a("_addEventListener",U[y].addEventListener,108);a("_removeEventListener",U[y].removeEventListener,109);a("_addDevId",U[y].V);a("_getPlugin",Pc,122);a("_setPageGroup",U[y].ya,126);a("_trackTiming",U[y].Ha,124);a("_initData",U[y].v,2);a("_setVar",U[y].Ba,22);V("_setSessionTimeout",db,27,3);V("_setCookieTimeout",eb,25,3);V("_setCookiePersistence",cb,24,1);a("_setAutoTrackOutbound",Ea,79);a("_setTrackOutboundSubdomains",Ea,81);a("_setHrefExamineLimit",Ea,80)};F=$[y];
F.oa=function(a,b){return this.r(a,g,b)};F.r=function(a,b,c){b&&I(23);c&&I(67);b==g&&(b="~"+M.U++);a=new U(b,a,c);M.C[b]=a;M.D[p](a);return a};F.u=function(a){a=a||"";return M.C[a]||M.r(g,a)};F.pa=function(){return M.D[ia](0)};F.aa=function(){this.w=h};F.la=function(){this.G=h};var Fe=function(a){if("prerender"==K.webkitVisibilityState)return l;a();return h};var M=new $;var Ge=W._gat;Ge&&Aa(Ge._getTracker)?M=Ge:W._gat=M;var Z=new Y;var He=function(){var a=W._gaq,b=l;if(a&&Aa(a[p])&&(b="[object Array]"==Object[y][w].call(Object(a)),!b)){Z=a;return}W._gaq=Z;b&&Z[p][xa](Z,a)};if(!Fe(He)){I(123);var Ie=l,Je=function(){!Ie&&Fe(He)&&(Ie=h,Ga(K,"webkitvisibilitychange",Je))};Fa(K,"webkitvisibilitychange",Je)};function Yc(a){var b=1,c=0,d;if(a){b=0;for(d=a[x]-1;0<=d;d--)c=a.charCodeAt(d),b=(b<<6&268435455)+c+(c<<14),c=b&266338304,b=0!=c?b^c>>21:b}return b};})();

View File

@@ -0,0 +1,171 @@
/*!
* Note: While Microsoft is not the author of this file, Microsoft is
* offering you a license subject to the terms of the Microsoft Software
* License Terms for Microsoft ASP.NET Model View Controller 3.
* Microsoft reserves all other rights. The notices below are provided
* for informational purposes only and are not the license terms under
* which Microsoft distributed this file.
*
* jQuery JavaScript Library v1.4.4
* http://jquery.com/
*
* Copyright 2010, John Resig
*
* Includes Sizzle.js
* http://sizzlejs.com/
* Copyright 2010, The Dojo Foundation
*
* Date: Thu Nov 11 19:04:53 2010 -0500
*/
(function(E,B){function ka(a,b,d){if(d===B&&a.nodeType===1){d=a.getAttribute("data-"+b);if(typeof d==="string"){try{d=d==="true"?true:d==="false"?false:d==="null"?null:!c.isNaN(d)?parseFloat(d):Ja.test(d)?c.parseJSON(d):d}catch(e){}c.data(a,b,d)}else d=B}return d}function U(){return false}function ca(){return true}function la(a,b,d){d[0].type=a;return c.event.handle.apply(b,d)}function Ka(a){var b,d,e,f,h,l,k,o,x,r,A,C=[];f=[];h=c.data(this,this.nodeType?"events":"__events__");if(typeof h==="function")h=
h.events;if(!(a.liveFired===this||!h||!h.live||a.button&&a.type==="click")){if(a.namespace)A=RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)");a.liveFired=this;var J=h.live.slice(0);for(k=0;k<J.length;k++){h=J[k];h.origType.replace(X,"")===a.type?f.push(h.selector):J.splice(k--,1)}f=c(a.target).closest(f,a.currentTarget);o=0;for(x=f.length;o<x;o++){r=f[o];for(k=0;k<J.length;k++){h=J[k];if(r.selector===h.selector&&(!A||A.test(h.namespace))){l=r.elem;e=null;if(h.preType==="mouseenter"||
h.preType==="mouseleave"){a.type=h.preType;e=c(a.relatedTarget).closest(h.selector)[0]}if(!e||e!==l)C.push({elem:l,handleObj:h,level:r.level})}}}o=0;for(x=C.length;o<x;o++){f=C[o];if(d&&f.level>d)break;a.currentTarget=f.elem;a.data=f.handleObj.data;a.handleObj=f.handleObj;A=f.handleObj.origHandler.apply(f.elem,arguments);if(A===false||a.isPropagationStopped()){d=f.level;if(A===false)b=false;if(a.isImmediatePropagationStopped())break}}return b}}function Y(a,b){return(a&&a!=="*"?a+".":"")+b.replace(La,
"`").replace(Ma,"&")}function ma(a,b,d){if(c.isFunction(b))return c.grep(a,function(f,h){return!!b.call(f,h,f)===d});else if(b.nodeType)return c.grep(a,function(f){return f===b===d});else if(typeof b==="string"){var e=c.grep(a,function(f){return f.nodeType===1});if(Na.test(b))return c.filter(b,e,!d);else b=c.filter(b,e)}return c.grep(a,function(f){return c.inArray(f,b)>=0===d})}function na(a,b){var d=0;b.each(function(){if(this.nodeName===(a[d]&&a[d].nodeName)){var e=c.data(a[d++]),f=c.data(this,
e);if(e=e&&e.events){delete f.handle;f.events={};for(var h in e)for(var l in e[h])c.event.add(this,h,e[h][l],e[h][l].data)}}})}function Oa(a,b){b.src?c.ajax({url:b.src,async:false,dataType:"script"}):c.globalEval(b.text||b.textContent||b.innerHTML||"");b.parentNode&&b.parentNode.removeChild(b)}function oa(a,b,d){var e=b==="width"?a.offsetWidth:a.offsetHeight;if(d==="border")return e;c.each(b==="width"?Pa:Qa,function(){d||(e-=parseFloat(c.css(a,"padding"+this))||0);if(d==="margin")e+=parseFloat(c.css(a,
"margin"+this))||0;else e-=parseFloat(c.css(a,"border"+this+"Width"))||0});return e}function da(a,b,d,e){if(c.isArray(b)&&b.length)c.each(b,function(f,h){d||Ra.test(a)?e(a,h):da(a+"["+(typeof h==="object"||c.isArray(h)?f:"")+"]",h,d,e)});else if(!d&&b!=null&&typeof b==="object")c.isEmptyObject(b)?e(a,""):c.each(b,function(f,h){da(a+"["+f+"]",h,d,e)});else e(a,b)}function S(a,b){var d={};c.each(pa.concat.apply([],pa.slice(0,b)),function(){d[this]=a});return d}function qa(a){if(!ea[a]){var b=c("<"+
a+">").appendTo("body"),d=b.css("display");b.remove();if(d==="none"||d==="")d="block";ea[a]=d}return ea[a]}function fa(a){return c.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:false}var t=E.document,c=function(){function a(){if(!b.isReady){try{t.documentElement.doScroll("left")}catch(j){setTimeout(a,1);return}b.ready()}}var b=function(j,s){return new b.fn.init(j,s)},d=E.jQuery,e=E.$,f,h=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]+)$)/,l=/\S/,k=/^\s+/,o=/\s+$/,x=/\W/,r=/\d/,A=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,
C=/^[\],:{}\s]*$/,J=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,w=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,I=/(?:^|:|,)(?:\s*\[)+/g,L=/(webkit)[ \/]([\w.]+)/,g=/(opera)(?:.*version)?[ \/]([\w.]+)/,i=/(msie) ([\w.]+)/,n=/(mozilla)(?:.*? rv:([\w.]+))?/,m=navigator.userAgent,p=false,q=[],u,y=Object.prototype.toString,F=Object.prototype.hasOwnProperty,M=Array.prototype.push,N=Array.prototype.slice,O=String.prototype.trim,D=Array.prototype.indexOf,R={};b.fn=b.prototype={init:function(j,
s){var v,z,H;if(!j)return this;if(j.nodeType){this.context=this[0]=j;this.length=1;return this}if(j==="body"&&!s&&t.body){this.context=t;this[0]=t.body;this.selector="body";this.length=1;return this}if(typeof j==="string")if((v=h.exec(j))&&(v[1]||!s))if(v[1]){H=s?s.ownerDocument||s:t;if(z=A.exec(j))if(b.isPlainObject(s)){j=[t.createElement(z[1])];b.fn.attr.call(j,s,true)}else j=[H.createElement(z[1])];else{z=b.buildFragment([v[1]],[H]);j=(z.cacheable?z.fragment.cloneNode(true):z.fragment).childNodes}return b.merge(this,
j)}else{if((z=t.getElementById(v[2]))&&z.parentNode){if(z.id!==v[2])return f.find(j);this.length=1;this[0]=z}this.context=t;this.selector=j;return this}else if(!s&&!x.test(j)){this.selector=j;this.context=t;j=t.getElementsByTagName(j);return b.merge(this,j)}else return!s||s.jquery?(s||f).find(j):b(s).find(j);else if(b.isFunction(j))return f.ready(j);if(j.selector!==B){this.selector=j.selector;this.context=j.context}return b.makeArray(j,this)},selector:"",jquery:"1.4.4",length:0,size:function(){return this.length},
toArray:function(){return N.call(this,0)},get:function(j){return j==null?this.toArray():j<0?this.slice(j)[0]:this[j]},pushStack:function(j,s,v){var z=b();b.isArray(j)?M.apply(z,j):b.merge(z,j);z.prevObject=this;z.context=this.context;if(s==="find")z.selector=this.selector+(this.selector?" ":"")+v;else if(s)z.selector=this.selector+"."+s+"("+v+")";return z},each:function(j,s){return b.each(this,j,s)},ready:function(j){b.bindReady();if(b.isReady)j.call(t,b);else q&&q.push(j);return this},eq:function(j){return j===
-1?this.slice(j):this.slice(j,+j+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(N.apply(this,arguments),"slice",N.call(arguments).join(","))},map:function(j){return this.pushStack(b.map(this,function(s,v){return j.call(s,v,s)}))},end:function(){return this.prevObject||b(null)},push:M,sort:[].sort,splice:[].splice};b.fn.init.prototype=b.fn;b.extend=b.fn.extend=function(){var j,s,v,z,H,G=arguments[0]||{},K=1,Q=arguments.length,ga=false;
if(typeof G==="boolean"){ga=G;G=arguments[1]||{};K=2}if(typeof G!=="object"&&!b.isFunction(G))G={};if(Q===K){G=this;--K}for(;K<Q;K++)if((j=arguments[K])!=null)for(s in j){v=G[s];z=j[s];if(G!==z)if(ga&&z&&(b.isPlainObject(z)||(H=b.isArray(z)))){if(H){H=false;v=v&&b.isArray(v)?v:[]}else v=v&&b.isPlainObject(v)?v:{};G[s]=b.extend(ga,v,z)}else if(z!==B)G[s]=z}return G};b.extend({noConflict:function(j){E.$=e;if(j)E.jQuery=d;return b},isReady:false,readyWait:1,ready:function(j){j===true&&b.readyWait--;
if(!b.readyWait||j!==true&&!b.isReady){if(!t.body)return setTimeout(b.ready,1);b.isReady=true;if(!(j!==true&&--b.readyWait>0))if(q){var s=0,v=q;for(q=null;j=v[s++];)j.call(t,b);b.fn.trigger&&b(t).trigger("ready").unbind("ready")}}},bindReady:function(){if(!p){p=true;if(t.readyState==="complete")return setTimeout(b.ready,1);if(t.addEventListener){t.addEventListener("DOMContentLoaded",u,false);E.addEventListener("load",b.ready,false)}else if(t.attachEvent){t.attachEvent("onreadystatechange",u);E.attachEvent("onload",
b.ready);var j=false;try{j=E.frameElement==null}catch(s){}t.documentElement.doScroll&&j&&a()}}},isFunction:function(j){return b.type(j)==="function"},isArray:Array.isArray||function(j){return b.type(j)==="array"},isWindow:function(j){return j&&typeof j==="object"&&"setInterval"in j},isNaN:function(j){return j==null||!r.test(j)||isNaN(j)},type:function(j){return j==null?String(j):R[y.call(j)]||"object"},isPlainObject:function(j){if(!j||b.type(j)!=="object"||j.nodeType||b.isWindow(j))return false;if(j.constructor&&
!F.call(j,"constructor")&&!F.call(j.constructor.prototype,"isPrototypeOf"))return false;for(var s in j);return s===B||F.call(j,s)},isEmptyObject:function(j){for(var s in j)return false;return true},error:function(j){throw j;},parseJSON:function(j){if(typeof j!=="string"||!j)return null;j=b.trim(j);if(C.test(j.replace(J,"@").replace(w,"]").replace(I,"")))return E.JSON&&E.JSON.parse?E.JSON.parse(j):(new Function("return "+j))();else b.error("Invalid JSON: "+j)},noop:function(){},globalEval:function(j){if(j&&
l.test(j)){var s=t.getElementsByTagName("head")[0]||t.documentElement,v=t.createElement("script");v.type="text/javascript";if(b.support.scriptEval)v.appendChild(t.createTextNode(j));else v.text=j;s.insertBefore(v,s.firstChild);s.removeChild(v)}},nodeName:function(j,s){return j.nodeName&&j.nodeName.toUpperCase()===s.toUpperCase()},each:function(j,s,v){var z,H=0,G=j.length,K=G===B||b.isFunction(j);if(v)if(K)for(z in j){if(s.apply(j[z],v)===false)break}else for(;H<G;){if(s.apply(j[H++],v)===false)break}else if(K)for(z in j){if(s.call(j[z],
z,j[z])===false)break}else for(v=j[0];H<G&&s.call(v,H,v)!==false;v=j[++H]);return j},trim:O?function(j){return j==null?"":O.call(j)}:function(j){return j==null?"":j.toString().replace(k,"").replace(o,"")},makeArray:function(j,s){var v=s||[];if(j!=null){var z=b.type(j);j.length==null||z==="string"||z==="function"||z==="regexp"||b.isWindow(j)?M.call(v,j):b.merge(v,j)}return v},inArray:function(j,s){if(s.indexOf)return s.indexOf(j);for(var v=0,z=s.length;v<z;v++)if(s[v]===j)return v;return-1},merge:function(j,
s){var v=j.length,z=0;if(typeof s.length==="number")for(var H=s.length;z<H;z++)j[v++]=s[z];else for(;s[z]!==B;)j[v++]=s[z++];j.length=v;return j},grep:function(j,s,v){var z=[],H;v=!!v;for(var G=0,K=j.length;G<K;G++){H=!!s(j[G],G);v!==H&&z.push(j[G])}return z},map:function(j,s,v){for(var z=[],H,G=0,K=j.length;G<K;G++){H=s(j[G],G,v);if(H!=null)z[z.length]=H}return z.concat.apply([],z)},guid:1,proxy:function(j,s,v){if(arguments.length===2)if(typeof s==="string"){v=j;j=v[s];s=B}else if(s&&!b.isFunction(s)){v=
s;s=B}if(!s&&j)s=function(){return j.apply(v||this,arguments)};if(j)s.guid=j.guid=j.guid||s.guid||b.guid++;return s},access:function(j,s,v,z,H,G){var K=j.length;if(typeof s==="object"){for(var Q in s)b.access(j,Q,s[Q],z,H,v);return j}if(v!==B){z=!G&&z&&b.isFunction(v);for(Q=0;Q<K;Q++)H(j[Q],s,z?v.call(j[Q],Q,H(j[Q],s)):v,G);return j}return K?H(j[0],s):B},now:function(){return(new Date).getTime()},uaMatch:function(j){j=j.toLowerCase();j=L.exec(j)||g.exec(j)||i.exec(j)||j.indexOf("compatible")<0&&n.exec(j)||
[];return{browser:j[1]||"",version:j[2]||"0"}},browser:{}});b.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(j,s){R["[object "+s+"]"]=s.toLowerCase()});m=b.uaMatch(m);if(m.browser){b.browser[m.browser]=true;b.browser.version=m.version}if(b.browser.webkit)b.browser.safari=true;if(D)b.inArray=function(j,s){return D.call(s,j)};if(!/\s/.test("\u00a0")){k=/^[\s\xA0]+/;o=/[\s\xA0]+$/}f=b(t);if(t.addEventListener)u=function(){t.removeEventListener("DOMContentLoaded",u,
false);b.ready()};else if(t.attachEvent)u=function(){if(t.readyState==="complete"){t.detachEvent("onreadystatechange",u);b.ready()}};return E.jQuery=E.$=b}();(function(){c.support={};var a=t.documentElement,b=t.createElement("script"),d=t.createElement("div"),e="script"+c.now();d.style.display="none";d.innerHTML=" <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";var f=d.getElementsByTagName("*"),h=d.getElementsByTagName("a")[0],l=t.createElement("select"),
k=l.appendChild(t.createElement("option"));if(!(!f||!f.length||!h)){c.support={leadingWhitespace:d.firstChild.nodeType===3,tbody:!d.getElementsByTagName("tbody").length,htmlSerialize:!!d.getElementsByTagName("link").length,style:/red/.test(h.getAttribute("style")),hrefNormalized:h.getAttribute("href")==="/a",opacity:/^0.55$/.test(h.style.opacity),cssFloat:!!h.style.cssFloat,checkOn:d.getElementsByTagName("input")[0].value==="on",optSelected:k.selected,deleteExpando:true,optDisabled:false,checkClone:false,
scriptEval:false,noCloneEvent:true,boxModel:null,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableHiddenOffsets:true};l.disabled=true;c.support.optDisabled=!k.disabled;b.type="text/javascript";try{b.appendChild(t.createTextNode("window."+e+"=1;"))}catch(o){}a.insertBefore(b,a.firstChild);if(E[e]){c.support.scriptEval=true;delete E[e]}try{delete b.test}catch(x){c.support.deleteExpando=false}a.removeChild(b);if(d.attachEvent&&d.fireEvent){d.attachEvent("onclick",function r(){c.support.noCloneEvent=
false;d.detachEvent("onclick",r)});d.cloneNode(true).fireEvent("onclick")}d=t.createElement("div");d.innerHTML="<input type='radio' name='radiotest' checked='checked'/>";a=t.createDocumentFragment();a.appendChild(d.firstChild);c.support.checkClone=a.cloneNode(true).cloneNode(true).lastChild.checked;c(function(){var r=t.createElement("div");r.style.width=r.style.paddingLeft="1px";t.body.appendChild(r);c.boxModel=c.support.boxModel=r.offsetWidth===2;if("zoom"in r.style){r.style.display="inline";r.style.zoom=
1;c.support.inlineBlockNeedsLayout=r.offsetWidth===2;r.style.display="";r.innerHTML="<div style='width:4px;'></div>";c.support.shrinkWrapBlocks=r.offsetWidth!==2}r.innerHTML="<table><tr><td style='padding:0;display:none'></td><td>t</td></tr></table>";var A=r.getElementsByTagName("td");c.support.reliableHiddenOffsets=A[0].offsetHeight===0;A[0].style.display="";A[1].style.display="none";c.support.reliableHiddenOffsets=c.support.reliableHiddenOffsets&&A[0].offsetHeight===0;r.innerHTML="";t.body.removeChild(r).style.display=
"none"});a=function(r){var A=t.createElement("div");r="on"+r;var C=r in A;if(!C){A.setAttribute(r,"return;");C=typeof A[r]==="function"}return C};c.support.submitBubbles=a("submit");c.support.changeBubbles=a("change");a=b=d=f=h=null}})();var ra={},Ja=/^(?:\{.*\}|\[.*\])$/;c.extend({cache:{},uuid:0,expando:"jQuery"+c.now(),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},data:function(a,b,d){if(c.acceptData(a)){a=a==E?ra:a;var e=a.nodeType,f=e?a[c.expando]:null,h=
c.cache;if(!(e&&!f&&typeof b==="string"&&d===B)){if(e)f||(a[c.expando]=f=++c.uuid);else h=a;if(typeof b==="object")if(e)h[f]=c.extend(h[f],b);else c.extend(h,b);else if(e&&!h[f])h[f]={};a=e?h[f]:h;if(d!==B)a[b]=d;return typeof b==="string"?a[b]:a}}},removeData:function(a,b){if(c.acceptData(a)){a=a==E?ra:a;var d=a.nodeType,e=d?a[c.expando]:a,f=c.cache,h=d?f[e]:e;if(b){if(h){delete h[b];d&&c.isEmptyObject(h)&&c.removeData(a)}}else if(d&&c.support.deleteExpando)delete a[c.expando];else if(a.removeAttribute)a.removeAttribute(c.expando);
else if(d)delete f[e];else for(var l in a)delete a[l]}},acceptData:function(a){if(a.nodeName){var b=c.noData[a.nodeName.toLowerCase()];if(b)return!(b===true||a.getAttribute("classid")!==b)}return true}});c.fn.extend({data:function(a,b){var d=null;if(typeof a==="undefined"){if(this.length){var e=this[0].attributes,f;d=c.data(this[0]);for(var h=0,l=e.length;h<l;h++){f=e[h].name;if(f.indexOf("data-")===0){f=f.substr(5);ka(this[0],f,d[f])}}}return d}else if(typeof a==="object")return this.each(function(){c.data(this,
a)});var k=a.split(".");k[1]=k[1]?"."+k[1]:"";if(b===B){d=this.triggerHandler("getData"+k[1]+"!",[k[0]]);if(d===B&&this.length){d=c.data(this[0],a);d=ka(this[0],a,d)}return d===B&&k[1]?this.data(k[0]):d}else return this.each(function(){var o=c(this),x=[k[0],b];o.triggerHandler("setData"+k[1]+"!",x);c.data(this,a,b);o.triggerHandler("changeData"+k[1]+"!",x)})},removeData:function(a){return this.each(function(){c.removeData(this,a)})}});c.extend({queue:function(a,b,d){if(a){b=(b||"fx")+"queue";var e=
c.data(a,b);if(!d)return e||[];if(!e||c.isArray(d))e=c.data(a,b,c.makeArray(d));else e.push(d);return e}},dequeue:function(a,b){b=b||"fx";var d=c.queue(a,b),e=d.shift();if(e==="inprogress")e=d.shift();if(e){b==="fx"&&d.unshift("inprogress");e.call(a,function(){c.dequeue(a,b)})}}});c.fn.extend({queue:function(a,b){if(typeof a!=="string"){b=a;a="fx"}if(b===B)return c.queue(this[0],a);return this.each(function(){var d=c.queue(this,a,b);a==="fx"&&d[0]!=="inprogress"&&c.dequeue(this,a)})},dequeue:function(a){return this.each(function(){c.dequeue(this,
a)})},delay:function(a,b){a=c.fx?c.fx.speeds[a]||a:a;b=b||"fx";return this.queue(b,function(){var d=this;setTimeout(function(){c.dequeue(d,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])}});var sa=/[\n\t]/g,ha=/\s+/,Sa=/\r/g,Ta=/^(?:href|src|style)$/,Ua=/^(?:button|input)$/i,Va=/^(?:button|input|object|select|textarea)$/i,Wa=/^a(?:rea)?$/i,ta=/^(?:radio|checkbox)$/i;c.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",
colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"};c.fn.extend({attr:function(a,b){return c.access(this,a,b,true,c.attr)},removeAttr:function(a){return this.each(function(){c.attr(this,a,"");this.nodeType===1&&this.removeAttribute(a)})},addClass:function(a){if(c.isFunction(a))return this.each(function(x){var r=c(this);r.addClass(a.call(this,x,r.attr("class")))});if(a&&typeof a==="string")for(var b=(a||"").split(ha),d=0,e=this.length;d<e;d++){var f=this[d];if(f.nodeType===
1)if(f.className){for(var h=" "+f.className+" ",l=f.className,k=0,o=b.length;k<o;k++)if(h.indexOf(" "+b[k]+" ")<0)l+=" "+b[k];f.className=c.trim(l)}else f.className=a}return this},removeClass:function(a){if(c.isFunction(a))return this.each(function(o){var x=c(this);x.removeClass(a.call(this,o,x.attr("class")))});if(a&&typeof a==="string"||a===B)for(var b=(a||"").split(ha),d=0,e=this.length;d<e;d++){var f=this[d];if(f.nodeType===1&&f.className)if(a){for(var h=(" "+f.className+" ").replace(sa," "),
l=0,k=b.length;l<k;l++)h=h.replace(" "+b[l]+" "," ");f.className=c.trim(h)}else f.className=""}return this},toggleClass:function(a,b){var d=typeof a,e=typeof b==="boolean";if(c.isFunction(a))return this.each(function(f){var h=c(this);h.toggleClass(a.call(this,f,h.attr("class"),b),b)});return this.each(function(){if(d==="string")for(var f,h=0,l=c(this),k=b,o=a.split(ha);f=o[h++];){k=e?k:!l.hasClass(f);l[k?"addClass":"removeClass"](f)}else if(d==="undefined"||d==="boolean"){this.className&&c.data(this,
"__className__",this.className);this.className=this.className||a===false?"":c.data(this,"__className__")||""}})},hasClass:function(a){a=" "+a+" ";for(var b=0,d=this.length;b<d;b++)if((" "+this[b].className+" ").replace(sa," ").indexOf(a)>-1)return true;return false},val:function(a){if(!arguments.length){var b=this[0];if(b){if(c.nodeName(b,"option")){var d=b.attributes.value;return!d||d.specified?b.value:b.text}if(c.nodeName(b,"select")){var e=b.selectedIndex;d=[];var f=b.options;b=b.type==="select-one";
if(e<0)return null;var h=b?e:0;for(e=b?e+1:f.length;h<e;h++){var l=f[h];if(l.selected&&(c.support.optDisabled?!l.disabled:l.getAttribute("disabled")===null)&&(!l.parentNode.disabled||!c.nodeName(l.parentNode,"optgroup"))){a=c(l).val();if(b)return a;d.push(a)}}return d}if(ta.test(b.type)&&!c.support.checkOn)return b.getAttribute("value")===null?"on":b.value;return(b.value||"").replace(Sa,"")}return B}var k=c.isFunction(a);return this.each(function(o){var x=c(this),r=a;if(this.nodeType===1){if(k)r=
a.call(this,o,x.val());if(r==null)r="";else if(typeof r==="number")r+="";else if(c.isArray(r))r=c.map(r,function(C){return C==null?"":C+""});if(c.isArray(r)&&ta.test(this.type))this.checked=c.inArray(x.val(),r)>=0;else if(c.nodeName(this,"select")){var A=c.makeArray(r);c("option",this).each(function(){this.selected=c.inArray(c(this).val(),A)>=0});if(!A.length)this.selectedIndex=-1}else this.value=r}})}});c.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},
attr:function(a,b,d,e){if(!a||a.nodeType===3||a.nodeType===8)return B;if(e&&b in c.attrFn)return c(a)[b](d);e=a.nodeType!==1||!c.isXMLDoc(a);var f=d!==B;b=e&&c.props[b]||b;var h=Ta.test(b);if((b in a||a[b]!==B)&&e&&!h){if(f){b==="type"&&Ua.test(a.nodeName)&&a.parentNode&&c.error("type property can't be changed");if(d===null)a.nodeType===1&&a.removeAttribute(b);else a[b]=d}if(c.nodeName(a,"form")&&a.getAttributeNode(b))return a.getAttributeNode(b).nodeValue;if(b==="tabIndex")return(b=a.getAttributeNode("tabIndex"))&&
b.specified?b.value:Va.test(a.nodeName)||Wa.test(a.nodeName)&&a.href?0:B;return a[b]}if(!c.support.style&&e&&b==="style"){if(f)a.style.cssText=""+d;return a.style.cssText}f&&a.setAttribute(b,""+d);if(!a.attributes[b]&&a.hasAttribute&&!a.hasAttribute(b))return B;a=!c.support.hrefNormalized&&e&&h?a.getAttribute(b,2):a.getAttribute(b);return a===null?B:a}});var X=/\.(.*)$/,ia=/^(?:textarea|input|select)$/i,La=/\./g,Ma=/ /g,Xa=/[^\w\s.|`]/g,Ya=function(a){return a.replace(Xa,"\\$&")},ua={focusin:0,focusout:0};
c.event={add:function(a,b,d,e){if(!(a.nodeType===3||a.nodeType===8)){if(c.isWindow(a)&&a!==E&&!a.frameElement)a=E;if(d===false)d=U;else if(!d)return;var f,h;if(d.handler){f=d;d=f.handler}if(!d.guid)d.guid=c.guid++;if(h=c.data(a)){var l=a.nodeType?"events":"__events__",k=h[l],o=h.handle;if(typeof k==="function"){o=k.handle;k=k.events}else if(!k){a.nodeType||(h[l]=h=function(){});h.events=k={}}if(!o)h.handle=o=function(){return typeof c!=="undefined"&&!c.event.triggered?c.event.handle.apply(o.elem,
arguments):B};o.elem=a;b=b.split(" ");for(var x=0,r;l=b[x++];){h=f?c.extend({},f):{handler:d,data:e};if(l.indexOf(".")>-1){r=l.split(".");l=r.shift();h.namespace=r.slice(0).sort().join(".")}else{r=[];h.namespace=""}h.type=l;if(!h.guid)h.guid=d.guid;var A=k[l],C=c.event.special[l]||{};if(!A){A=k[l]=[];if(!C.setup||C.setup.call(a,e,r,o)===false)if(a.addEventListener)a.addEventListener(l,o,false);else a.attachEvent&&a.attachEvent("on"+l,o)}if(C.add){C.add.call(a,h);if(!h.handler.guid)h.handler.guid=
d.guid}A.push(h);c.event.global[l]=true}a=null}}},global:{},remove:function(a,b,d,e){if(!(a.nodeType===3||a.nodeType===8)){if(d===false)d=U;var f,h,l=0,k,o,x,r,A,C,J=a.nodeType?"events":"__events__",w=c.data(a),I=w&&w[J];if(w&&I){if(typeof I==="function"){w=I;I=I.events}if(b&&b.type){d=b.handler;b=b.type}if(!b||typeof b==="string"&&b.charAt(0)==="."){b=b||"";for(f in I)c.event.remove(a,f+b)}else{for(b=b.split(" ");f=b[l++];){r=f;k=f.indexOf(".")<0;o=[];if(!k){o=f.split(".");f=o.shift();x=RegExp("(^|\\.)"+
c.map(o.slice(0).sort(),Ya).join("\\.(?:.*\\.)?")+"(\\.|$)")}if(A=I[f])if(d){r=c.event.special[f]||{};for(h=e||0;h<A.length;h++){C=A[h];if(d.guid===C.guid){if(k||x.test(C.namespace)){e==null&&A.splice(h--,1);r.remove&&r.remove.call(a,C)}if(e!=null)break}}if(A.length===0||e!=null&&A.length===1){if(!r.teardown||r.teardown.call(a,o)===false)c.removeEvent(a,f,w.handle);delete I[f]}}else for(h=0;h<A.length;h++){C=A[h];if(k||x.test(C.namespace)){c.event.remove(a,r,C.handler,h);A.splice(h--,1)}}}if(c.isEmptyObject(I)){if(b=
w.handle)b.elem=null;delete w.events;delete w.handle;if(typeof w==="function")c.removeData(a,J);else c.isEmptyObject(w)&&c.removeData(a)}}}}},trigger:function(a,b,d,e){var f=a.type||a;if(!e){a=typeof a==="object"?a[c.expando]?a:c.extend(c.Event(f),a):c.Event(f);if(f.indexOf("!")>=0){a.type=f=f.slice(0,-1);a.exclusive=true}if(!d){a.stopPropagation();c.event.global[f]&&c.each(c.cache,function(){this.events&&this.events[f]&&c.event.trigger(a,b,this.handle.elem)})}if(!d||d.nodeType===3||d.nodeType===
8)return B;a.result=B;a.target=d;b=c.makeArray(b);b.unshift(a)}a.currentTarget=d;(e=d.nodeType?c.data(d,"handle"):(c.data(d,"__events__")||{}).handle)&&e.apply(d,b);e=d.parentNode||d.ownerDocument;try{if(!(d&&d.nodeName&&c.noData[d.nodeName.toLowerCase()]))if(d["on"+f]&&d["on"+f].apply(d,b)===false){a.result=false;a.preventDefault()}}catch(h){}if(!a.isPropagationStopped()&&e)c.event.trigger(a,b,e,true);else if(!a.isDefaultPrevented()){var l;e=a.target;var k=f.replace(X,""),o=c.nodeName(e,"a")&&k===
"click",x=c.event.special[k]||{};if((!x._default||x._default.call(d,a)===false)&&!o&&!(e&&e.nodeName&&c.noData[e.nodeName.toLowerCase()])){try{if(e[k]){if(l=e["on"+k])e["on"+k]=null;c.event.triggered=true;e[k]()}}catch(r){}if(l)e["on"+k]=l;c.event.triggered=false}}},handle:function(a){var b,d,e,f;d=[];var h=c.makeArray(arguments);a=h[0]=c.event.fix(a||E.event);a.currentTarget=this;b=a.type.indexOf(".")<0&&!a.exclusive;if(!b){e=a.type.split(".");a.type=e.shift();d=e.slice(0).sort();e=RegExp("(^|\\.)"+
d.join("\\.(?:.*\\.)?")+"(\\.|$)")}a.namespace=a.namespace||d.join(".");f=c.data(this,this.nodeType?"events":"__events__");if(typeof f==="function")f=f.events;d=(f||{})[a.type];if(f&&d){d=d.slice(0);f=0;for(var l=d.length;f<l;f++){var k=d[f];if(b||e.test(k.namespace)){a.handler=k.handler;a.data=k.data;a.handleObj=k;k=k.handler.apply(this,h);if(k!==B){a.result=k;if(k===false){a.preventDefault();a.stopPropagation()}}if(a.isImmediatePropagationStopped())break}}}return a.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),
fix:function(a){if(a[c.expando])return a;var b=a;a=c.Event(b);for(var d=this.props.length,e;d;){e=this.props[--d];a[e]=b[e]}if(!a.target)a.target=a.srcElement||t;if(a.target.nodeType===3)a.target=a.target.parentNode;if(!a.relatedTarget&&a.fromElement)a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement;if(a.pageX==null&&a.clientX!=null){b=t.documentElement;d=t.body;a.pageX=a.clientX+(b&&b.scrollLeft||d&&d.scrollLeft||0)-(b&&b.clientLeft||d&&d.clientLeft||0);a.pageY=a.clientY+(b&&b.scrollTop||
d&&d.scrollTop||0)-(b&&b.clientTop||d&&d.clientTop||0)}if(a.which==null&&(a.charCode!=null||a.keyCode!=null))a.which=a.charCode!=null?a.charCode:a.keyCode;if(!a.metaKey&&a.ctrlKey)a.metaKey=a.ctrlKey;if(!a.which&&a.button!==B)a.which=a.button&1?1:a.button&2?3:a.button&4?2:0;return a},guid:1E8,proxy:c.proxy,special:{ready:{setup:c.bindReady,teardown:c.noop},live:{add:function(a){c.event.add(this,Y(a.origType,a.selector),c.extend({},a,{handler:Ka,guid:a.handler.guid}))},remove:function(a){c.event.remove(this,
Y(a.origType,a.selector),a)}},beforeunload:{setup:function(a,b,d){if(c.isWindow(this))this.onbeforeunload=d},teardown:function(a,b){if(this.onbeforeunload===b)this.onbeforeunload=null}}}};c.removeEvent=t.removeEventListener?function(a,b,d){a.removeEventListener&&a.removeEventListener(b,d,false)}:function(a,b,d){a.detachEvent&&a.detachEvent("on"+b,d)};c.Event=function(a){if(!this.preventDefault)return new c.Event(a);if(a&&a.type){this.originalEvent=a;this.type=a.type}else this.type=a;this.timeStamp=
c.now();this[c.expando]=true};c.Event.prototype={preventDefault:function(){this.isDefaultPrevented=ca;var a=this.originalEvent;if(a)if(a.preventDefault)a.preventDefault();else a.returnValue=false},stopPropagation:function(){this.isPropagationStopped=ca;var a=this.originalEvent;if(a){a.stopPropagation&&a.stopPropagation();a.cancelBubble=true}},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=ca;this.stopPropagation()},isDefaultPrevented:U,isPropagationStopped:U,isImmediatePropagationStopped:U};
var va=function(a){var b=a.relatedTarget;try{for(;b&&b!==this;)b=b.parentNode;if(b!==this){a.type=a.data;c.event.handle.apply(this,arguments)}}catch(d){}},wa=function(a){a.type=a.data;c.event.handle.apply(this,arguments)};c.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){c.event.special[a]={setup:function(d){c.event.add(this,b,d&&d.selector?wa:va,a)},teardown:function(d){c.event.remove(this,b,d&&d.selector?wa:va)}}});if(!c.support.submitBubbles)c.event.special.submit={setup:function(){if(this.nodeName.toLowerCase()!==
"form"){c.event.add(this,"click.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="submit"||d==="image")&&c(b).closest("form").length){a.liveFired=B;return la("submit",this,arguments)}});c.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="text"||d==="password")&&c(b).closest("form").length&&a.keyCode===13){a.liveFired=B;return la("submit",this,arguments)}})}else return false},teardown:function(){c.event.remove(this,".specialSubmit")}};if(!c.support.changeBubbles){var V,
xa=function(a){var b=a.type,d=a.value;if(b==="radio"||b==="checkbox")d=a.checked;else if(b==="select-multiple")d=a.selectedIndex>-1?c.map(a.options,function(e){return e.selected}).join("-"):"";else if(a.nodeName.toLowerCase()==="select")d=a.selectedIndex;return d},Z=function(a,b){var d=a.target,e,f;if(!(!ia.test(d.nodeName)||d.readOnly)){e=c.data(d,"_change_data");f=xa(d);if(a.type!=="focusout"||d.type!=="radio")c.data(d,"_change_data",f);if(!(e===B||f===e))if(e!=null||f){a.type="change";a.liveFired=
B;return c.event.trigger(a,b,d)}}};c.event.special.change={filters:{focusout:Z,beforedeactivate:Z,click:function(a){var b=a.target,d=b.type;if(d==="radio"||d==="checkbox"||b.nodeName.toLowerCase()==="select")return Z.call(this,a)},keydown:function(a){var b=a.target,d=b.type;if(a.keyCode===13&&b.nodeName.toLowerCase()!=="textarea"||a.keyCode===32&&(d==="checkbox"||d==="radio")||d==="select-multiple")return Z.call(this,a)},beforeactivate:function(a){a=a.target;c.data(a,"_change_data",xa(a))}},setup:function(){if(this.type===
"file")return false;for(var a in V)c.event.add(this,a+".specialChange",V[a]);return ia.test(this.nodeName)},teardown:function(){c.event.remove(this,".specialChange");return ia.test(this.nodeName)}};V=c.event.special.change.filters;V.focus=V.beforeactivate}t.addEventListener&&c.each({focus:"focusin",blur:"focusout"},function(a,b){function d(e){e=c.event.fix(e);e.type=b;return c.event.trigger(e,null,e.target)}c.event.special[b]={setup:function(){ua[b]++===0&&t.addEventListener(a,d,true)},teardown:function(){--ua[b]===
0&&t.removeEventListener(a,d,true)}}});c.each(["bind","one"],function(a,b){c.fn[b]=function(d,e,f){if(typeof d==="object"){for(var h in d)this[b](h,e,d[h],f);return this}if(c.isFunction(e)||e===false){f=e;e=B}var l=b==="one"?c.proxy(f,function(o){c(this).unbind(o,l);return f.apply(this,arguments)}):f;if(d==="unload"&&b!=="one")this.one(d,e,f);else{h=0;for(var k=this.length;h<k;h++)c.event.add(this[h],d,l,e)}return this}});c.fn.extend({unbind:function(a,b){if(typeof a==="object"&&!a.preventDefault)for(var d in a)this.unbind(d,
a[d]);else{d=0;for(var e=this.length;d<e;d++)c.event.remove(this[d],a,b)}return this},delegate:function(a,b,d,e){return this.live(b,d,e,a)},undelegate:function(a,b,d){return arguments.length===0?this.unbind("live"):this.die(b,null,d,a)},trigger:function(a,b){return this.each(function(){c.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0]){var d=c.Event(a);d.preventDefault();d.stopPropagation();c.event.trigger(d,b,this[0]);return d.result}},toggle:function(a){for(var b=arguments,d=
1;d<b.length;)c.proxy(a,b[d++]);return this.click(c.proxy(a,function(e){var f=(c.data(this,"lastToggle"+a.guid)||0)%d;c.data(this,"lastToggle"+a.guid,f+1);e.preventDefault();return b[f].apply(this,arguments)||false}))},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var ya={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};c.each(["live","die"],function(a,b){c.fn[b]=function(d,e,f,h){var l,k=0,o,x,r=h||this.selector;h=h?this:c(this.context);if(typeof d===
"object"&&!d.preventDefault){for(l in d)h[b](l,e,d[l],r);return this}if(c.isFunction(e)){f=e;e=B}for(d=(d||"").split(" ");(l=d[k++])!=null;){o=X.exec(l);x="";if(o){x=o[0];l=l.replace(X,"")}if(l==="hover")d.push("mouseenter"+x,"mouseleave"+x);else{o=l;if(l==="focus"||l==="blur"){d.push(ya[l]+x);l+=x}else l=(ya[l]||l)+x;if(b==="live"){x=0;for(var A=h.length;x<A;x++)c.event.add(h[x],"live."+Y(l,r),{data:e,selector:r,handler:f,origType:l,origHandler:f,preType:o})}else h.unbind("live."+Y(l,r),f)}}return this}});
c.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),function(a,b){c.fn[b]=function(d,e){if(e==null){e=d;d=null}return arguments.length>0?this.bind(b,d,e):this.trigger(b)};if(c.attrFn)c.attrFn[b]=true});E.attachEvent&&!E.addEventListener&&c(E).bind("unload",function(){for(var a in c.cache)if(c.cache[a].handle)try{c.event.remove(c.cache[a].handle.elem)}catch(b){}});
(function(){function a(g,i,n,m,p,q){p=0;for(var u=m.length;p<u;p++){var y=m[p];if(y){var F=false;for(y=y[g];y;){if(y.sizcache===n){F=m[y.sizset];break}if(y.nodeType===1&&!q){y.sizcache=n;y.sizset=p}if(y.nodeName.toLowerCase()===i){F=y;break}y=y[g]}m[p]=F}}}function b(g,i,n,m,p,q){p=0;for(var u=m.length;p<u;p++){var y=m[p];if(y){var F=false;for(y=y[g];y;){if(y.sizcache===n){F=m[y.sizset];break}if(y.nodeType===1){if(!q){y.sizcache=n;y.sizset=p}if(typeof i!=="string"){if(y===i){F=true;break}}else if(k.filter(i,
[y]).length>0){F=y;break}}y=y[g]}m[p]=F}}}var d=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,e=0,f=Object.prototype.toString,h=false,l=true;[0,0].sort(function(){l=false;return 0});var k=function(g,i,n,m){n=n||[];var p=i=i||t;if(i.nodeType!==1&&i.nodeType!==9)return[];if(!g||typeof g!=="string")return n;var q,u,y,F,M,N=true,O=k.isXML(i),D=[],R=g;do{d.exec("");if(q=d.exec(R)){R=q[3];D.push(q[1]);if(q[2]){F=q[3];
break}}}while(q);if(D.length>1&&x.exec(g))if(D.length===2&&o.relative[D[0]])u=L(D[0]+D[1],i);else for(u=o.relative[D[0]]?[i]:k(D.shift(),i);D.length;){g=D.shift();if(o.relative[g])g+=D.shift();u=L(g,u)}else{if(!m&&D.length>1&&i.nodeType===9&&!O&&o.match.ID.test(D[0])&&!o.match.ID.test(D[D.length-1])){q=k.find(D.shift(),i,O);i=q.expr?k.filter(q.expr,q.set)[0]:q.set[0]}if(i){q=m?{expr:D.pop(),set:C(m)}:k.find(D.pop(),D.length===1&&(D[0]==="~"||D[0]==="+")&&i.parentNode?i.parentNode:i,O);u=q.expr?k.filter(q.expr,
q.set):q.set;if(D.length>0)y=C(u);else N=false;for(;D.length;){q=M=D.pop();if(o.relative[M])q=D.pop();else M="";if(q==null)q=i;o.relative[M](y,q,O)}}else y=[]}y||(y=u);y||k.error(M||g);if(f.call(y)==="[object Array]")if(N)if(i&&i.nodeType===1)for(g=0;y[g]!=null;g++){if(y[g]&&(y[g]===true||y[g].nodeType===1&&k.contains(i,y[g])))n.push(u[g])}else for(g=0;y[g]!=null;g++)y[g]&&y[g].nodeType===1&&n.push(u[g]);else n.push.apply(n,y);else C(y,n);if(F){k(F,p,n,m);k.uniqueSort(n)}return n};k.uniqueSort=function(g){if(w){h=
l;g.sort(w);if(h)for(var i=1;i<g.length;i++)g[i]===g[i-1]&&g.splice(i--,1)}return g};k.matches=function(g,i){return k(g,null,null,i)};k.matchesSelector=function(g,i){return k(i,null,null,[g]).length>0};k.find=function(g,i,n){var m;if(!g)return[];for(var p=0,q=o.order.length;p<q;p++){var u,y=o.order[p];if(u=o.leftMatch[y].exec(g)){var F=u[1];u.splice(1,1);if(F.substr(F.length-1)!=="\\"){u[1]=(u[1]||"").replace(/\\/g,"");m=o.find[y](u,i,n);if(m!=null){g=g.replace(o.match[y],"");break}}}}m||(m=i.getElementsByTagName("*"));
return{set:m,expr:g}};k.filter=function(g,i,n,m){for(var p,q,u=g,y=[],F=i,M=i&&i[0]&&k.isXML(i[0]);g&&i.length;){for(var N in o.filter)if((p=o.leftMatch[N].exec(g))!=null&&p[2]){var O,D,R=o.filter[N];D=p[1];q=false;p.splice(1,1);if(D.substr(D.length-1)!=="\\"){if(F===y)y=[];if(o.preFilter[N])if(p=o.preFilter[N](p,F,n,y,m,M)){if(p===true)continue}else q=O=true;if(p)for(var j=0;(D=F[j])!=null;j++)if(D){O=R(D,p,j,F);var s=m^!!O;if(n&&O!=null)if(s)q=true;else F[j]=false;else if(s){y.push(D);q=true}}if(O!==
B){n||(F=y);g=g.replace(o.match[N],"");if(!q)return[];break}}}if(g===u)if(q==null)k.error(g);else break;u=g}return F};k.error=function(g){throw"Syntax error, unrecognized expression: "+g;};var o=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+\-]*)\))?/,
POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(g){return g.getAttribute("href")}},relative:{"+":function(g,i){var n=typeof i==="string",m=n&&!/\W/.test(i);n=n&&!m;if(m)i=i.toLowerCase();m=0;for(var p=g.length,q;m<p;m++)if(q=g[m]){for(;(q=q.previousSibling)&&q.nodeType!==1;);g[m]=n||q&&q.nodeName.toLowerCase()===
i?q||false:q===i}n&&k.filter(i,g,true)},">":function(g,i){var n,m=typeof i==="string",p=0,q=g.length;if(m&&!/\W/.test(i))for(i=i.toLowerCase();p<q;p++){if(n=g[p]){n=n.parentNode;g[p]=n.nodeName.toLowerCase()===i?n:false}}else{for(;p<q;p++)if(n=g[p])g[p]=m?n.parentNode:n.parentNode===i;m&&k.filter(i,g,true)}},"":function(g,i,n){var m,p=e++,q=b;if(typeof i==="string"&&!/\W/.test(i)){m=i=i.toLowerCase();q=a}q("parentNode",i,p,g,m,n)},"~":function(g,i,n){var m,p=e++,q=b;if(typeof i==="string"&&!/\W/.test(i)){m=
i=i.toLowerCase();q=a}q("previousSibling",i,p,g,m,n)}},find:{ID:function(g,i,n){if(typeof i.getElementById!=="undefined"&&!n)return(g=i.getElementById(g[1]))&&g.parentNode?[g]:[]},NAME:function(g,i){if(typeof i.getElementsByName!=="undefined"){for(var n=[],m=i.getElementsByName(g[1]),p=0,q=m.length;p<q;p++)m[p].getAttribute("name")===g[1]&&n.push(m[p]);return n.length===0?null:n}},TAG:function(g,i){return i.getElementsByTagName(g[1])}},preFilter:{CLASS:function(g,i,n,m,p,q){g=" "+g[1].replace(/\\/g,
"")+" ";if(q)return g;q=0;for(var u;(u=i[q])!=null;q++)if(u)if(p^(u.className&&(" "+u.className+" ").replace(/[\t\n]/g," ").indexOf(g)>=0))n||m.push(u);else if(n)i[q]=false;return false},ID:function(g){return g[1].replace(/\\/g,"")},TAG:function(g){return g[1].toLowerCase()},CHILD:function(g){if(g[1]==="nth"){var i=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(g[2]==="even"&&"2n"||g[2]==="odd"&&"2n+1"||!/\D/.test(g[2])&&"0n+"+g[2]||g[2]);g[2]=i[1]+(i[2]||1)-0;g[3]=i[3]-0}g[0]=e++;return g},ATTR:function(g,i,n,
m,p,q){i=g[1].replace(/\\/g,"");if(!q&&o.attrMap[i])g[1]=o.attrMap[i];if(g[2]==="~=")g[4]=" "+g[4]+" ";return g},PSEUDO:function(g,i,n,m,p){if(g[1]==="not")if((d.exec(g[3])||"").length>1||/^\w/.test(g[3]))g[3]=k(g[3],null,null,i);else{g=k.filter(g[3],i,n,true^p);n||m.push.apply(m,g);return false}else if(o.match.POS.test(g[0])||o.match.CHILD.test(g[0]))return true;return g},POS:function(g){g.unshift(true);return g}},filters:{enabled:function(g){return g.disabled===false&&g.type!=="hidden"},disabled:function(g){return g.disabled===
true},checked:function(g){return g.checked===true},selected:function(g){return g.selected===true},parent:function(g){return!!g.firstChild},empty:function(g){return!g.firstChild},has:function(g,i,n){return!!k(n[3],g).length},header:function(g){return/h\d/i.test(g.nodeName)},text:function(g){return"text"===g.type},radio:function(g){return"radio"===g.type},checkbox:function(g){return"checkbox"===g.type},file:function(g){return"file"===g.type},password:function(g){return"password"===g.type},submit:function(g){return"submit"===
g.type},image:function(g){return"image"===g.type},reset:function(g){return"reset"===g.type},button:function(g){return"button"===g.type||g.nodeName.toLowerCase()==="button"},input:function(g){return/input|select|textarea|button/i.test(g.nodeName)}},setFilters:{first:function(g,i){return i===0},last:function(g,i,n,m){return i===m.length-1},even:function(g,i){return i%2===0},odd:function(g,i){return i%2===1},lt:function(g,i,n){return i<n[3]-0},gt:function(g,i,n){return i>n[3]-0},nth:function(g,i,n){return n[3]-
0===i},eq:function(g,i,n){return n[3]-0===i}},filter:{PSEUDO:function(g,i,n,m){var p=i[1],q=o.filters[p];if(q)return q(g,n,i,m);else if(p==="contains")return(g.textContent||g.innerText||k.getText([g])||"").indexOf(i[3])>=0;else if(p==="not"){i=i[3];n=0;for(m=i.length;n<m;n++)if(i[n]===g)return false;return true}else k.error("Syntax error, unrecognized expression: "+p)},CHILD:function(g,i){var n=i[1],m=g;switch(n){case "only":case "first":for(;m=m.previousSibling;)if(m.nodeType===1)return false;if(n===
"first")return true;m=g;case "last":for(;m=m.nextSibling;)if(m.nodeType===1)return false;return true;case "nth":n=i[2];var p=i[3];if(n===1&&p===0)return true;var q=i[0],u=g.parentNode;if(u&&(u.sizcache!==q||!g.nodeIndex)){var y=0;for(m=u.firstChild;m;m=m.nextSibling)if(m.nodeType===1)m.nodeIndex=++y;u.sizcache=q}m=g.nodeIndex-p;return n===0?m===0:m%n===0&&m/n>=0}},ID:function(g,i){return g.nodeType===1&&g.getAttribute("id")===i},TAG:function(g,i){return i==="*"&&g.nodeType===1||g.nodeName.toLowerCase()===
i},CLASS:function(g,i){return(" "+(g.className||g.getAttribute("class"))+" ").indexOf(i)>-1},ATTR:function(g,i){var n=i[1];n=o.attrHandle[n]?o.attrHandle[n](g):g[n]!=null?g[n]:g.getAttribute(n);var m=n+"",p=i[2],q=i[4];return n==null?p==="!=":p==="="?m===q:p==="*="?m.indexOf(q)>=0:p==="~="?(" "+m+" ").indexOf(q)>=0:!q?m&&n!==false:p==="!="?m!==q:p==="^="?m.indexOf(q)===0:p==="$="?m.substr(m.length-q.length)===q:p==="|="?m===q||m.substr(0,q.length+1)===q+"-":false},POS:function(g,i,n,m){var p=o.setFilters[i[2]];
if(p)return p(g,n,i,m)}}},x=o.match.POS,r=function(g,i){return"\\"+(i-0+1)},A;for(A in o.match){o.match[A]=RegExp(o.match[A].source+/(?![^\[]*\])(?![^\(]*\))/.source);o.leftMatch[A]=RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[A].source.replace(/\\(\d+)/g,r))}var C=function(g,i){g=Array.prototype.slice.call(g,0);if(i){i.push.apply(i,g);return i}return g};try{Array.prototype.slice.call(t.documentElement.childNodes,0)}catch(J){C=function(g,i){var n=0,m=i||[];if(f.call(g)==="[object Array]")Array.prototype.push.apply(m,
g);else if(typeof g.length==="number")for(var p=g.length;n<p;n++)m.push(g[n]);else for(;g[n];n++)m.push(g[n]);return m}}var w,I;if(t.documentElement.compareDocumentPosition)w=function(g,i){if(g===i){h=true;return 0}if(!g.compareDocumentPosition||!i.compareDocumentPosition)return g.compareDocumentPosition?-1:1;return g.compareDocumentPosition(i)&4?-1:1};else{w=function(g,i){var n,m,p=[],q=[];n=g.parentNode;m=i.parentNode;var u=n;if(g===i){h=true;return 0}else if(n===m)return I(g,i);else if(n){if(!m)return 1}else return-1;
for(;u;){p.unshift(u);u=u.parentNode}for(u=m;u;){q.unshift(u);u=u.parentNode}n=p.length;m=q.length;for(u=0;u<n&&u<m;u++)if(p[u]!==q[u])return I(p[u],q[u]);return u===n?I(g,q[u],-1):I(p[u],i,1)};I=function(g,i,n){if(g===i)return n;for(g=g.nextSibling;g;){if(g===i)return-1;g=g.nextSibling}return 1}}k.getText=function(g){for(var i="",n,m=0;g[m];m++){n=g[m];if(n.nodeType===3||n.nodeType===4)i+=n.nodeValue;else if(n.nodeType!==8)i+=k.getText(n.childNodes)}return i};(function(){var g=t.createElement("div"),
i="script"+(new Date).getTime(),n=t.documentElement;g.innerHTML="<a name='"+i+"'/>";n.insertBefore(g,n.firstChild);if(t.getElementById(i)){o.find.ID=function(m,p,q){if(typeof p.getElementById!=="undefined"&&!q)return(p=p.getElementById(m[1]))?p.id===m[1]||typeof p.getAttributeNode!=="undefined"&&p.getAttributeNode("id").nodeValue===m[1]?[p]:B:[]};o.filter.ID=function(m,p){var q=typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id");return m.nodeType===1&&q&&q.nodeValue===p}}n.removeChild(g);
n=g=null})();(function(){var g=t.createElement("div");g.appendChild(t.createComment(""));if(g.getElementsByTagName("*").length>0)o.find.TAG=function(i,n){var m=n.getElementsByTagName(i[1]);if(i[1]==="*"){for(var p=[],q=0;m[q];q++)m[q].nodeType===1&&p.push(m[q]);m=p}return m};g.innerHTML="<a href='#'></a>";if(g.firstChild&&typeof g.firstChild.getAttribute!=="undefined"&&g.firstChild.getAttribute("href")!=="#")o.attrHandle.href=function(i){return i.getAttribute("href",2)};g=null})();t.querySelectorAll&&
function(){var g=k,i=t.createElement("div");i.innerHTML="<p class='TEST'></p>";if(!(i.querySelectorAll&&i.querySelectorAll(".TEST").length===0)){k=function(m,p,q,u){p=p||t;m=m.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!u&&!k.isXML(p))if(p.nodeType===9)try{return C(p.querySelectorAll(m),q)}catch(y){}else if(p.nodeType===1&&p.nodeName.toLowerCase()!=="object"){var F=p.getAttribute("id"),M=F||"__sizzle__";F||p.setAttribute("id",M);try{return C(p.querySelectorAll("#"+M+" "+m),q)}catch(N){}finally{F||
p.removeAttribute("id")}}return g(m,p,q,u)};for(var n in g)k[n]=g[n];i=null}}();(function(){var g=t.documentElement,i=g.matchesSelector||g.mozMatchesSelector||g.webkitMatchesSelector||g.msMatchesSelector,n=false;try{i.call(t.documentElement,"[test!='']:sizzle")}catch(m){n=true}if(i)k.matchesSelector=function(p,q){q=q.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!k.isXML(p))try{if(n||!o.match.PSEUDO.test(q)&&!/!=/.test(q))return i.call(p,q)}catch(u){}return k(q,null,null,[p]).length>0}})();(function(){var g=
t.createElement("div");g.innerHTML="<div class='test e'></div><div class='test'></div>";if(!(!g.getElementsByClassName||g.getElementsByClassName("e").length===0)){g.lastChild.className="e";if(g.getElementsByClassName("e").length!==1){o.order.splice(1,0,"CLASS");o.find.CLASS=function(i,n,m){if(typeof n.getElementsByClassName!=="undefined"&&!m)return n.getElementsByClassName(i[1])};g=null}}})();k.contains=t.documentElement.contains?function(g,i){return g!==i&&(g.contains?g.contains(i):true)}:t.documentElement.compareDocumentPosition?
function(g,i){return!!(g.compareDocumentPosition(i)&16)}:function(){return false};k.isXML=function(g){return(g=(g?g.ownerDocument||g:0).documentElement)?g.nodeName!=="HTML":false};var L=function(g,i){for(var n,m=[],p="",q=i.nodeType?[i]:i;n=o.match.PSEUDO.exec(g);){p+=n[0];g=g.replace(o.match.PSEUDO,"")}g=o.relative[g]?g+"*":g;n=0;for(var u=q.length;n<u;n++)k(g,q[n],m);return k.filter(p,m)};c.find=k;c.expr=k.selectors;c.expr[":"]=c.expr.filters;c.unique=k.uniqueSort;c.text=k.getText;c.isXMLDoc=k.isXML;
c.contains=k.contains})();var Za=/Until$/,$a=/^(?:parents|prevUntil|prevAll)/,ab=/,/,Na=/^.[^:#\[\.,]*$/,bb=Array.prototype.slice,cb=c.expr.match.POS;c.fn.extend({find:function(a){for(var b=this.pushStack("","find",a),d=0,e=0,f=this.length;e<f;e++){d=b.length;c.find(a,this[e],b);if(e>0)for(var h=d;h<b.length;h++)for(var l=0;l<d;l++)if(b[l]===b[h]){b.splice(h--,1);break}}return b},has:function(a){var b=c(a);return this.filter(function(){for(var d=0,e=b.length;d<e;d++)if(c.contains(this,b[d]))return true})},
not:function(a){return this.pushStack(ma(this,a,false),"not",a)},filter:function(a){return this.pushStack(ma(this,a,true),"filter",a)},is:function(a){return!!a&&c.filter(a,this).length>0},closest:function(a,b){var d=[],e,f,h=this[0];if(c.isArray(a)){var l,k={},o=1;if(h&&a.length){e=0;for(f=a.length;e<f;e++){l=a[e];k[l]||(k[l]=c.expr.match.POS.test(l)?c(l,b||this.context):l)}for(;h&&h.ownerDocument&&h!==b;){for(l in k){e=k[l];if(e.jquery?e.index(h)>-1:c(h).is(e))d.push({selector:l,elem:h,level:o})}h=
h.parentNode;o++}}return d}l=cb.test(a)?c(a,b||this.context):null;e=0;for(f=this.length;e<f;e++)for(h=this[e];h;)if(l?l.index(h)>-1:c.find.matchesSelector(h,a)){d.push(h);break}else{h=h.parentNode;if(!h||!h.ownerDocument||h===b)break}d=d.length>1?c.unique(d):d;return this.pushStack(d,"closest",a)},index:function(a){if(!a||typeof a==="string")return c.inArray(this[0],a?c(a):this.parent().children());return c.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var d=typeof a==="string"?c(a,b||this.context):
c.makeArray(a),e=c.merge(this.get(),d);return this.pushStack(!d[0]||!d[0].parentNode||d[0].parentNode.nodeType===11||!e[0]||!e[0].parentNode||e[0].parentNode.nodeType===11?e:c.unique(e))},andSelf:function(){return this.add(this.prevObject)}});c.each({parent:function(a){return(a=a.parentNode)&&a.nodeType!==11?a:null},parents:function(a){return c.dir(a,"parentNode")},parentsUntil:function(a,b,d){return c.dir(a,"parentNode",d)},next:function(a){return c.nth(a,2,"nextSibling")},prev:function(a){return c.nth(a,
2,"previousSibling")},nextAll:function(a){return c.dir(a,"nextSibling")},prevAll:function(a){return c.dir(a,"previousSibling")},nextUntil:function(a,b,d){return c.dir(a,"nextSibling",d)},prevUntil:function(a,b,d){return c.dir(a,"previousSibling",d)},siblings:function(a){return c.sibling(a.parentNode.firstChild,a)},children:function(a){return c.sibling(a.firstChild)},contents:function(a){return c.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:c.makeArray(a.childNodes)}},function(a,
b){c.fn[a]=function(d,e){var f=c.map(this,b,d);Za.test(a)||(e=d);if(e&&typeof e==="string")f=c.filter(e,f);f=this.length>1?c.unique(f):f;if((this.length>1||ab.test(e))&&$a.test(a))f=f.reverse();return this.pushStack(f,a,bb.call(arguments).join(","))}});c.extend({filter:function(a,b,d){if(d)a=":not("+a+")";return b.length===1?c.find.matchesSelector(b[0],a)?[b[0]]:[]:c.find.matches(a,b)},dir:function(a,b,d){var e=[];for(a=a[b];a&&a.nodeType!==9&&(d===B||a.nodeType!==1||!c(a).is(d));){a.nodeType===1&&
e.push(a);a=a[b]}return e},nth:function(a,b,d){b=b||1;for(var e=0;a;a=a[d])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){for(var d=[];a;a=a.nextSibling)a.nodeType===1&&a!==b&&d.push(a);return d}});var za=/ jQuery\d+="(?:\d+|null)"/g,$=/^\s+/,Aa=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Ba=/<([\w:]+)/,db=/<tbody/i,eb=/<|&#?\w+;/,Ca=/<(?:script|object|embed|option|style)/i,Da=/checked\s*(?:[^=]|=\s*.checked.)/i,fb=/\=([^="'>\s]+\/)>/g,P={option:[1,
"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};P.optgroup=P.option;P.tbody=P.tfoot=P.colgroup=P.caption=P.thead;P.th=P.td;if(!c.support.htmlSerialize)P._default=[1,"div<div>","</div>"];c.fn.extend({text:function(a){if(c.isFunction(a))return this.each(function(b){var d=
c(this);d.text(a.call(this,b,d.text()))});if(typeof a!=="object"&&a!==B)return this.empty().append((this[0]&&this[0].ownerDocument||t).createTextNode(a));return c.text(this)},wrapAll:function(a){if(c.isFunction(a))return this.each(function(d){c(this).wrapAll(a.call(this,d))});if(this[0]){var b=c(a,this[0].ownerDocument).eq(0).clone(true);this[0].parentNode&&b.insertBefore(this[0]);b.map(function(){for(var d=this;d.firstChild&&d.firstChild.nodeType===1;)d=d.firstChild;return d}).append(this)}return this},
wrapInner:function(a){if(c.isFunction(a))return this.each(function(b){c(this).wrapInner(a.call(this,b))});return this.each(function(){var b=c(this),d=b.contents();d.length?d.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){c(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){c.nodeName(this,"body")||c(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.appendChild(a)})},
prepend:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this)});else if(arguments.length){var a=c(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,
this.nextSibling)});else if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,c(arguments[0]).toArray());return a}},remove:function(a,b){for(var d=0,e;(e=this[d])!=null;d++)if(!a||c.filter(a,[e]).length){if(!b&&e.nodeType===1){c.cleanData(e.getElementsByTagName("*"));c.cleanData([e])}e.parentNode&&e.parentNode.removeChild(e)}return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++)for(b.nodeType===1&&c.cleanData(b.getElementsByTagName("*"));b.firstChild;)b.removeChild(b.firstChild);
return this},clone:function(a){var b=this.map(function(){if(!c.support.noCloneEvent&&!c.isXMLDoc(this)){var d=this.outerHTML,e=this.ownerDocument;if(!d){d=e.createElement("div");d.appendChild(this.cloneNode(true));d=d.innerHTML}return c.clean([d.replace(za,"").replace(fb,'="$1">').replace($,"")],e)[0]}else return this.cloneNode(true)});if(a===true){na(this,b);na(this.find("*"),b.find("*"))}return b},html:function(a){if(a===B)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(za,""):null;
else if(typeof a==="string"&&!Ca.test(a)&&(c.support.leadingWhitespace||!$.test(a))&&!P[(Ba.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Aa,"<$1></$2>");try{for(var b=0,d=this.length;b<d;b++)if(this[b].nodeType===1){c.cleanData(this[b].getElementsByTagName("*"));this[b].innerHTML=a}}catch(e){this.empty().append(a)}}else c.isFunction(a)?this.each(function(f){var h=c(this);h.html(a.call(this,f,h.html()))}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(c.isFunction(a))return this.each(function(b){var d=
c(this),e=d.html();d.replaceWith(a.call(this,b,e))});if(typeof a!=="string")a=c(a).detach();return this.each(function(){var b=this.nextSibling,d=this.parentNode;c(this).remove();b?c(b).before(a):c(d).append(a)})}else return this.pushStack(c(c.isFunction(a)?a():a),"replaceWith",a)},detach:function(a){return this.remove(a,true)},domManip:function(a,b,d){var e,f,h,l=a[0],k=[];if(!c.support.checkClone&&arguments.length===3&&typeof l==="string"&&Da.test(l))return this.each(function(){c(this).domManip(a,
b,d,true)});if(c.isFunction(l))return this.each(function(x){var r=c(this);a[0]=l.call(this,x,b?r.html():B);r.domManip(a,b,d)});if(this[0]){e=l&&l.parentNode;e=c.support.parentNode&&e&&e.nodeType===11&&e.childNodes.length===this.length?{fragment:e}:c.buildFragment(a,this,k);h=e.fragment;if(f=h.childNodes.length===1?h=h.firstChild:h.firstChild){b=b&&c.nodeName(f,"tr");f=0;for(var o=this.length;f<o;f++)d.call(b?c.nodeName(this[f],"table")?this[f].getElementsByTagName("tbody")[0]||this[f].appendChild(this[f].ownerDocument.createElement("tbody")):
this[f]:this[f],f>0||e.cacheable||this.length>1?h.cloneNode(true):h)}k.length&&c.each(k,Oa)}return this}});c.buildFragment=function(a,b,d){var e,f,h;b=b&&b[0]?b[0].ownerDocument||b[0]:t;if(a.length===1&&typeof a[0]==="string"&&a[0].length<512&&b===t&&!Ca.test(a[0])&&(c.support.checkClone||!Da.test(a[0]))){f=true;if(h=c.fragments[a[0]])if(h!==1)e=h}if(!e){e=b.createDocumentFragment();c.clean(a,b,e,d)}if(f)c.fragments[a[0]]=h?e:1;return{fragment:e,cacheable:f}};c.fragments={};c.each({appendTo:"append",
prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){c.fn[a]=function(d){var e=[];d=c(d);var f=this.length===1&&this[0].parentNode;if(f&&f.nodeType===11&&f.childNodes.length===1&&d.length===1){d[b](this[0]);return this}else{f=0;for(var h=d.length;f<h;f++){var l=(f>0?this.clone(true):this).get();c(d[f])[b](l);e=e.concat(l)}return this.pushStack(e,a,d.selector)}}});c.extend({clean:function(a,b,d,e){b=b||t;if(typeof b.createElement==="undefined")b=b.ownerDocument||
b[0]&&b[0].ownerDocument||t;for(var f=[],h=0,l;(l=a[h])!=null;h++){if(typeof l==="number")l+="";if(l){if(typeof l==="string"&&!eb.test(l))l=b.createTextNode(l);else if(typeof l==="string"){l=l.replace(Aa,"<$1></$2>");var k=(Ba.exec(l)||["",""])[1].toLowerCase(),o=P[k]||P._default,x=o[0],r=b.createElement("div");for(r.innerHTML=o[1]+l+o[2];x--;)r=r.lastChild;if(!c.support.tbody){x=db.test(l);k=k==="table"&&!x?r.firstChild&&r.firstChild.childNodes:o[1]==="<table>"&&!x?r.childNodes:[];for(o=k.length-
1;o>=0;--o)c.nodeName(k[o],"tbody")&&!k[o].childNodes.length&&k[o].parentNode.removeChild(k[o])}!c.support.leadingWhitespace&&$.test(l)&&r.insertBefore(b.createTextNode($.exec(l)[0]),r.firstChild);l=r.childNodes}if(l.nodeType)f.push(l);else f=c.merge(f,l)}}if(d)for(h=0;f[h];h++)if(e&&c.nodeName(f[h],"script")&&(!f[h].type||f[h].type.toLowerCase()==="text/javascript"))e.push(f[h].parentNode?f[h].parentNode.removeChild(f[h]):f[h]);else{f[h].nodeType===1&&f.splice.apply(f,[h+1,0].concat(c.makeArray(f[h].getElementsByTagName("script"))));
d.appendChild(f[h])}return f},cleanData:function(a){for(var b,d,e=c.cache,f=c.event.special,h=c.support.deleteExpando,l=0,k;(k=a[l])!=null;l++)if(!(k.nodeName&&c.noData[k.nodeName.toLowerCase()]))if(d=k[c.expando]){if((b=e[d])&&b.events)for(var o in b.events)f[o]?c.event.remove(k,o):c.removeEvent(k,o,b.handle);if(h)delete k[c.expando];else k.removeAttribute&&k.removeAttribute(c.expando);delete e[d]}}});var Ea=/alpha\([^)]*\)/i,gb=/opacity=([^)]*)/,hb=/-([a-z])/ig,ib=/([A-Z])/g,Fa=/^-?\d+(?:px)?$/i,
jb=/^-?\d/,kb={position:"absolute",visibility:"hidden",display:"block"},Pa=["Left","Right"],Qa=["Top","Bottom"],W,Ga,aa,lb=function(a,b){return b.toUpperCase()};c.fn.css=function(a,b){if(arguments.length===2&&b===B)return this;return c.access(this,a,b,true,function(d,e,f){return f!==B?c.style(d,e,f):c.css(d,e)})};c.extend({cssHooks:{opacity:{get:function(a,b){if(b){var d=W(a,"opacity","opacity");return d===""?"1":d}else return a.style.opacity}}},cssNumber:{zIndex:true,fontWeight:true,opacity:true,
zoom:true,lineHeight:true},cssProps:{"float":c.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,b,d,e){if(!(!a||a.nodeType===3||a.nodeType===8||!a.style)){var f,h=c.camelCase(b),l=a.style,k=c.cssHooks[h];b=c.cssProps[h]||h;if(d!==B){if(!(typeof d==="number"&&isNaN(d)||d==null)){if(typeof d==="number"&&!c.cssNumber[h])d+="px";if(!k||!("set"in k)||(d=k.set(a,d))!==B)try{l[b]=d}catch(o){}}}else{if(k&&"get"in k&&(f=k.get(a,false,e))!==B)return f;return l[b]}}},css:function(a,b,d){var e,f=c.camelCase(b),
h=c.cssHooks[f];b=c.cssProps[f]||f;if(h&&"get"in h&&(e=h.get(a,true,d))!==B)return e;else if(W)return W(a,b,f)},swap:function(a,b,d){var e={},f;for(f in b){e[f]=a.style[f];a.style[f]=b[f]}d.call(a);for(f in b)a.style[f]=e[f]},camelCase:function(a){return a.replace(hb,lb)}});c.curCSS=c.css;c.each(["height","width"],function(a,b){c.cssHooks[b]={get:function(d,e,f){var h;if(e){if(d.offsetWidth!==0)h=oa(d,b,f);else c.swap(d,kb,function(){h=oa(d,b,f)});if(h<=0){h=W(d,b,b);if(h==="0px"&&aa)h=aa(d,b,b);
if(h!=null)return h===""||h==="auto"?"0px":h}if(h<0||h==null){h=d.style[b];return h===""||h==="auto"?"0px":h}return typeof h==="string"?h:h+"px"}},set:function(d,e){if(Fa.test(e)){e=parseFloat(e);if(e>=0)return e+"px"}else return e}}});if(!c.support.opacity)c.cssHooks.opacity={get:function(a,b){return gb.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var d=a.style;d.zoom=1;var e=c.isNaN(b)?"":"alpha(opacity="+b*100+")",f=
d.filter||"";d.filter=Ea.test(f)?f.replace(Ea,e):d.filter+" "+e}};if(t.defaultView&&t.defaultView.getComputedStyle)Ga=function(a,b,d){var e;d=d.replace(ib,"-$1").toLowerCase();if(!(b=a.ownerDocument.defaultView))return B;if(b=b.getComputedStyle(a,null)){e=b.getPropertyValue(d);if(e===""&&!c.contains(a.ownerDocument.documentElement,a))e=c.style(a,d)}return e};if(t.documentElement.currentStyle)aa=function(a,b){var d,e,f=a.currentStyle&&a.currentStyle[b],h=a.style;if(!Fa.test(f)&&jb.test(f)){d=h.left;
e=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;h.left=b==="fontSize"?"1em":f||0;f=h.pixelLeft+"px";h.left=d;a.runtimeStyle.left=e}return f===""?"auto":f};W=Ga||aa;if(c.expr&&c.expr.filters){c.expr.filters.hidden=function(a){var b=a.offsetHeight;return a.offsetWidth===0&&b===0||!c.support.reliableHiddenOffsets&&(a.style.display||c.css(a,"display"))==="none"};c.expr.filters.visible=function(a){return!c.expr.filters.hidden(a)}}var mb=c.now(),nb=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,
ob=/^(?:select|textarea)/i,pb=/^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,qb=/^(?:GET|HEAD)$/,Ra=/\[\]$/,T=/\=\?(&|$)/,ja=/\?/,rb=/([?&])_=[^&]*/,sb=/^(\w+:)?\/\/([^\/?#]+)/,tb=/%20/g,ub=/#.*$/,Ha=c.fn.load;c.fn.extend({load:function(a,b,d){if(typeof a!=="string"&&Ha)return Ha.apply(this,arguments);else if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var f=a.slice(e,a.length);a=a.slice(0,e)}e="GET";if(b)if(c.isFunction(b)){d=b;b=null}else if(typeof b===
"object"){b=c.param(b,c.ajaxSettings.traditional);e="POST"}var h=this;c.ajax({url:a,type:e,dataType:"html",data:b,complete:function(l,k){if(k==="success"||k==="notmodified")h.html(f?c("<div>").append(l.responseText.replace(nb,"")).find(f):l.responseText);d&&h.each(d,[l.responseText,k,l])}});return this},serialize:function(){return c.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?c.makeArray(this.elements):this}).filter(function(){return this.name&&
!this.disabled&&(this.checked||ob.test(this.nodeName)||pb.test(this.type))}).map(function(a,b){var d=c(this).val();return d==null?null:c.isArray(d)?c.map(d,function(e){return{name:b.name,value:e}}):{name:b.name,value:d}}).get()}});c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){c.fn[b]=function(d){return this.bind(b,d)}});c.extend({get:function(a,b,d,e){if(c.isFunction(b)){e=e||d;d=b;b=null}return c.ajax({type:"GET",url:a,data:b,success:d,dataType:e})},
getScript:function(a,b){return c.get(a,null,b,"script")},getJSON:function(a,b,d){return c.get(a,b,d,"json")},post:function(a,b,d,e){if(c.isFunction(b)){e=e||d;d=b;b={}}return c.ajax({type:"POST",url:a,data:b,success:d,dataType:e})},ajaxSetup:function(a){c.extend(c.ajaxSettings,a)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return new E.XMLHttpRequest},accepts:{xml:"application/xml, text/xml",html:"text/html",
script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},ajax:function(a){var b=c.extend(true,{},c.ajaxSettings,a),d,e,f,h=b.type.toUpperCase(),l=qb.test(h);b.url=b.url.replace(ub,"");b.context=a&&a.context!=null?a.context:b;if(b.data&&b.processData&&typeof b.data!=="string")b.data=c.param(b.data,b.traditional);if(b.dataType==="jsonp"){if(h==="GET")T.test(b.url)||(b.url+=(ja.test(b.url)?"&":"?")+(b.jsonp||"callback")+"=?");else if(!b.data||
!T.test(b.data))b.data=(b.data?b.data+"&":"")+(b.jsonp||"callback")+"=?";b.dataType="json"}if(b.dataType==="json"&&(b.data&&T.test(b.data)||T.test(b.url))){d=b.jsonpCallback||"jsonp"+mb++;if(b.data)b.data=(b.data+"").replace(T,"="+d+"$1");b.url=b.url.replace(T,"="+d+"$1");b.dataType="script";var k=E[d];E[d]=function(m){if(c.isFunction(k))k(m);else{E[d]=B;try{delete E[d]}catch(p){}}f=m;c.handleSuccess(b,w,e,f);c.handleComplete(b,w,e,f);r&&r.removeChild(A)}}if(b.dataType==="script"&&b.cache===null)b.cache=
false;if(b.cache===false&&l){var o=c.now(),x=b.url.replace(rb,"$1_="+o);b.url=x+(x===b.url?(ja.test(b.url)?"&":"?")+"_="+o:"")}if(b.data&&l)b.url+=(ja.test(b.url)?"&":"?")+b.data;b.global&&c.active++===0&&c.event.trigger("ajaxStart");o=(o=sb.exec(b.url))&&(o[1]&&o[1].toLowerCase()!==location.protocol||o[2].toLowerCase()!==location.host);if(b.dataType==="script"&&h==="GET"&&o){var r=t.getElementsByTagName("head")[0]||t.documentElement,A=t.createElement("script");if(b.scriptCharset)A.charset=b.scriptCharset;
A.src=b.url;if(!d){var C=false;A.onload=A.onreadystatechange=function(){if(!C&&(!this.readyState||this.readyState==="loaded"||this.readyState==="complete")){C=true;c.handleSuccess(b,w,e,f);c.handleComplete(b,w,e,f);A.onload=A.onreadystatechange=null;r&&A.parentNode&&r.removeChild(A)}}}r.insertBefore(A,r.firstChild);return B}var J=false,w=b.xhr();if(w){b.username?w.open(h,b.url,b.async,b.username,b.password):w.open(h,b.url,b.async);try{if(b.data!=null&&!l||a&&a.contentType)w.setRequestHeader("Content-Type",
b.contentType);if(b.ifModified){c.lastModified[b.url]&&w.setRequestHeader("If-Modified-Since",c.lastModified[b.url]);c.etag[b.url]&&w.setRequestHeader("If-None-Match",c.etag[b.url])}o||w.setRequestHeader("X-Requested-With","XMLHttpRequest");w.setRequestHeader("Accept",b.dataType&&b.accepts[b.dataType]?b.accepts[b.dataType]+", */*; q=0.01":b.accepts._default)}catch(I){}if(b.beforeSend&&b.beforeSend.call(b.context,w,b)===false){b.global&&c.active--===1&&c.event.trigger("ajaxStop");w.abort();return false}b.global&&
c.triggerGlobal(b,"ajaxSend",[w,b]);var L=w.onreadystatechange=function(m){if(!w||w.readyState===0||m==="abort"){J||c.handleComplete(b,w,e,f);J=true;if(w)w.onreadystatechange=c.noop}else if(!J&&w&&(w.readyState===4||m==="timeout")){J=true;w.onreadystatechange=c.noop;e=m==="timeout"?"timeout":!c.httpSuccess(w)?"error":b.ifModified&&c.httpNotModified(w,b.url)?"notmodified":"success";var p;if(e==="success")try{f=c.httpData(w,b.dataType,b)}catch(q){e="parsererror";p=q}if(e==="success"||e==="notmodified")d||
c.handleSuccess(b,w,e,f);else c.handleError(b,w,e,p);d||c.handleComplete(b,w,e,f);m==="timeout"&&w.abort();if(b.async)w=null}};try{var g=w.abort;w.abort=function(){w&&Function.prototype.call.call(g,w);L("abort")}}catch(i){}b.async&&b.timeout>0&&setTimeout(function(){w&&!J&&L("timeout")},b.timeout);try{w.send(l||b.data==null?null:b.data)}catch(n){c.handleError(b,w,null,n);c.handleComplete(b,w,e,f)}b.async||L();return w}},param:function(a,b){var d=[],e=function(h,l){l=c.isFunction(l)?l():l;d[d.length]=
encodeURIComponent(h)+"="+encodeURIComponent(l)};if(b===B)b=c.ajaxSettings.traditional;if(c.isArray(a)||a.jquery)c.each(a,function(){e(this.name,this.value)});else for(var f in a)da(f,a[f],b,e);return d.join("&").replace(tb,"+")}});c.extend({active:0,lastModified:{},etag:{},handleError:function(a,b,d,e){a.error&&a.error.call(a.context,b,d,e);a.global&&c.triggerGlobal(a,"ajaxError",[b,a,e])},handleSuccess:function(a,b,d,e){a.success&&a.success.call(a.context,e,d,b);a.global&&c.triggerGlobal(a,"ajaxSuccess",
[b,a])},handleComplete:function(a,b,d){a.complete&&a.complete.call(a.context,b,d);a.global&&c.triggerGlobal(a,"ajaxComplete",[b,a]);a.global&&c.active--===1&&c.event.trigger("ajaxStop")},triggerGlobal:function(a,b,d){(a.context&&a.context.url==null?c(a.context):c.event).trigger(b,d)},httpSuccess:function(a){try{return!a.status&&location.protocol==="file:"||a.status>=200&&a.status<300||a.status===304||a.status===1223}catch(b){}return false},httpNotModified:function(a,b){var d=a.getResponseHeader("Last-Modified"),
e=a.getResponseHeader("Etag");if(d)c.lastModified[b]=d;if(e)c.etag[b]=e;return a.status===304},httpData:function(a,b,d){var e=a.getResponseHeader("content-type")||"",f=b==="xml"||!b&&e.indexOf("xml")>=0;a=f?a.responseXML:a.responseText;f&&a.documentElement.nodeName==="parsererror"&&c.error("parsererror");if(d&&d.dataFilter)a=d.dataFilter(a,b);if(typeof a==="string")if(b==="json"||!b&&e.indexOf("json")>=0)a=c.parseJSON(a);else if(b==="script"||!b&&e.indexOf("javascript")>=0)c.globalEval(a);return a}});
if(E.ActiveXObject)c.ajaxSettings.xhr=function(){if(E.location.protocol!=="file:")try{return new E.XMLHttpRequest}catch(a){}try{return new E.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}};c.support.ajax=!!c.ajaxSettings.xhr();var ea={},vb=/^(?:toggle|show|hide)$/,wb=/^([+\-]=)?([\d+.\-]+)(.*)$/,ba,pa=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];c.fn.extend({show:function(a,b,d){if(a||a===0)return this.animate(S("show",
3),a,b,d);else{d=0;for(var e=this.length;d<e;d++){a=this[d];b=a.style.display;if(!c.data(a,"olddisplay")&&b==="none")b=a.style.display="";b===""&&c.css(a,"display")==="none"&&c.data(a,"olddisplay",qa(a.nodeName))}for(d=0;d<e;d++){a=this[d];b=a.style.display;if(b===""||b==="none")a.style.display=c.data(a,"olddisplay")||""}return this}},hide:function(a,b,d){if(a||a===0)return this.animate(S("hide",3),a,b,d);else{a=0;for(b=this.length;a<b;a++){d=c.css(this[a],"display");d!=="none"&&c.data(this[a],"olddisplay",
d)}for(a=0;a<b;a++)this[a].style.display="none";return this}},_toggle:c.fn.toggle,toggle:function(a,b,d){var e=typeof a==="boolean";if(c.isFunction(a)&&c.isFunction(b))this._toggle.apply(this,arguments);else a==null||e?this.each(function(){var f=e?a:c(this).is(":hidden");c(this)[f?"show":"hide"]()}):this.animate(S("toggle",3),a,b,d);return this},fadeTo:function(a,b,d,e){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,d,e)},animate:function(a,b,d,e){var f=c.speed(b,
d,e);if(c.isEmptyObject(a))return this.each(f.complete);return this[f.queue===false?"each":"queue"](function(){var h=c.extend({},f),l,k=this.nodeType===1,o=k&&c(this).is(":hidden"),x=this;for(l in a){var r=c.camelCase(l);if(l!==r){a[r]=a[l];delete a[l];l=r}if(a[l]==="hide"&&o||a[l]==="show"&&!o)return h.complete.call(this);if(k&&(l==="height"||l==="width")){h.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY];if(c.css(this,"display")==="inline"&&c.css(this,"float")==="none")if(c.support.inlineBlockNeedsLayout)if(qa(this.nodeName)===
"inline")this.style.display="inline-block";else{this.style.display="inline";this.style.zoom=1}else this.style.display="inline-block"}if(c.isArray(a[l])){(h.specialEasing=h.specialEasing||{})[l]=a[l][1];a[l]=a[l][0]}}if(h.overflow!=null)this.style.overflow="hidden";h.curAnim=c.extend({},a);c.each(a,function(A,C){var J=new c.fx(x,h,A);if(vb.test(C))J[C==="toggle"?o?"show":"hide":C](a);else{var w=wb.exec(C),I=J.cur()||0;if(w){var L=parseFloat(w[2]),g=w[3]||"px";if(g!=="px"){c.style(x,A,(L||1)+g);I=(L||
1)/J.cur()*I;c.style(x,A,I+g)}if(w[1])L=(w[1]==="-="?-1:1)*L+I;J.custom(I,L,g)}else J.custom(I,C,"")}});return true})},stop:function(a,b){var d=c.timers;a&&this.queue([]);this.each(function(){for(var e=d.length-1;e>=0;e--)if(d[e].elem===this){b&&d[e](true);d.splice(e,1)}});b||this.dequeue();return this}});c.each({slideDown:S("show",1),slideUp:S("hide",1),slideToggle:S("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){c.fn[a]=function(d,e,f){return this.animate(b,
d,e,f)}});c.extend({speed:function(a,b,d){var e=a&&typeof a==="object"?c.extend({},a):{complete:d||!d&&b||c.isFunction(a)&&a,duration:a,easing:d&&b||b&&!c.isFunction(b)&&b};e.duration=c.fx.off?0:typeof e.duration==="number"?e.duration:e.duration in c.fx.speeds?c.fx.speeds[e.duration]:c.fx.speeds._default;e.old=e.complete;e.complete=function(){e.queue!==false&&c(this).dequeue();c.isFunction(e.old)&&e.old.call(this)};return e},easing:{linear:function(a,b,d,e){return d+e*a},swing:function(a,b,d,e){return(-Math.cos(a*
Math.PI)/2+0.5)*e+d}},timers:[],fx:function(a,b,d){this.options=b;this.elem=a;this.prop=d;if(!b.orig)b.orig={}}});c.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this);(c.fx.step[this.prop]||c.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a=parseFloat(c.css(this.elem,this.prop));return a&&a>-1E4?a:0},custom:function(a,b,d){function e(l){return f.step(l)}
var f=this,h=c.fx;this.startTime=c.now();this.start=a;this.end=b;this.unit=d||this.unit||"px";this.now=this.start;this.pos=this.state=0;e.elem=this.elem;if(e()&&c.timers.push(e)&&!ba)ba=setInterval(h.tick,h.interval)},show:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.show=true;this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur());c(this.elem).show()},hide:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.hide=true;
this.custom(this.cur(),0)},step:function(a){var b=c.now(),d=true;if(a||b>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;for(var e in this.options.curAnim)if(this.options.curAnim[e]!==true)d=false;if(d){if(this.options.overflow!=null&&!c.support.shrinkWrapBlocks){var f=this.elem,h=this.options;c.each(["","X","Y"],function(k,o){f.style["overflow"+o]=h.overflow[k]})}this.options.hide&&c(this.elem).hide();if(this.options.hide||
this.options.show)for(var l in this.options.curAnim)c.style(this.elem,l,this.options.orig[l]);this.options.complete.call(this.elem)}return false}else{a=b-this.startTime;this.state=a/this.options.duration;b=this.options.easing||(c.easing.swing?"swing":"linear");this.pos=c.easing[this.options.specialEasing&&this.options.specialEasing[this.prop]||b](this.state,a,0,1,this.options.duration);this.now=this.start+(this.end-this.start)*this.pos;this.update()}return true}};c.extend(c.fx,{tick:function(){for(var a=
c.timers,b=0;b<a.length;b++)a[b]()||a.splice(b--,1);a.length||c.fx.stop()},interval:13,stop:function(){clearInterval(ba);ba=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){c.style(a.elem,"opacity",a.now)},_default:function(a){if(a.elem.style&&a.elem.style[a.prop]!=null)a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit;else a.elem[a.prop]=a.now}}});if(c.expr&&c.expr.filters)c.expr.filters.animated=function(a){return c.grep(c.timers,function(b){return a===
b.elem}).length};var xb=/^t(?:able|d|h)$/i,Ia=/^(?:body|html)$/i;c.fn.offset="getBoundingClientRect"in t.documentElement?function(a){var b=this[0],d;if(a)return this.each(function(l){c.offset.setOffset(this,a,l)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);try{d=b.getBoundingClientRect()}catch(e){}var f=b.ownerDocument,h=f.documentElement;if(!d||!c.contains(h,b))return d||{top:0,left:0};b=f.body;f=fa(f);return{top:d.top+(f.pageYOffset||c.support.boxModel&&
h.scrollTop||b.scrollTop)-(h.clientTop||b.clientTop||0),left:d.left+(f.pageXOffset||c.support.boxModel&&h.scrollLeft||b.scrollLeft)-(h.clientLeft||b.clientLeft||0)}}:function(a){var b=this[0];if(a)return this.each(function(x){c.offset.setOffset(this,a,x)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);c.offset.initialize();var d,e=b.offsetParent,f=b.ownerDocument,h=f.documentElement,l=f.body;d=(f=f.defaultView)?f.getComputedStyle(b,null):b.currentStyle;
for(var k=b.offsetTop,o=b.offsetLeft;(b=b.parentNode)&&b!==l&&b!==h;){if(c.offset.supportsFixedPosition&&d.position==="fixed")break;d=f?f.getComputedStyle(b,null):b.currentStyle;k-=b.scrollTop;o-=b.scrollLeft;if(b===e){k+=b.offsetTop;o+=b.offsetLeft;if(c.offset.doesNotAddBorder&&!(c.offset.doesAddBorderForTableAndCells&&xb.test(b.nodeName))){k+=parseFloat(d.borderTopWidth)||0;o+=parseFloat(d.borderLeftWidth)||0}e=b.offsetParent}if(c.offset.subtractsBorderForOverflowNotVisible&&d.overflow!=="visible"){k+=
parseFloat(d.borderTopWidth)||0;o+=parseFloat(d.borderLeftWidth)||0}d=d}if(d.position==="relative"||d.position==="static"){k+=l.offsetTop;o+=l.offsetLeft}if(c.offset.supportsFixedPosition&&d.position==="fixed"){k+=Math.max(h.scrollTop,l.scrollTop);o+=Math.max(h.scrollLeft,l.scrollLeft)}return{top:k,left:o}};c.offset={initialize:function(){var a=t.body,b=t.createElement("div"),d,e,f,h=parseFloat(c.css(a,"marginTop"))||0;c.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",
height:"1px",visibility:"hidden"});b.innerHTML="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";a.insertBefore(b,a.firstChild);d=b.firstChild;e=d.firstChild;f=d.nextSibling.firstChild.firstChild;this.doesNotAddBorder=e.offsetTop!==5;this.doesAddBorderForTableAndCells=
f.offsetTop===5;e.style.position="fixed";e.style.top="20px";this.supportsFixedPosition=e.offsetTop===20||e.offsetTop===15;e.style.position=e.style.top="";d.style.overflow="hidden";d.style.position="relative";this.subtractsBorderForOverflowNotVisible=e.offsetTop===-5;this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==h;a.removeChild(b);c.offset.initialize=c.noop},bodyOffset:function(a){var b=a.offsetTop,d=a.offsetLeft;c.offset.initialize();if(c.offset.doesNotIncludeMarginInBodyOffset){b+=parseFloat(c.css(a,
"marginTop"))||0;d+=parseFloat(c.css(a,"marginLeft"))||0}return{top:b,left:d}},setOffset:function(a,b,d){var e=c.css(a,"position");if(e==="static")a.style.position="relative";var f=c(a),h=f.offset(),l=c.css(a,"top"),k=c.css(a,"left"),o=e==="absolute"&&c.inArray("auto",[l,k])>-1;e={};var x={};if(o)x=f.position();l=o?x.top:parseInt(l,10)||0;k=o?x.left:parseInt(k,10)||0;if(c.isFunction(b))b=b.call(a,d,h);if(b.top!=null)e.top=b.top-h.top+l;if(b.left!=null)e.left=b.left-h.left+k;"using"in b?b.using.call(a,
e):f.css(e)}};c.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),d=this.offset(),e=Ia.test(b[0].nodeName)?{top:0,left:0}:b.offset();d.top-=parseFloat(c.css(a,"marginTop"))||0;d.left-=parseFloat(c.css(a,"marginLeft"))||0;e.top+=parseFloat(c.css(b[0],"borderTopWidth"))||0;e.left+=parseFloat(c.css(b[0],"borderLeftWidth"))||0;return{top:d.top-e.top,left:d.left-e.left}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||t.body;a&&!Ia.test(a.nodeName)&&
c.css(a,"position")==="static";)a=a.offsetParent;return a})}});c.each(["Left","Top"],function(a,b){var d="scroll"+b;c.fn[d]=function(e){var f=this[0],h;if(!f)return null;if(e!==B)return this.each(function(){if(h=fa(this))h.scrollTo(!a?e:c(h).scrollLeft(),a?e:c(h).scrollTop());else this[d]=e});else return(h=fa(f))?"pageXOffset"in h?h[a?"pageYOffset":"pageXOffset"]:c.support.boxModel&&h.document.documentElement[d]||h.document.body[d]:f[d]}});c.each(["Height","Width"],function(a,b){var d=b.toLowerCase();
c.fn["inner"+b]=function(){return this[0]?parseFloat(c.css(this[0],d,"padding")):null};c.fn["outer"+b]=function(e){return this[0]?parseFloat(c.css(this[0],d,e?"margin":"border")):null};c.fn[d]=function(e){var f=this[0];if(!f)return e==null?null:this;if(c.isFunction(e))return this.each(function(l){var k=c(this);k[d](e.call(this,l,k[d]()))});if(c.isWindow(f))return f.document.compatMode==="CSS1Compat"&&f.document.documentElement["client"+b]||f.document.body["client"+b];else if(f.nodeType===9)return Math.max(f.documentElement["client"+
b],f.body["scroll"+b],f.documentElement["scroll"+b],f.body["offset"+b],f.documentElement["offset"+b]);else if(e===B){f=c.css(f,d);var h=parseFloat(f);return c.isNaN(h)?f:h}else return this.css(d,typeof e==="string"?e:e+"px")}})})(window);

View File

@@ -0,0 +1 @@
var _msg_pop_height=240;function _message_node(id){return document.getElementById(id)}function _message_child(p,c){var pdom=_message_node(p);var nodes=pdom.childNodes;var cdom=false;for(var i=0;i<nodes.length;i++){if(nodes[i].tagName==c.toUpperCase()){cdom=nodes[i];break}}return cdom}function _message_child_attr_add(p,id,type){var pdom=_message_node(p);var nodes=pdom.getElementsByTagName("a");var fn=function(){_msg_item_click_count(id,type)};for(var i=0;i<nodes.length;i++){url=nodes[i].href;if(url.toLowerCase().indexOf("http://")==0||url.toLowerCase().indexOf("https://")==0){if(nodes[i].addEventListener){nodes[i].addEventListener("click",fn,false)}else{if(nodes[i].attachEvent){nodes[i].attachEvent("onclick",fn)}}}}}function _message_callScript(url,loaded,error,charset){var script=document.createElement("script");if(typeof charset=="string"){script.charset=charset}script.onreadystatechange=function(){switch(this.readyState){case"complete":case"loaded":if(typeof loaded=="function"){loaded()}if(script.parentNode){script.parentNode.removeChild(script)}break}};script.onload=function(){if(typeof loaded=="function"){loaded()}if(script.parentNode){script.parentNode.removeChild(script)}};script.onerror=function(){if(typeof error=="function"){error()}if(script.parentNode){script.parentNode.removeChild(script)}};script.type="text/javascript";script.defer="true";script.src=url;var parent=document.getElementsByTagName("HEAD")[0]||document.documentElement;if(parent&&parent.insertBefore){parent.insertBefore(script,parent.firstChild)}}function _message_tips_pop(act){var MsgPop=_message_child("_popup_msg_container","div");var MsgPop=null==MsgPop?document.getElementById("_popup_msg_container"):MsgPop;var popH=parseInt(MsgPop.clientHeight);if(act=="up"){MsgPop.style.display="block";show=setInterval("_message_changeH('up')",5)}if(act=="down"){hide=setInterval("_message_changeH('down')",5)}}function _message_changeH(str){var MsgPop=_message_child("_popup_msg_container","div");var MsgPop=null==MsgPop?document.getElementById("_popup_msg_container"):MsgPop;var popH=parseInt(MsgPop.clientHeight);if(str=="up"){if(popH<_msg_pop_height){MsgPop.style.height=(popH+2).toString()+"px"}else{clearInterval(show)}}if(str=="down"){if(popH>=2){MsgPop.style.height=(popH-4).toString()+"px"}else{MsgPop.style.display="none";clearInterval(hide)}}}var _msg_server="message.csdn.net";if(_message_get_search_args("_msg_local")==1){_msg_server="local.message.csdn.net"}var p="1=1";if(window.location.search.indexOf("?")>-1){var p=window.location.search.substring(1)}function _msg_item_click_count(id,type){var pv=document.createElement("img");var rand=Math.ceil(Math.random()*10000);pv.src="http://"+_msg_server+"/shm/count_click.php?id="+id+"&t="+type+"#"+rand;pv.style.display="none";document.body.appendChild(pv)}function _message_callback(data){if(data.id>0){var css=document.createElement("link");css.href=data.css;css.rel="stylesheet";css.type="text/css";document.body.appendChild(css);var container=document.createElement("div");container.style.display="block";container.id="_popup_msg_container";container.innerHTML=data.content;document.body.appendChild(container);if(!data.no_count_click){_message_child_attr_add("_popup_msg_container",data.id,data.types)}var MsgPop=_message_child("_popup_msg_container","div");if(MsgPop){spheight=MsgPop.getAttribute("height");if(spheight){spheight=spheight.replace("px","");if(isNaN(spheight)==false){_msg_pop_height=spheight}}MsgPop.style.display="none";MsgPop.style.height="0px"}setTimeout("_message_tips_pop('up')",100);if(!data.no_count_view){var pv=document.createElement("img");pv.src="http://"+_msg_server+"/shm/count_new.php?id="+data.id+"&t="+data.types;pv.style.display="none";document.body.appendChild(pv)}}}function _message_get_search_args(qkey){var args=new Object();var query=document.location.search.substring(1);var ret="";var pairs=query.split("&");for(var i=0;i<pairs.length;i++){var pos=pairs[i].indexOf("=");if(pos==-1){continue}var argname=pairs[i].substring(0,pos);var value=pairs[i].substring(pos+1);args[argname]=unescape(value);ret=unescape(value);break}return ret}window.onload=function(){_message_callScript("http://"+_msg_server+"/shm/msg_new.php?"+p+"&jsoncallback=_message_callback")};

View File

@@ -0,0 +1,43 @@
body{/*margin:0; padding:0;*/}
/* public top */
.nav_top_2011{width:auto; min-width:960px; height:27px; margin:0 0 1px 0; padding:0; /*border-bottom:1px solid #ccc;*/ background:#fff; font:normal 12px/28px Helvetica, Tahoma, Arial, sans-serif;}
/* login information */
.nav_top_2011 p{float:right; margin:0; padding:0; text-align:right;}
.nav_top_2011 p a{margin:0 8px;}
.nav_top_2011 p a:link,
.nav_top_2011 p a:visited{color:#333; text-decoration:none;}
.nav_top_2011 p a:hover,
.nav_top_2011 p a:active{color:#f00; text-decoration:none;}
.nav_top_2011 p em{padding:0 6px; color:#f00; font-style:normal; font-weight:bold;}
.nav_top_2011 p a.notice_num{/*display:inline-block;*/ width:auto; height:11px; /*overflow:hidden;*/ margin:0 20px 0 0; padding:2px 6px; border-radius:3px; -webkit-border-radius:3px; -moz-border-radius:3px; -khtml-border-radius:3px; background:#ddd; color:#666 !important; font-size:11px; line-height:11px; text-decoration:none;}
.nav_top_2011 p a.user{color:#f00; font-weight:bold; text-decoration:none;}
.nav_top_2011 p a.red{color:#f00;}
/* channel */
.nav_top_2011 ul{float:left; margin:0; padding:0 0 0 9px; text-align:left;}
.nav_top_2011 ul li{float:left; margin-left:0; padding:0 16px 0 0; list-style:none;}
.nav_top_2011 ul li a{display:inline-block; width:auto; height:28px; padding:0;}
.nav_top_2011 ul li a:link,
.nav_top_2011 ul li a:visited{color:#333; text-decoration:none;}
.nav_top_2011 ul li a:hover,
.nav_top_2011 ul li a:active{color:#f00; text-decoration:none;}
.nav_top_2011 ul li.more{position:relative; z-index:501; width:auto; margin-left:-10px; text-align:left; font-weight:normal;}
.nav_top_2011 ul li.more a{width:34px; padding:0 10px; background:url(http://csdnimg.cn/pubnav/images/arrow_drop.gif) no-repeat 38px 12px; font-weight:normal;}
.nav_top_2011 ul li.more a.open{height:28px; padding:0 9px; border-right:solid 1px #ccc; border-left:solid 1px #ccc;}
.nav_top_2011 ul li.more h2{position:relative; z-index:501; margin:0; font-weight:normal !important; font-size:12px; line-height:28px;}
.nav_top_2011 ul li.more h2.open{height:28px; padding:0 5px 0 9px; border-right:solid 1px #ccc; border-left:solid 1px #ccc; background:#fff;}
.nav_top_2011 ul li.more h2.open a{width:41px; height:28px; padding:0; background:#fff url(http://csdnimg.cn/pubnav/images/arrow_drop.gif) no-repeat 28px 12px;}
.nav_top_2011 ul li dl,
#topnav_hidlist{display:none; position:absolute; top:27px; left:0; z-index:500; margin:0; }
.nav_top_2011 ul li dt{margin:0; padding:0;}
.nav_top_2011 ul li dt a{width:34px; background:url(http://csdnimg.cn/pubnav/images/arrow_drop.gif) no-repeat 38px 12px;}
.nav_top_2011 ul li dd,
.nav_top_2011 ul li li{display:block; float:none; margin:0; padding:0; line-height:24px;}
.nav_top_2011 ul li.more dd a,
.nav_top_2011 ul li.more li a{display:block; width:auto; padding:0; background:none;}
.navbody { margin:0; padding:0;}
.navbody .nav_top_2011 { width:90px; min-width:90px; border:1px solid #ccc; background:#fff;height:176px;}
.navbody .nav_top_2011 ul li { padding:0; display:inline-block; width:76px;}

View File

@@ -0,0 +1,117 @@
;(function($){
$.fn.extend({
selection: function () {
var selectedValue = '';
var me = this[0];
if (document.selection) {
var range = document.selection.createRange();
selectedValue = range.text;
}
else if (typeof (me.selectionStart) == 'number') {
var start = me.selectionStart;
var end = me.selectionEnd;
if (start != end) {
selectedValue = me.value.substring(start, end);
}
}
return $.trim(selectedValue);
},
parseHtml: function (val) {
var me = this[0];
var value = $(this).val();
if (document.selection) {
var range = document.selection.createRange();
if(range.text){
range.text = val;
}else{
$(this).val(value + val);
}
}else if (typeof (me.selectionStart) == 'number') {
var start = me.selectionStart;
var end = me.selectionEnd;
var startVal = value.substring(0, start);
var endVal = value.substring(end);
$(this).val(startVal + val + endVal);
}
else
$(this).val(value + val);
me.selectionStart = me.selectionEnd = $(this).val().length;
me.focus();
}
});
})(jQuery);
jQuery.cookie = function(name, value, options) {
if (typeof value != 'undefined') { // name and value given, set cookie
options = options || {};
if (value === null) {
value = '';
options.expires = -1;
}
var expires = '';
if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
var date;
if (typeof options.expires == 'number') {
date = new Date();
date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));
} else {
date = options.expires;
}
expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE
}
// CAUTION: Needed to parenthesize options.path and options.domain
// in the following expressions, otherwise they evaluate to undefined
// in the packed version for some reason...
var path = options.path ? '; path=' + (options.path) : '';
var domain = options.domain ? '; domain=' + (options.domain) : '';
var secure = options.secure ? '; secure' : '';
document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
} else { // only name given, get cookie
var cookieValue = null;
if (document.cookie && document.cookie != '') {
var cookies = document.cookie.split(';');
for (var i = 0; i < cookies.length; i++) {
var cookie = jQuery.trim(cookies[i]);
// Does this cookie string begin with the name we want?
if (cookie.substring(0, name.length + 1) == (name + '=')) {
cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
break;
}
}
}
return cookieValue;
}
};
//创建遮罩层
jQuery.createMask = function () {
var height = document.documentElement.clientHeight;
var width = document.documentElement.clientWidth;
var bodyHeight = $("body").height();
if (bodyHeight > height) {
height = bodyHeight;
}
var mask = {};
if ($("#mask_div").length == 0) {
$("body").append('<div id="mask_div" style="position:absolute;top:0;left:0;filter:alpha(opacity=20);-moz-opacity:0.2;opacity:.2;"></div>')
}
mask = $("#mask_div");
mask.css({ "width": width, "height": height, "background": "#000" });
};
//移除遮罩层
jQuery.removeMask = function () {
$("#mask_div").remove();
};
Array.prototype.contain = function(val){
for(var i=0;i<this.length;i++){
if(this[i] === val){
return true;
}
}
return false;
}

Some files were not shown because too many files have changed in this diff Show More