Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
SRCT
roomlist
Commits
be3974a3
Commit
be3974a3
authored
Oct 11, 2014
by
Daniel W Bond
Browse files
added default js files
parent
5681f930
Changes
2
Hide whitespace changes
Inline
Side-by-side
static/js/bootstrap.min.js
0 → 100644
View file @
be3974a3
/*!
* Bootstrap v3.2.0 (http://getbootstrap.com)
* Copyright 2011-2014 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
if
(
"
undefined
"
==
typeof
jQuery
)
throw
new
Error
(
"
Bootstrap's JavaScript requires jQuery
"
);
+
function
(
a
){
"
use strict
"
;
function
b
(){
var
a
=
document
.
createElement
(
"
bootstrap
"
),
b
=
{
WebkitTransition
:
"
webkitTransitionEnd
"
,
MozTransition
:
"
transitionend
"
,
OTransition
:
"
oTransitionEnd otransitionend
"
,
transition
:
"
transitionend
"
};
for
(
var
c
in
b
)
if
(
void
0
!==
a
.
style
[
c
])
return
{
end
:
b
[
c
]};
return
!
1
}
a
.
fn
.
emulateTransitionEnd
=
function
(
b
){
var
c
=!
1
,
d
=
this
;
a
(
this
).
one
(
"
bsTransitionEnd
"
,
function
(){
c
=!
0
});
var
e
=
function
(){
c
||
a
(
d
).
trigger
(
a
.
support
.
transition
.
end
)};
return
setTimeout
(
e
,
b
),
this
},
a
(
function
(){
a
.
support
.
transition
=
b
(),
a
.
support
.
transition
&&
(
a
.
event
.
special
.
bsTransitionEnd
=
{
bindType
:
a
.
support
.
transition
.
end
,
delegateType
:
a
.
support
.
transition
.
end
,
handle
:
function
(
b
){
return
a
(
b
.
target
).
is
(
this
)?
b
.
handleObj
.
handler
.
apply
(
this
,
arguments
):
void
0
}})})}(
jQuery
),
+
function
(
a
){
"
use strict
"
;
function
b
(
b
){
return
this
.
each
(
function
(){
var
c
=
a
(
this
),
e
=
c
.
data
(
"
bs.alert
"
);
e
||
c
.
data
(
"
bs.alert
"
,
e
=
new
d
(
this
)),
"
string
"
==
typeof
b
&&
e
[
b
].
call
(
c
)})}
var
c
=
'
[data-dismiss="alert"]
'
,
d
=
function
(
b
){
a
(
b
).
on
(
"
click
"
,
c
,
this
.
close
)};
d
.
VERSION
=
"
3.2.0
"
,
d
.
prototype
.
close
=
function
(
b
){
function
c
(){
f
.
detach
().
trigger
(
"
closed.bs.alert
"
).
remove
()}
var
d
=
a
(
this
),
e
=
d
.
attr
(
"
data-target
"
);
e
||
(
e
=
d
.
attr
(
"
href
"
),
e
=
e
&&
e
.
replace
(
/.*
(?=
#
[^\s]
*$
)
/
,
""
));
var
f
=
a
(
e
);
b
&&
b
.
preventDefault
(),
f
.
length
||
(
f
=
d
.
hasClass
(
"
alert
"
)?
d
:
d
.
parent
()),
f
.
trigger
(
b
=
a
.
Event
(
"
close.bs.alert
"
)),
b
.
isDefaultPrevented
()
||
(
f
.
removeClass
(
"
in
"
),
a
.
support
.
transition
&&
f
.
hasClass
(
"
fade
"
)?
f
.
one
(
"
bsTransitionEnd
"
,
c
).
emulateTransitionEnd
(
150
):
c
())};
var
e
=
a
.
fn
.
alert
;
a
.
fn
.
alert
=
b
,
a
.
fn
.
alert
.
Constructor
=
d
,
a
.
fn
.
alert
.
noConflict
=
function
(){
return
a
.
fn
.
alert
=
e
,
this
},
a
(
document
).
on
(
"
click.bs.alert.data-api
"
,
c
,
d
.
prototype
.
close
)}(
jQuery
),
+
function
(
a
){
"
use strict
"
;
function
b
(
b
){
return
this
.
each
(
function
(){
var
d
=
a
(
this
),
e
=
d
.
data
(
"
bs.button
"
),
f
=
"
object
"
==
typeof
b
&&
b
;
e
||
d
.
data
(
"
bs.button
"
,
e
=
new
c
(
this
,
f
)),
"
toggle
"
==
b
?
e
.
toggle
():
b
&&
e
.
setState
(
b
)})}
var
c
=
function
(
b
,
d
){
this
.
$element
=
a
(
b
),
this
.
options
=
a
.
extend
({},
c
.
DEFAULTS
,
d
),
this
.
isLoading
=!
1
};
c
.
VERSION
=
"
3.2.0
"
,
c
.
DEFAULTS
=
{
loadingText
:
"
loading...
"
},
c
.
prototype
.
setState
=
function
(
b
){
var
c
=
"
disabled
"
,
d
=
this
.
$element
,
e
=
d
.
is
(
"
input
"
)?
"
val
"
:
"
html
"
,
f
=
d
.
data
();
b
+=
"
Text
"
,
null
==
f
.
resetText
&&
d
.
data
(
"
resetText
"
,
d
[
e
]()),
d
[
e
](
null
==
f
[
b
]?
this
.
options
[
b
]:
f
[
b
]),
setTimeout
(
a
.
proxy
(
function
(){
"
loadingText
"
==
b
?(
this
.
isLoading
=!
0
,
d
.
addClass
(
c
).
attr
(
c
,
c
)):
this
.
isLoading
&&
(
this
.
isLoading
=!
1
,
d
.
removeClass
(
c
).
removeAttr
(
c
))},
this
),
0
)},
c
.
prototype
.
toggle
=
function
(){
var
a
=!
0
,
b
=
this
.
$element
.
closest
(
'
[data-toggle="buttons"]
'
);
if
(
b
.
length
){
var
c
=
this
.
$element
.
find
(
"
input
"
);
"
radio
"
==
c
.
prop
(
"
type
"
)
&&
(
c
.
prop
(
"
checked
"
)
&&
this
.
$element
.
hasClass
(
"
active
"
)?
a
=!
1
:
b
.
find
(
"
.active
"
).
removeClass
(
"
active
"
)),
a
&&
c
.
prop
(
"
checked
"
,
!
this
.
$element
.
hasClass
(
"
active
"
)).
trigger
(
"
change
"
)}
a
&&
this
.
$element
.
toggleClass
(
"
active
"
)};
var
d
=
a
.
fn
.
button
;
a
.
fn
.
button
=
b
,
a
.
fn
.
button
.
Constructor
=
c
,
a
.
fn
.
button
.
noConflict
=
function
(){
return
a
.
fn
.
button
=
d
,
this
},
a
(
document
).
on
(
"
click.bs.button.data-api
"
,
'
[data-toggle^="button"]
'
,
function
(
c
){
var
d
=
a
(
c
.
target
);
d
.
hasClass
(
"
btn
"
)
||
(
d
=
d
.
closest
(
"
.btn
"
)),
b
.
call
(
d
,
"
toggle
"
),
c
.
preventDefault
()})}(
jQuery
),
+
function
(
a
){
"
use strict
"
;
function
b
(
b
){
return
this
.
each
(
function
(){
var
d
=
a
(
this
),
e
=
d
.
data
(
"
bs.carousel
"
),
f
=
a
.
extend
({},
c
.
DEFAULTS
,
d
.
data
(),
"
object
"
==
typeof
b
&&
b
),
g
=
"
string
"
==
typeof
b
?
b
:
f
.
slide
;
e
||
d
.
data
(
"
bs.carousel
"
,
e
=
new
c
(
this
,
f
)),
"
number
"
==
typeof
b
?
e
.
to
(
b
):
g
?
e
[
g
]():
f
.
interval
&&
e
.
pause
().
cycle
()})}
var
c
=
function
(
b
,
c
){
this
.
$element
=
a
(
b
).
on
(
"
keydown.bs.carousel
"
,
a
.
proxy
(
this
.
keydown
,
this
)),
this
.
$indicators
=
this
.
$element
.
find
(
"
.carousel-indicators
"
),
this
.
options
=
c
,
this
.
paused
=
this
.
sliding
=
this
.
interval
=
this
.
$active
=
this
.
$items
=
null
,
"
hover
"
==
this
.
options
.
pause
&&
this
.
$element
.
on
(
"
mouseenter.bs.carousel
"
,
a
.
proxy
(
this
.
pause
,
this
)).
on
(
"
mouseleave.bs.carousel
"
,
a
.
proxy
(
this
.
cycle
,
this
))};
c
.
VERSION
=
"
3.2.0
"
,
c
.
DEFAULTS
=
{
interval
:
5
e3
,
pause
:
"
hover
"
,
wrap
:
!
0
},
c
.
prototype
.
keydown
=
function
(
a
){
switch
(
a
.
which
){
case
37
:
this
.
prev
();
break
;
case
39
:
this
.
next
();
break
;
default
:
return
}
a
.
preventDefault
()},
c
.
prototype
.
cycle
=
function
(
b
){
return
b
||
(
this
.
paused
=!
1
),
this
.
interval
&&
clearInterval
(
this
.
interval
),
this
.
options
.
interval
&&!
this
.
paused
&&
(
this
.
interval
=
setInterval
(
a
.
proxy
(
this
.
next
,
this
),
this
.
options
.
interval
)),
this
},
c
.
prototype
.
getItemIndex
=
function
(
a
){
return
this
.
$items
=
a
.
parent
().
children
(
"
.item
"
),
this
.
$items
.
index
(
a
||
this
.
$active
)},
c
.
prototype
.
to
=
function
(
b
){
var
c
=
this
,
d
=
this
.
getItemIndex
(
this
.
$active
=
this
.
$element
.
find
(
"
.item.active
"
));
return
b
>
this
.
$items
.
length
-
1
||
0
>
b
?
void
0
:
this
.
sliding
?
this
.
$element
.
one
(
"
slid.bs.carousel
"
,
function
(){
c
.
to
(
b
)}):
d
==
b
?
this
.
pause
().
cycle
():
this
.
slide
(
b
>
d
?
"
next
"
:
"
prev
"
,
a
(
this
.
$items
[
b
]))},
c
.
prototype
.
pause
=
function
(
b
){
return
b
||
(
this
.
paused
=!
0
),
this
.
$element
.
find
(
"
.next, .prev
"
).
length
&&
a
.
support
.
transition
&&
(
this
.
$element
.
trigger
(
a
.
support
.
transition
.
end
),
this
.
cycle
(
!
0
)),
this
.
interval
=
clearInterval
(
this
.
interval
),
this
},
c
.
prototype
.
next
=
function
(){
return
this
.
sliding
?
void
0
:
this
.
slide
(
"
next
"
)},
c
.
prototype
.
prev
=
function
(){
return
this
.
sliding
?
void
0
:
this
.
slide
(
"
prev
"
)},
c
.
prototype
.
slide
=
function
(
b
,
c
){
var
d
=
this
.
$element
.
find
(
"
.item.active
"
),
e
=
c
||
d
[
b
](),
f
=
this
.
interval
,
g
=
"
next
"
==
b
?
"
left
"
:
"
right
"
,
h
=
"
next
"
==
b
?
"
first
"
:
"
last
"
,
i
=
this
;
if
(
!
e
.
length
){
if
(
!
this
.
options
.
wrap
)
return
;
e
=
this
.
$element
.
find
(
"
.item
"
)[
h
]()}
if
(
e
.
hasClass
(
"
active
"
))
return
this
.
sliding
=!
1
;
var
j
=
e
[
0
],
k
=
a
.
Event
(
"
slide.bs.carousel
"
,{
relatedTarget
:
j
,
direction
:
g
});
if
(
this
.
$element
.
trigger
(
k
),
!
k
.
isDefaultPrevented
()){
if
(
this
.
sliding
=!
0
,
f
&&
this
.
pause
(),
this
.
$indicators
.
length
){
this
.
$indicators
.
find
(
"
.active
"
).
removeClass
(
"
active
"
);
var
l
=
a
(
this
.
$indicators
.
children
()[
this
.
getItemIndex
(
e
)]);
l
&&
l
.
addClass
(
"
active
"
)}
var
m
=
a
.
Event
(
"
slid.bs.carousel
"
,{
relatedTarget
:
j
,
direction
:
g
});
return
a
.
support
.
transition
&&
this
.
$element
.
hasClass
(
"
slide
"
)?(
e
.
addClass
(
b
),
e
[
0
].
offsetWidth
,
d
.
addClass
(
g
),
e
.
addClass
(
g
),
d
.
one
(
"
bsTransitionEnd
"
,
function
(){
e
.
removeClass
([
b
,
g
].
join
(
"
"
)).
addClass
(
"
active
"
),
d
.
removeClass
([
"
active
"
,
g
].
join
(
"
"
)),
i
.
sliding
=!
1
,
setTimeout
(
function
(){
i
.
$element
.
trigger
(
m
)},
0
)}).
emulateTransitionEnd
(
1
e3
*
d
.
css
(
"
transition-duration
"
).
slice
(
0
,
-
1
))):(
d
.
removeClass
(
"
active
"
),
e
.
addClass
(
"
active
"
),
this
.
sliding
=!
1
,
this
.
$element
.
trigger
(
m
)),
f
&&
this
.
cycle
(),
this
}};
var
d
=
a
.
fn
.
carousel
;
a
.
fn
.
carousel
=
b
,
a
.
fn
.
carousel
.
Constructor
=
c
,
a
.
fn
.
carousel
.
noConflict
=
function
(){
return
a
.
fn
.
carousel
=
d
,
this
},
a
(
document
).
on
(
"
click.bs.carousel.data-api
"
,
"
[data-slide], [data-slide-to]
"
,
function
(
c
){
var
d
,
e
=
a
(
this
),
f
=
a
(
e
.
attr
(
"
data-target
"
)
||
(
d
=
e
.
attr
(
"
href
"
))
&&
d
.
replace
(
/.*
(?=
#
[^\s]
+$
)
/
,
""
));
if
(
f
.
hasClass
(
"
carousel
"
)){
var
g
=
a
.
extend
({},
f
.
data
(),
e
.
data
()),
h
=
e
.
attr
(
"
data-slide-to
"
);
h
&&
(
g
.
interval
=!
1
),
b
.
call
(
f
,
g
),
h
&&
f
.
data
(
"
bs.carousel
"
).
to
(
h
),
c
.
preventDefault
()}}),
a
(
window
).
on
(
"
load
"
,
function
(){
a
(
'
[data-ride="carousel"]
'
).
each
(
function
(){
var
c
=
a
(
this
);
b
.
call
(
c
,
c
.
data
())})})}(
jQuery
),
+
function
(
a
){
"
use strict
"
;
function
b
(
b
){
return
this
.
each
(
function
(){
var
d
=
a
(
this
),
e
=
d
.
data
(
"
bs.collapse
"
),
f
=
a
.
extend
({},
c
.
DEFAULTS
,
d
.
data
(),
"
object
"
==
typeof
b
&&
b
);
!
e
&&
f
.
toggle
&&
"
show
"
==
b
&&
(
b
=!
b
),
e
||
d
.
data
(
"
bs.collapse
"
,
e
=
new
c
(
this
,
f
)),
"
string
"
==
typeof
b
&&
e
[
b
]()})}
var
c
=
function
(
b
,
d
){
this
.
$element
=
a
(
b
),
this
.
options
=
a
.
extend
({},
c
.
DEFAULTS
,
d
),
this
.
transitioning
=
null
,
this
.
options
.
parent
&&
(
this
.
$parent
=
a
(
this
.
options
.
parent
)),
this
.
options
.
toggle
&&
this
.
toggle
()};
c
.
VERSION
=
"
3.2.0
"
,
c
.
DEFAULTS
=
{
toggle
:
!
0
},
c
.
prototype
.
dimension
=
function
(){
var
a
=
this
.
$element
.
hasClass
(
"
width
"
);
return
a
?
"
width
"
:
"
height
"
},
c
.
prototype
.
show
=
function
(){
if
(
!
this
.
transitioning
&&!
this
.
$element
.
hasClass
(
"
in
"
)){
var
c
=
a
.
Event
(
"
show.bs.collapse
"
);
if
(
this
.
$element
.
trigger
(
c
),
!
c
.
isDefaultPrevented
()){
var
d
=
this
.
$parent
&&
this
.
$parent
.
find
(
"
> .panel > .in
"
);
if
(
d
&&
d
.
length
){
var
e
=
d
.
data
(
"
bs.collapse
"
);
if
(
e
&&
e
.
transitioning
)
return
;
b
.
call
(
d
,
"
hide
"
),
e
||
d
.
data
(
"
bs.collapse
"
,
null
)}
var
f
=
this
.
dimension
();
this
.
$element
.
removeClass
(
"
collapse
"
).
addClass
(
"
collapsing
"
)[
f
](
0
),
this
.
transitioning
=
1
;
var
g
=
function
(){
this
.
$element
.
removeClass
(
"
collapsing
"
).
addClass
(
"
collapse in
"
)[
f
](
""
),
this
.
transitioning
=
0
,
this
.
$element
.
trigger
(
"
shown.bs.collapse
"
)};
if
(
!
a
.
support
.
transition
)
return
g
.
call
(
this
);
var
h
=
a
.
camelCase
([
"
scroll
"
,
f
].
join
(
"
-
"
));
this
.
$element
.
one
(
"
bsTransitionEnd
"
,
a
.
proxy
(
g
,
this
)).
emulateTransitionEnd
(
350
)[
f
](
this
.
$element
[
0
][
h
])}}},
c
.
prototype
.
hide
=
function
(){
if
(
!
this
.
transitioning
&&
this
.
$element
.
hasClass
(
"
in
"
)){
var
b
=
a
.
Event
(
"
hide.bs.collapse
"
);
if
(
this
.
$element
.
trigger
(
b
),
!
b
.
isDefaultPrevented
()){
var
c
=
this
.
dimension
();
this
.
$element
[
c
](
this
.
$element
[
c
]())[
0
].
offsetHeight
,
this
.
$element
.
addClass
(
"
collapsing
"
).
removeClass
(
"
collapse
"
).
removeClass
(
"
in
"
),
this
.
transitioning
=
1
;
var
d
=
function
(){
this
.
transitioning
=
0
,
this
.
$element
.
trigger
(
"
hidden.bs.collapse
"
).
removeClass
(
"
collapsing
"
).
addClass
(
"
collapse
"
)};
return
a
.
support
.
transition
?
void
this
.
$element
[
c
](
0
).
one
(
"
bsTransitionEnd
"
,
a
.
proxy
(
d
,
this
)).
emulateTransitionEnd
(
350
):
d
.
call
(
this
)}}},
c
.
prototype
.
toggle
=
function
(){
this
[
this
.
$element
.
hasClass
(
"
in
"
)?
"
hide
"
:
"
show
"
]()};
var
d
=
a
.
fn
.
collapse
;
a
.
fn
.
collapse
=
b
,
a
.
fn
.
collapse
.
Constructor
=
c
,
a
.
fn
.
collapse
.
noConflict
=
function
(){
return
a
.
fn
.
collapse
=
d
,
this
},
a
(
document
).
on
(
"
click.bs.collapse.data-api
"
,
'
[data-toggle="collapse"]
'
,
function
(
c
){
var
d
,
e
=
a
(
this
),
f
=
e
.
attr
(
"
data-target
"
)
||
c
.
preventDefault
()
||
(
d
=
e
.
attr
(
"
href
"
))
&&
d
.
replace
(
/.*
(?=
#
[^\s]
+$
)
/
,
""
),
g
=
a
(
f
),
h
=
g
.
data
(
"
bs.collapse
"
),
i
=
h
?
"
toggle
"
:
e
.
data
(),
j
=
e
.
attr
(
"
data-parent
"
),
k
=
j
&&
a
(
j
);
h
&&
h
.
transitioning
||
(
k
&&
k
.
find
(
'
[data-toggle="collapse"][data-parent="
'
+
j
+
'
"]
'
).
not
(
e
).
addClass
(
"
collapsed
"
),
e
[
g
.
hasClass
(
"
in
"
)?
"
addClass
"
:
"
removeClass
"
](
"
collapsed
"
)),
b
.
call
(
g
,
i
)})}(
jQuery
),
+
function
(
a
){
"
use strict
"
;
function
b
(
b
){
b
&&
3
===
b
.
which
||
(
a
(
e
).
remove
(),
a
(
f
).
each
(
function
(){
var
d
=
c
(
a
(
this
)),
e
=
{
relatedTarget
:
this
};
d
.
hasClass
(
"
open
"
)
&&
(
d
.
trigger
(
b
=
a
.
Event
(
"
hide.bs.dropdown
"
,
e
)),
b
.
isDefaultPrevented
()
||
d
.
removeClass
(
"
open
"
).
trigger
(
"
hidden.bs.dropdown
"
,
e
))}))}
function
c
(
b
){
var
c
=
b
.
attr
(
"
data-target
"
);
c
||
(
c
=
b
.
attr
(
"
href
"
),
c
=
c
&&
/#
[
A-Za-z
]
/
.
test
(
c
)
&&
c
.
replace
(
/.*
(?=
#
[^\s]
*$
)
/
,
""
));
var
d
=
c
&&
a
(
c
);
return
d
&&
d
.
length
?
d
:
b
.
parent
()}
function
d
(
b
){
return
this
.
each
(
function
(){
var
c
=
a
(
this
),
d
=
c
.
data
(
"
bs.dropdown
"
);
d
||
c
.
data
(
"
bs.dropdown
"
,
d
=
new
g
(
this
)),
"
string
"
==
typeof
b
&&
d
[
b
].
call
(
c
)})}
var
e
=
"
.dropdown-backdrop
"
,
f
=
'
[data-toggle="dropdown"]
'
,
g
=
function
(
b
){
a
(
b
).
on
(
"
click.bs.dropdown
"
,
this
.
toggle
)};
g
.
VERSION
=
"
3.2.0
"
,
g
.
prototype
.
toggle
=
function
(
d
){
var
e
=
a
(
this
);
if
(
!
e
.
is
(
"
.disabled, :disabled
"
)){
var
f
=
c
(
e
),
g
=
f
.
hasClass
(
"
open
"
);
if
(
b
(),
!
g
){
"
ontouchstart
"
in
document
.
documentElement
&&!
f
.
closest
(
"
.navbar-nav
"
).
length
&&
a
(
'
<div class="dropdown-backdrop"/>
'
).
insertAfter
(
a
(
this
)).
on
(
"
click
"
,
b
);
var
h
=
{
relatedTarget
:
this
};
if
(
f
.
trigger
(
d
=
a
.
Event
(
"
show.bs.dropdown
"
,
h
)),
d
.
isDefaultPrevented
())
return
;
e
.
trigger
(
"
focus
"
),
f
.
toggleClass
(
"
open
"
).
trigger
(
"
shown.bs.dropdown
"
,
h
)}
return
!
1
}},
g
.
prototype
.
keydown
=
function
(
b
){
if
(
/
(
38|40|27
)
/
.
test
(
b
.
keyCode
)){
var
d
=
a
(
this
);
if
(
b
.
preventDefault
(),
b
.
stopPropagation
(),
!
d
.
is
(
"
.disabled, :disabled
"
)){
var
e
=
c
(
d
),
g
=
e
.
hasClass
(
"
open
"
);
if
(
!
g
||
g
&&
27
==
b
.
keyCode
)
return
27
==
b
.
which
&&
e
.
find
(
f
).
trigger
(
"
focus
"
),
d
.
trigger
(
"
click
"
);
var
h
=
"
li:not(.divider):visible a
"
,
i
=
e
.
find
(
'
[role="menu"]
'
+
h
+
'
, [role="listbox"]
'
+
h
);
if
(
i
.
length
){
var
j
=
i
.
index
(
i
.
filter
(
"
:focus
"
));
38
==
b
.
keyCode
&&
j
>
0
&&
j
--
,
40
==
b
.
keyCode
&&
j
<
i
.
length
-
1
&&
j
++
,
~
j
||
(
j
=
0
),
i
.
eq
(
j
).
trigger
(
"
focus
"
)}}}};
var
h
=
a
.
fn
.
dropdown
;
a
.
fn
.
dropdown
=
d
,
a
.
fn
.
dropdown
.
Constructor
=
g
,
a
.
fn
.
dropdown
.
noConflict
=
function
(){
return
a
.
fn
.
dropdown
=
h
,
this
},
a
(
document
).
on
(
"
click.bs.dropdown.data-api
"
,
b
).
on
(
"
click.bs.dropdown.data-api
"
,
"
.dropdown form
"
,
function
(
a
){
a
.
stopPropagation
()}).
on
(
"
click.bs.dropdown.data-api
"
,
f
,
g
.
prototype
.
toggle
).
on
(
"
keydown.bs.dropdown.data-api
"
,
f
+
'
, [role="menu"], [role="listbox"]
'
,
g
.
prototype
.
keydown
)}(
jQuery
),
+
function
(
a
){
"
use strict
"
;
function
b
(
b
,
d
){
return
this
.
each
(
function
(){
var
e
=
a
(
this
),
f
=
e
.
data
(
"
bs.modal
"
),
g
=
a
.
extend
({},
c
.
DEFAULTS
,
e
.
data
(),
"
object
"
==
typeof
b
&&
b
);
f
||
e
.
data
(
"
bs.modal
"
,
f
=
new
c
(
this
,
g
)),
"
string
"
==
typeof
b
?
f
[
b
](
d
):
g
.
show
&&
f
.
show
(
d
)})}
var
c
=
function
(
b
,
c
){
this
.
options
=
c
,
this
.
$body
=
a
(
document
.
body
),
this
.
$element
=
a
(
b
),
this
.
$backdrop
=
this
.
isShown
=
null
,
this
.
scrollbarWidth
=
0
,
this
.
options
.
remote
&&
this
.
$element
.
find
(
"
.modal-content
"
).
load
(
this
.
options
.
remote
,
a
.
proxy
(
function
(){
this
.
$element
.
trigger
(
"
loaded.bs.modal
"
)},
this
))};
c
.
VERSION
=
"
3.2.0
"
,
c
.
DEFAULTS
=
{
backdrop
:
!
0
,
keyboard
:
!
0
,
show
:
!
0
},
c
.
prototype
.
toggle
=
function
(
a
){
return
this
.
isShown
?
this
.
hide
():
this
.
show
(
a
)},
c
.
prototype
.
show
=
function
(
b
){
var
c
=
this
,
d
=
a
.
Event
(
"
show.bs.modal
"
,{
relatedTarget
:
b
});
this
.
$element
.
trigger
(
d
),
this
.
isShown
||
d
.
isDefaultPrevented
()
||
(
this
.
isShown
=!
0
,
this
.
checkScrollbar
(),
this
.
$body
.
addClass
(
"
modal-open
"
),
this
.
setScrollbar
(),
this
.
escape
(),
this
.
$element
.
on
(
"
click.dismiss.bs.modal
"
,
'
[data-dismiss="modal"]
'
,
a
.
proxy
(
this
.
hide
,
this
)),
this
.
backdrop
(
function
(){
var
d
=
a
.
support
.
transition
&&
c
.
$element
.
hasClass
(
"
fade
"
);
c
.
$element
.
parent
().
length
||
c
.
$element
.
appendTo
(
c
.
$body
),
c
.
$element
.
show
().
scrollTop
(
0
),
d
&&
c
.
$element
[
0
].
offsetWidth
,
c
.
$element
.
addClass
(
"
in
"
).
attr
(
"
aria-hidden
"
,
!
1
),
c
.
enforceFocus
();
var
e
=
a
.
Event
(
"
shown.bs.modal
"
,{
relatedTarget
:
b
});
d
?
c
.
$element
.
find
(
"
.modal-dialog
"
).
one
(
"
bsTransitionEnd
"
,
function
(){
c
.
$element
.
trigger
(
"
focus
"
).
trigger
(
e
)}).
emulateTransitionEnd
(
300
):
c
.
$element
.
trigger
(
"
focus
"
).
trigger
(
e
)}))},
c
.
prototype
.
hide
=
function
(
b
){
b
&&
b
.
preventDefault
(),
b
=
a
.
Event
(
"
hide.bs.modal
"
),
this
.
$element
.
trigger
(
b
),
this
.
isShown
&&!
b
.
isDefaultPrevented
()
&&
(
this
.
isShown
=!
1
,
this
.
$body
.
removeClass
(
"
modal-open
"
),
this
.
resetScrollbar
(),
this
.
escape
(),
a
(
document
).
off
(
"
focusin.bs.modal
"
),
this
.
$element
.
removeClass
(
"
in
"
).
attr
(
"
aria-hidden
"
,
!
0
).
off
(
"
click.dismiss.bs.modal
"
),
a
.
support
.
transition
&&
this
.
$element
.
hasClass
(
"
fade
"
)?
this
.
$element
.
one
(
"
bsTransitionEnd
"
,
a
.
proxy
(
this
.
hideModal
,
this
)).
emulateTransitionEnd
(
300
):
this
.
hideModal
())},
c
.
prototype
.
enforceFocus
=
function
(){
a
(
document
).
off
(
"
focusin.bs.modal
"
).
on
(
"
focusin.bs.modal
"
,
a
.
proxy
(
function
(
a
){
this
.
$element
[
0
]
===
a
.
target
||
this
.
$element
.
has
(
a
.
target
).
length
||
this
.
$element
.
trigger
(
"
focus
"
)},
this
))},
c
.
prototype
.
escape
=
function
(){
this
.
isShown
&&
this
.
options
.
keyboard
?
this
.
$element
.
on
(
"
keyup.dismiss.bs.modal
"
,
a
.
proxy
(
function
(
a
){
27
==
a
.
which
&&
this
.
hide
()},
this
)):
this
.
isShown
||
this
.
$element
.
off
(
"
keyup.dismiss.bs.modal
"
)},
c
.
prototype
.
hideModal
=
function
(){
var
a
=
this
;
this
.
$element
.
hide
(),
this
.
backdrop
(
function
(){
a
.
$element
.
trigger
(
"
hidden.bs.modal
"
)})},
c
.
prototype
.
removeBackdrop
=
function
(){
this
.
$backdrop
&&
this
.
$backdrop
.
remove
(),
this
.
$backdrop
=
null
},
c
.
prototype
.
backdrop
=
function
(
b
){
var
c
=
this
,
d
=
this
.
$element
.
hasClass
(
"
fade
"
)?
"
fade
"
:
""
;
if
(
this
.
isShown
&&
this
.
options
.
backdrop
){
var
e
=
a
.
support
.
transition
&&
d
;
if
(
this
.
$backdrop
=
a
(
'
<div class="modal-backdrop
'
+
d
+
'
" />
'
).
appendTo
(
this
.
$body
),
this
.
$element
.
on
(
"
click.dismiss.bs.modal
"
,
a
.
proxy
(
function
(
a
){
a
.
target
===
a
.
currentTarget
&&
(
"
static
"
==
this
.
options
.
backdrop
?
this
.
$element
[
0
].
focus
.
call
(
this
.
$element
[
0
]):
this
.
hide
.
call
(
this
))},
this
)),
e
&&
this
.
$backdrop
[
0
].
offsetWidth
,
this
.
$backdrop
.
addClass
(
"
in
"
),
!
b
)
return
;
e
?
this
.
$backdrop
.
one
(
"
bsTransitionEnd
"
,
b
).
emulateTransitionEnd
(
150
):
b
()}
else
if
(
!
this
.
isShown
&&
this
.
$backdrop
){
this
.
$backdrop
.
removeClass
(
"
in
"
);
var
f
=
function
(){
c
.
removeBackdrop
(),
b
&&
b
()};
a
.
support
.
transition
&&
this
.
$element
.
hasClass
(
"
fade
"
)?
this
.
$backdrop
.
one
(
"
bsTransitionEnd
"
,
f
).
emulateTransitionEnd
(
150
):
f
()}
else
b
&&
b
()},
c
.
prototype
.
checkScrollbar
=
function
(){
document
.
body
.
clientWidth
>=
window
.
innerWidth
||
(
this
.
scrollbarWidth
=
this
.
scrollbarWidth
||
this
.
measureScrollbar
())},
c
.
prototype
.
setScrollbar
=
function
(){
var
a
=
parseInt
(
this
.
$body
.
css
(
"
padding-right
"
)
||
0
,
10
);
this
.
scrollbarWidth
&&
this
.
$body
.
css
(
"
padding-right
"
,
a
+
this
.
scrollbarWidth
)},
c
.
prototype
.
resetScrollbar
=
function
(){
this
.
$body
.
css
(
"
padding-right
"
,
""
)},
c
.
prototype
.
measureScrollbar
=
function
(){
var
a
=
document
.
createElement
(
"
div
"
);
a
.
className
=
"
modal-scrollbar-measure
"
,
this
.
$body
.
append
(
a
);
var
b
=
a
.
offsetWidth
-
a
.
clientWidth
;
return
this
.
$body
[
0
].
removeChild
(
a
),
b
};
var
d
=
a
.
fn
.
modal
;
a
.
fn
.
modal
=
b
,
a
.
fn
.
modal
.
Constructor
=
c
,
a
.
fn
.
modal
.
noConflict
=
function
(){
return
a
.
fn
.
modal
=
d
,
this
},
a
(
document
).
on
(
"
click.bs.modal.data-api
"
,
'
[data-toggle="modal"]
'
,
function
(
c
){
var
d
=
a
(
this
),
e
=
d
.
attr
(
"
href
"
),
f
=
a
(
d
.
attr
(
"
data-target
"
)
||
e
&&
e
.
replace
(
/.*
(?=
#
[^\s]
+$
)
/
,
""
)),
g
=
f
.
data
(
"
bs.modal
"
)?
"
toggle
"
:
a
.
extend
({
remote
:
!
/#/
.
test
(
e
)
&&
e
},
f
.
data
(),
d
.
data
());
d
.
is
(
"
a
"
)
&&
c
.
preventDefault
(),
f
.
one
(
"
show.bs.modal
"
,
function
(
a
){
a
.
isDefaultPrevented
()
||
f
.
one
(
"
hidden.bs.modal
"
,
function
(){
d
.
is
(
"
:visible
"
)
&&
d
.
trigger
(
"
focus
"
)})}),
b
.
call
(
f
,
g
,
this
)})}(
jQuery
),
+
function
(
a
){
"
use strict
"
;
function
b
(
b
){
return
this
.
each
(
function
(){
var
d
=
a
(
this
),
e
=
d
.
data
(
"
bs.tooltip
"
),
f
=
"
object
"
==
typeof
b
&&
b
;(
e
||
"
destroy
"
!=
b
)
&&
(
e
||
d
.
data
(
"
bs.tooltip
"
,
e
=
new
c
(
this
,
f
)),
"
string
"
==
typeof
b
&&
e
[
b
]())})}
var
c
=
function
(
a
,
b
){
this
.
type
=
this
.
options
=
this
.
enabled
=
this
.
timeout
=
this
.
hoverState
=
this
.
$element
=
null
,
this
.
init
(
"
tooltip
"
,
a
,
b
)};
c
.
VERSION
=
"
3.2.0
"
,
c
.
DEFAULTS
=
{
animation
:
!
0
,
placement
:
"
top
"
,
selector
:
!
1
,
template
:
'
<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>
'
,
trigger
:
"
hover focus
"
,
title
:
""
,
delay
:
0
,
html
:
!
1
,
container
:
!
1
,
viewport
:{
selector
:
"
body
"
,
padding
:
0
}},
c
.
prototype
.
init
=
function
(
b
,
c
,
d
){
this
.
enabled
=!
0
,
this
.
type
=
b
,
this
.
$element
=
a
(
c
),
this
.
options
=
this
.
getOptions
(
d
),
this
.
$viewport
=
this
.
options
.
viewport
&&
a
(
this
.
options
.
viewport
.
selector
||
this
.
options
.
viewport
);
for
(
var
e
=
this
.
options
.
trigger
.
split
(
"
"
),
f
=
e
.
length
;
f
--
;){
var
g
=
e
[
f
];
if
(
"
click
"
==
g
)
this
.
$element
.
on
(
"
click.
"
+
this
.
type
,
this
.
options
.
selector
,
a
.
proxy
(
this
.
toggle
,
this
));
else
if
(
"
manual
"
!=
g
){
var
h
=
"
hover
"
==
g
?
"
mouseenter
"
:
"
focusin
"
,
i
=
"
hover
"
==
g
?
"
mouseleave
"
:
"
focusout
"
;
this
.
$element
.
on
(
h
+
"
.
"
+
this
.
type
,
this
.
options
.
selector
,
a
.
proxy
(
this
.
enter
,
this
)),
this
.
$element
.
on
(
i
+
"
.
"
+
this
.
type
,
this
.
options
.
selector
,
a
.
proxy
(
this
.
leave
,
this
))}}
this
.
options
.
selector
?
this
.
_options
=
a
.
extend
({},
this
.
options
,{
trigger
:
"
manual
"
,
selector
:
""
}):
this
.
fixTitle
()},
c
.
prototype
.
getDefaults
=
function
(){
return
c
.
DEFAULTS
},
c
.
prototype
.
getOptions
=
function
(
b
){
return
b
=
a
.
extend
({},
this
.
getDefaults
(),
this
.
$element
.
data
(),
b
),
b
.
delay
&&
"
number
"
==
typeof
b
.
delay
&&
(
b
.
delay
=
{
show
:
b
.
delay
,
hide
:
b
.
delay
}),
b
},
c
.
prototype
.
getDelegateOptions
=
function
(){
var
b
=
{},
c
=
this
.
getDefaults
();
return
this
.
_options
&&
a
.
each
(
this
.
_options
,
function
(
a
,
d
){
c
[
a
]
!=
d
&&
(
b
[
a
]
=
d
)}),
b
},
c
.
prototype
.
enter
=
function
(
b
){
var
c
=
b
instanceof
this
.
constructor
?
b
:
a
(
b
.
currentTarget
).
data
(
"
bs.
"
+
this
.
type
);
return
c
||
(
c
=
new
this
.
constructor
(
b
.
currentTarget
,
this
.
getDelegateOptions
()),
a
(
b
.
currentTarget
).
data
(
"
bs.
"
+
this
.
type
,
c
)),
clearTimeout
(
c
.
timeout
),
c
.
hoverState
=
"
in
"
,
c
.
options
.
delay
&&
c
.
options
.
delay
.
show
?
void
(
c
.
timeout
=
setTimeout
(
function
(){
"
in
"
==
c
.
hoverState
&&
c
.
show
()},
c
.
options
.
delay
.
show
)):
c
.
show
()},
c
.
prototype
.
leave
=
function
(
b
){
var
c
=
b
instanceof
this
.
constructor
?
b
:
a
(
b
.
currentTarget
).
data
(
"
bs.
"
+
this
.
type
);
return
c
||
(
c
=
new
this
.
constructor
(
b
.
currentTarget
,
this
.
getDelegateOptions
()),
a
(
b
.
currentTarget
).
data
(
"
bs.
"
+
this
.
type
,
c
)),
clearTimeout
(
c
.
timeout
),
c
.
hoverState
=
"
out
"
,
c
.
options
.
delay
&&
c
.
options
.
delay
.
hide
?
void
(
c
.
timeout
=
setTimeout
(
function
(){
"
out
"
==
c
.
hoverState
&&
c
.
hide
()},
c
.
options
.
delay
.
hide
)):
c
.
hide
()},
c
.
prototype
.
show
=
function
(){
var
b
=
a
.
Event
(
"
show.bs.
"
+
this
.
type
);
if
(
this
.
hasContent
()
&&
this
.
enabled
){
this
.
$element
.
trigger
(
b
);
var
c
=
a
.
contains
(
document
.
documentElement
,
this
.
$element
[
0
]);
if
(
b
.
isDefaultPrevented
()
||!
c
)
return
;
var
d
=
this
,
e
=
this
.
tip
(),
f
=
this
.
getUID
(
this
.
type
);
this
.
setContent
(),
e
.
attr
(
"
id
"
,
f
),
this
.
$element
.
attr
(
"
aria-describedby
"
,
f
),
this
.
options
.
animation
&&
e
.
addClass
(
"
fade
"
);
var
g
=
"
function
"
==
typeof
this
.
options
.
placement
?
this
.
options
.
placement
.
call
(
this
,
e
[
0
],
this
.
$element
[
0
]):
this
.
options
.
placement
,
h
=
/
\s?
auto
?\s?
/i
,
i
=
h
.
test
(
g
);
i
&&
(
g
=
g
.
replace
(
h
,
""
)
||
"
top
"
),
e
.
detach
().
css
({
top
:
0
,
left
:
0
,
display
:
"
block
"
}).
addClass
(
g
).
data
(
"
bs.
"
+
this
.
type
,
this
),
this
.
options
.
container
?
e
.
appendTo
(
this
.
options
.
container
):
e
.
insertAfter
(
this
.
$element
);
var
j
=
this
.
getPosition
(),
k
=
e
[
0
].
offsetWidth
,
l
=
e
[
0
].
offsetHeight
;
if
(
i
){
var
m
=
g
,
n
=
this
.
$element
.
parent
(),
o
=
this
.
getPosition
(
n
);
g
=
"
bottom
"
==
g
&&
j
.
top
+
j
.
height
+
l
-
o
.
scroll
>
o
.
height
?
"
top
"
:
"
top
"
==
g
&&
j
.
top
-
o
.
scroll
-
l
<
0
?
"
bottom
"
:
"
right
"
==
g
&&
j
.
right
+
k
>
o
.
width
?
"
left
"
:
"
left
"
==
g
&&
j
.
left
-
k
<
o
.
left
?
"
right
"
:
g
,
e
.
removeClass
(
m
).
addClass
(
g
)}
var
p
=
this
.
getCalculatedOffset
(
g
,
j
,
k
,
l
);
this
.
applyPlacement
(
p
,
g
);
var
q
=
function
(){
d
.
$element
.
trigger
(
"
shown.bs.
"
+
d
.
type
),
d
.
hoverState
=
null
};
a
.
support
.
transition
&&
this
.
$tip
.
hasClass
(
"
fade
"
)?
e
.
one
(
"
bsTransitionEnd
"
,
q
).
emulateTransitionEnd
(
150
):
q
()}},
c
.
prototype
.
applyPlacement
=
function
(
b
,
c
){
var
d
=
this
.
tip
(),
e
=
d
[
0
].
offsetWidth
,
f
=
d
[
0
].
offsetHeight
,
g
=
parseInt
(
d
.
css
(
"
margin-top
"
),
10
),
h
=
parseInt
(
d
.
css
(
"
margin-left
"
),
10
);
isNaN
(
g
)
&&
(
g
=
0
),
isNaN
(
h
)
&&
(
h
=
0
),
b
.
top
=
b
.
top
+
g
,
b
.
left
=
b
.
left
+
h
,
a
.
offset
.
setOffset
(
d
[
0
],
a
.
extend
({
using
:
function
(
a
){
d
.
css
({
top
:
Math
.
round
(
a
.
top
),
left
:
Math
.
round
(
a
.
left
)})}},
b
),
0
),
d
.
addClass
(
"
in
"
);
var
i
=
d
[
0
].
offsetWidth
,
j
=
d
[
0
].
offsetHeight
;
"
top
"
==
c
&&
j
!=
f
&&
(
b
.
top
=
b
.
top
+
f
-
j
);
var
k
=
this
.
getViewportAdjustedDelta
(
c
,
b
,
i
,
j
);
k
.
left
?
b
.
left
+=
k
.
left
:
b
.
top
+=
k
.
top
;
var
l
=
k
.
left
?
2
*
k
.
left
-
e
+
i
:
2
*
k
.
top
-
f
+
j
,
m
=
k
.
left
?
"
left
"
:
"
top
"
,
n
=
k
.
left
?
"
offsetWidth
"
:
"
offsetHeight
"
;
d
.
offset
(
b
),
this
.
replaceArrow
(
l
,
d
[
0
][
n
],
m
)},
c
.
prototype
.
replaceArrow
=
function
(
a
,
b
,
c
){
this
.
arrow
().
css
(
c
,
a
?
50
*
(
1
-
a
/
b
)
+
"
%
"
:
""
)},
c
.
prototype
.
setContent
=
function
(){
var
a
=
this
.
tip
(),
b
=
this
.
getTitle
();
a
.
find
(
"
.tooltip-inner
"
)[
this
.
options
.
html
?
"
html
"
:
"
text
"
](
b
),
a
.
removeClass
(
"
fade in top bottom left right
"
)},
c
.
prototype
.
hide
=
function
(){
function
b
(){
"
in
"
!=
c
.
hoverState
&&
d
.
detach
(),
c
.
$element
.
trigger
(
"
hidden.bs.
"
+
c
.
type
)}
var
c
=
this
,
d
=
this
.
tip
(),
e
=
a
.
Event
(
"
hide.bs.
"
+
this
.
type
);
return
this
.
$element
.
removeAttr
(
"
aria-describedby
"
),
this
.
$element
.
trigger
(
e
),
e
.
isDefaultPrevented
()?
void
0
:(
d
.
removeClass
(
"
in
"
),
a
.
support
.
transition
&&
this
.
$tip
.
hasClass
(
"
fade
"
)?
d
.
one
(
"
bsTransitionEnd
"
,
b
).
emulateTransitionEnd
(
150
):
b
(),
this
.
hoverState
=
null
,
this
)},
c
.
prototype
.
fixTitle
=
function
(){
var
a
=
this
.
$element
;(
a
.
attr
(
"
title
"
)
||
"
string
"
!=
typeof
a
.
attr
(
"
data-original-title
"
))
&&
a
.
attr
(
"
data-original-title
"
,
a
.
attr
(
"
title
"
)
||
""
).
attr
(
"
title
"
,
""
)},
c
.
prototype
.
hasContent
=
function
(){
return
this
.
getTitle
()},
c
.
prototype
.
getPosition
=
function
(
b
){
b
=
b
||
this
.
$element
;
var
c
=
b
[
0
],
d
=
"
BODY
"
==
c
.
tagName
;
return
a
.
extend
({},
"
function
"
==
typeof
c
.
getBoundingClientRect
?
c
.
getBoundingClientRect
():
null
,{
scroll
:
d
?
document
.
documentElement
.
scrollTop
||
document
.
body
.
scrollTop
:
b
.
scrollTop
(),
width
:
d
?
a
(
window
).
width
():
b
.
outerWidth
(),
height
:
d
?
a
(
window
).
height
():
b
.
outerHeight
()},
d
?{
top
:
0
,
left
:
0
}:
b
.
offset
())},
c
.
prototype
.
getCalculatedOffset
=
function
(
a
,
b
,
c
,
d
){
return
"
bottom
"
==
a
?{
top
:
b
.
top
+
b
.
height
,
left
:
b
.
left
+
b
.
width
/
2
-
c
/
2
}:
"
top
"
==
a
?{
top
:
b
.
top
-
d
,
left
:
b
.
left
+
b
.
width
/
2
-
c
/
2
}:
"
left
"
==
a
?{
top
:
b
.
top
+
b
.
height
/
2
-
d
/
2
,
left
:
b
.
left
-
c
}:{
top
:
b
.
top
+
b
.
height
/
2
-
d
/
2
,
left
:
b
.
left
+
b
.
width
}},
c
.
prototype
.
getViewportAdjustedDelta
=
function
(
a
,
b
,
c
,
d
){
var
e
=
{
top
:
0
,
left
:
0
};
if
(
!
this
.
$viewport
)
return
e
;
var
f
=
this
.
options
.
viewport
&&
this
.
options
.
viewport
.
padding
||
0
,
g
=
this
.
getPosition
(
this
.
$viewport
);
if
(
/right|left/
.
test
(
a
)){
var
h
=
b
.
top
-
f
-
g
.
scroll
,
i
=
b
.
top
+
f
-
g
.
scroll
+
d
;
h
<
g
.
top
?
e
.
top
=
g
.
top
-
h
:
i
>
g
.
top
+
g
.
height
&&
(
e
.
top
=
g
.
top
+
g
.
height
-
i
)}
else
{
var
j
=
b
.
left
-
f
,
k
=
b
.
left
+
f
+
c
;
j
<
g
.
left
?
e
.
left
=
g
.
left
-
j
:
k
>
g
.
width
&&
(
e
.
left
=
g
.
left
+
g
.
width
-
k
)}
return
e
},
c
.
prototype
.
getTitle
=
function
(){
var
a
,
b
=
this
.
$element
,
c
=
this
.
options
;
return
a
=
b
.
attr
(
"
data-original-title
"
)
||
(
"
function
"
==
typeof
c
.
title
?
c
.
title
.
call
(
b
[
0
]):
c
.
title
)},
c
.
prototype
.
getUID
=
function
(
a
){
do
a
+=~~
(
1
e6
*
Math
.
random
());
while
(
document
.
getElementById
(
a
));
return
a
},
c
.
prototype
.
tip
=
function
(){
return
this
.
$tip
=
this
.
$tip
||
a
(
this
.
options
.
template
)},
c
.
prototype
.
arrow
=
function
(){
return
this
.
$arrow
=
this
.
$arrow
||
this
.
tip
().
find
(
"
.tooltip-arrow
"
)},
c
.
prototype
.
validate
=
function
(){
this
.
$element
[
0
].
parentNode
||
(
this
.
hide
(),
this
.
$element
=
null
,
this
.
options
=
null
)},
c
.
prototype
.
enable
=
function
(){
this
.
enabled
=!
0
},
c
.
prototype
.
disable
=
function
(){
this
.
enabled
=!
1
},
c
.
prototype
.
toggleEnabled
=
function
(){
this
.
enabled
=!
this
.
enabled
},
c
.
prototype
.
toggle
=
function
(
b
){
var
c
=
this
;
b
&&
(
c
=
a
(
b
.
currentTarget
).
data
(
"
bs.
"
+
this
.
type
),
c
||
(
c
=
new
this
.
constructor
(
b
.
currentTarget
,
this
.
getDelegateOptions
()),
a
(
b
.
currentTarget
).
data
(
"
bs.
"
+
this
.
type
,
c
))),
c
.
tip
().
hasClass
(
"
in
"
)?
c
.
leave
(
c
):
c
.
enter
(
c
)},
c
.
prototype
.
destroy
=
function
(){
clearTimeout
(
this
.
timeout
),
this
.
hide
().
$element
.
off
(
"
.
"
+
this
.
type
).
removeData
(
"
bs.
"
+
this
.
type
)};
var
d
=
a
.
fn
.
tooltip
;
a
.
fn
.
tooltip
=
b
,
a
.
fn
.
tooltip
.
Constructor
=
c
,
a
.
fn
.
tooltip
.
noConflict
=
function
(){
return
a
.
fn
.
tooltip
=
d
,
this
}}(
jQuery
),
+
function
(
a
){
"
use strict
"
;
function
b
(
b
){
return
this
.
each
(
function
(){
var
d
=
a
(
this
),
e
=
d
.
data
(
"
bs.popover
"
),
f
=
"
object
"
==
typeof
b
&&
b
;(
e
||
"
destroy
"
!=
b
)
&&
(
e
||
d
.
data
(
"
bs.popover
"
,
e
=
new
c
(
this
,
f
)),
"
string
"
==
typeof
b
&&
e
[
b
]())})}
var
c
=
function
(
a
,
b
){
this
.
init
(
"
popover
"
,
a
,
b
)};
if
(
!
a
.
fn
.
tooltip
)
throw
new
Error
(
"
Popover requires tooltip.js
"
);
c
.
VERSION
=
"
3.2.0
"
,
c
.
DEFAULTS
=
a
.
extend
({},
a
.
fn
.
tooltip
.
Constructor
.
DEFAULTS
,{
placement
:
"
right
"
,
trigger
:
"
click
"
,
content
:
""
,
template
:
'
<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>
'
}),
c
.
prototype
=
a
.
extend
({},
a
.
fn
.
tooltip
.
Constructor
.
prototype
),
c
.
prototype
.
constructor
=
c
,
c
.
prototype
.
getDefaults
=
function
(){
return
c
.
DEFAULTS
},
c
.
prototype
.
setContent
=
function
(){
var
a
=
this
.
tip
(),
b
=
this
.
getTitle
(),
c
=
this
.
getContent
();
a
.
find
(
"
.popover-title
"
)[
this
.
options
.
html
?
"
html
"
:
"
text
"
](
b
),
a
.
find
(
"
.popover-content
"
).
empty
()[
this
.
options
.
html
?
"
string
"
==
typeof
c
?
"
html
"
:
"
append
"
:
"
text
"
](
c
),
a
.
removeClass
(
"
fade top bottom left right in
"
),
a
.
find
(
"
.popover-title
"
).
html
()
||
a
.
find
(
"
.popover-title
"
).
hide
()},
c
.
prototype
.
hasContent
=
function
(){
return
this
.
getTitle
()
||
this
.
getContent
()},
c
.
prototype
.
getContent
=
function
(){
var
a
=
this
.
$element
,
b
=
this
.
options
;
return
a
.
attr
(
"
data-content
"
)
||
(
"
function
"
==
typeof
b
.
content
?
b
.
content
.
call
(
a
[
0
]):
b
.
content
)},
c
.
prototype
.
arrow
=
function
(){
return
this
.
$arrow
=
this
.
$arrow
||
this
.
tip
().
find
(
"
.arrow
"
)},
c
.
prototype
.
tip
=
function
(){
return
this
.
$tip
||
(
this
.
$tip
=
a
(
this
.
options
.
template
)),
this
.
$tip
};
var
d
=
a
.
fn
.
popover
;
a
.
fn
.
popover
=
b
,
a
.
fn
.
popover
.
Constructor
=
c
,
a
.
fn
.
popover
.
noConflict
=
function
(){
return
a
.
fn
.
popover
=
d
,
this
}}(
jQuery
),
+
function
(
a
){
"
use strict
"
;
function
b
(
c
,
d
){
var
e
=
a
.
proxy
(
this
.
process
,
this
);
this
.
$body
=
a
(
"
body
"
),
this
.
$scrollElement
=
a
(
a
(
c
).
is
(
"
body
"
)?
window
:
c
),
this
.
options
=
a
.
extend
({},
b
.
DEFAULTS
,
d
),
this
.
selector
=
(
this
.
options
.
target
||
""
)
+
"
.nav li > a
"
,
this
.
offsets
=
[],
this
.
targets
=
[],
this
.
activeTarget
=
null
,
this
.
scrollHeight
=
0
,
this
.
$scrollElement
.
on
(
"
scroll.bs.scrollspy
"
,
e
),
this
.
refresh
(),
this
.
process
()}
function
c
(
c
){
return
this
.
each
(
function
(){
var
d
=
a
(
this
),
e
=
d
.
data
(
"
bs.scrollspy
"
),
f
=
"
object
"
==
typeof
c
&&
c
;
e
||
d
.
data
(
"
bs.scrollspy
"
,
e
=
new
b
(
this
,
f
)),
"
string
"
==
typeof
c
&&
e
[
c
]()})}
b
.
VERSION
=
"
3.2.0
"
,
b
.
DEFAULTS
=
{
offset
:
10
},
b
.
prototype
.
getScrollHeight
=
function
(){
return
this
.
$scrollElement
[
0
].
scrollHeight
||
Math
.
max
(
this
.
$body
[
0
].
scrollHeight
,
document
.
documentElement
.
scrollHeight
)},
b
.
prototype
.
refresh
=
function
(){
var
b
=
"
offset
"
,
c
=
0
;
a
.
isWindow
(
this
.
$scrollElement
[
0
])
||
(
b
=
"
position
"
,
c
=
this
.
$scrollElement
.
scrollTop
()),
this
.
offsets
=
[],
this
.
targets
=
[],
this
.
scrollHeight
=
this
.
getScrollHeight
();
var
d
=
this
;
this
.
$body
.
find
(
this
.
selector
).
map
(
function
(){
var
d
=
a
(
this
),
e
=
d
.
data
(
"
target
"
)
||
d
.
attr
(
"
href
"
),
f
=
/^#./
.
test
(
e
)
&&
a
(
e
);
return
f
&&
f
.
length
&&
f
.
is
(
"
:visible
"
)
&&
[[
f
[
b
]().
top
+
c
,
e
]]
||
null
}).
sort
(
function
(
a
,
b
){
return
a
[
0
]
-
b
[
0
]}).
each
(
function
(){
d
.
offsets
.
push
(
this
[
0
]),
d
.
targets
.
push
(
this
[
1
])})},
b
.
prototype
.
process
=
function
(){
var
a
,
b
=
this
.
$scrollElement
.
scrollTop
()
+
this
.
options
.
offset
,
c
=
this
.
getScrollHeight
(),
d
=
this
.
options
.
offset
+
c
-
this
.
$scrollElement
.
height
(),
e
=
this
.
offsets
,
f
=
this
.
targets
,
g
=
this
.
activeTarget
;
if
(
this
.
scrollHeight
!=
c
&&
this
.
refresh
(),
b
>=
d
)
return
g
!=
(
a
=
f
[
f
.
length
-
1
])
&&
this
.
activate
(
a
);
if
(
g
&&
b
<=
e
[
0
])
return
g
!=
(
a
=
f
[
0
])
&&
this
.
activate
(
a
);
for
(
a
=
e
.
length
;
a
--
;)
g
!=
f
[
a
]
&&
b
>=
e
[
a
]
&&
(
!
e
[
a
+
1
]
||
b
<=
e
[
a
+
1
])
&&
this
.
activate
(
f
[
a
])},
b
.
prototype
.
activate
=
function
(
b
){
this
.
activeTarget
=
b
,
a
(
this
.
selector
).
parentsUntil
(
this
.
options
.
target
,
"
.active
"
).
removeClass
(
"
active
"
);
var
c
=
this
.
selector
+
'
[data-target="
'
+
b
+
'
"],
'
+
this
.
selector
+
'
[href="
'
+
b
+
'
"]
'
,
d
=
a
(
c
).
parents
(
"
li
"
).
addClass
(
"
active
"
);
d
.
parent
(
"
.dropdown-menu
"
).
length
&&
(
d
=
d
.
closest
(
"
li.dropdown
"
).
addClass
(
"
active
"
)),
d
.
trigger
(
"
activate.bs.scrollspy
"
)};
var
d
=
a
.
fn
.
scrollspy
;
a
.
fn
.
scrollspy
=
c
,
a
.
fn
.
scrollspy
.
Constructor
=
b
,
a
.
fn
.
scrollspy
.
noConflict
=
function
(){
return
a
.
fn
.
scrollspy
=
d
,
this
},
a
(
window
).
on
(
"
load.bs.scrollspy.data-api
"
,
function
(){
a
(
'
[data-spy="scroll"]
'
).
each
(
function
(){
var
b
=
a
(
this
);
c
.
call
(
b
,
b
.
data
())})})}(
jQuery
),
+
function
(
a
){
"
use strict
"
;
function
b
(
b
){
return
this
.
each
(
function
(){
var
d
=
a
(
this
),
e
=
d
.
data
(
"
bs.tab
"
);
e
||
d
.
data
(
"
bs.tab
"
,
e
=
new
c
(
this
)),
"
string
"
==
typeof
b
&&
e
[
b
]()})}
var
c
=
function
(
b
){
this
.
element
=
a
(
b
)};
c
.
VERSION
=
"
3.2.0
"
,
c
.
prototype
.
show
=
function
(){
var
b
=
this
.
element
,
c
=
b
.
closest
(
"
ul:not(.dropdown-menu)
"
),
d
=
b
.
data
(
"
target
"
);
if
(
d
||
(
d
=
b
.
attr
(
"
href
"
),
d
=
d
&&
d
.
replace
(
/.*
(?=
#
[^\s]
*$
)
/
,
""
)),
!
b
.
parent
(
"
li
"
).
hasClass
(
"
active
"
)){
var
e
=
c
.
find
(
"
.active:last a
"
)[
0
],
f
=
a
.
Event
(
"
show.bs.tab
"
,{
relatedTarget
:
e
});
if
(
b
.
trigger
(
f
),
!
f
.
isDefaultPrevented
()){
var
g
=
a
(
d
);
this
.
activate
(
b
.
closest
(
"
li
"
),
c
),
this
.
activate
(
g
,
g
.
parent
(),
function
(){
b
.
trigger
({
type
:
"
shown.bs.tab
"
,
relatedTarget
:
e
})})}}},
c
.
prototype
.
activate
=
function
(
b
,
c
,
d
){
function
e
(){
f
.
removeClass
(
"
active
"
).
find
(
"
> .dropdown-menu > .active
"
).
removeClass
(
"
active
"
),
b
.
addClass
(
"
active
"
),
g
?(
b
[
0
].
offsetWidth
,
b
.
addClass
(
"
in
"
)):
b
.
removeClass
(
"
fade
"
),
b
.
parent
(
"
.dropdown-menu
"
)
&&
b
.
closest
(
"
li.dropdown
"
).
addClass
(
"
active
"
),
d
&&
d
()}
var
f
=
c
.
find
(
"
> .active
"
),
g
=
d
&&
a
.
support
.
transition
&&
f
.
hasClass
(
"
fade
"
);
g
?
f
.
one
(
"
bsTransitionEnd
"
,
e
).
emulateTransitionEnd
(
150
):
e
(),
f
.
removeClass
(
"
in
"
)};
var
d
=
a
.
fn
.
tab
;
a
.
fn
.
tab
=
b
,
a
.
fn
.
tab
.
Constructor
=
c
,
a
.
fn
.
tab
.
noConflict
=
function
(){
return
a
.
fn
.
tab
=
d
,
this
},
a
(
document
).
on
(
"
click.bs.tab.data-api
"
,
'
[data-toggle="tab"], [data-toggle="pill"]
'
,
function
(
c
){
c
.
preventDefault
(),
b
.
call
(
a
(
this
),
"
show
"
)})}(
jQuery
),
+
function
(
a
){
"
use strict
"
;
function
b
(
b
){
return
this
.
each
(
function
(){
var
d
=
a
(
this
),
e
=
d
.
data
(
"
bs.affix
"
),
f
=
"
object
"
==
typeof
b
&&
b
;
e
||
d
.
data
(
"
bs.affix
"
,
e
=
new
c
(
this
,
f
)),
"
string
"
==
typeof
b
&&
e
[
b
]()})}
var
c
=
function
(
b
,
d
){
this
.
options
=
a
.
extend
({},
c
.
DEFAULTS
,
d
),
this
.
$target
=
a
(
this
.
options
.
target
).
on
(
"
scroll.bs.affix.data-api
"
,
a
.
proxy
(
this
.
checkPosition
,
this
)).
on
(
"
click.bs.affix.data-api
"
,
a
.
proxy
(
this
.
checkPositionWithEventLoop
,
this
)),
this
.
$element
=
a
(
b
),
this
.
affixed
=
this
.
unpin
=
this
.
pinnedOffset
=
null
,
this
.
checkPosition
()};
c
.
VERSION
=
"
3.2.0
"
,
c
.
RESET
=
"
affix affix-top affix-bottom
"
,
c
.
DEFAULTS
=
{
offset
:
0
,
target
:
window
},
c
.
prototype
.
getPinnedOffset
=
function
(){
if
(
this
.
pinnedOffset
)
return
this
.
pinnedOffset
;
this
.
$element
.
removeClass
(
c
.
RESET
).
addClass
(
"
affix
"
);
var
a
=
this
.
$target
.
scrollTop
(),
b
=
this
.
$element
.
offset
();
return
this
.
pinnedOffset
=
b
.
top
-
a
},
c
.
prototype
.
checkPositionWithEventLoop
=
function
(){
setTimeout
(
a
.
proxy
(
this
.
checkPosition
,
this
),
1
)},
c
.
prototype
.
checkPosition
=
function
(){
if
(
this
.
$element
.
is
(
"
:visible
"
)){
var
b
=
a
(
document
).
height
(),
d
=
this
.
$target
.
scrollTop
(),
e
=
this
.
$element
.
offset
(),
f
=
this
.
options
.
offset
,
g
=
f
.
top
,
h
=
f
.
bottom
;
"
object
"
!=
typeof
f
&&
(
h
=
g
=
f
),
"
function
"
==
typeof
g
&&
(
g
=
f
.
top
(
this
.
$element
)),
"
function
"
==
typeof
h
&&
(
h
=
f
.
bottom
(
this
.
$element
));
var
i
=
null
!=
this
.
unpin
&&
d
+
this
.
unpin
<=
e
.
top
?
!
1
:
null
!=
h
&&
e
.
top
+
this
.
$element
.
height
()
>=
b
-
h
?
"
bottom
"
:
null
!=
g
&&
g
>=
d
?
"
top
"
:
!
1
;
if
(
this
.
affixed
!==
i
){
null
!=
this
.
unpin
&&
this
.
$element
.
css
(
"
top
"
,
""
);
var
j
=
"
affix
"
+
(
i
?
"
-
"
+
i
:
""
),
k
=
a
.
Event
(
j
+
"
.bs.affix
"
);
this
.
$element
.
trigger
(
k
),
k
.
isDefaultPrevented
()
||
(
this
.
affixed
=
i
,
this
.
unpin
=
"
bottom
"
==
i
?
this
.
getPinnedOffset
():
null
,
this
.
$element
.
removeClass
(
c
.
RESET
).
addClass
(
j
).
trigger
(
a
.
Event
(
j
.
replace
(
"
affix
"
,
"
affixed
"
))),
"
bottom
"
==
i
&&
this
.
$element
.
offset
({
top
:
b
-
this
.
$element
.
height
()
-
h
}))}}};
var
d
=
a
.
fn
.
affix
;
a
.
fn
.
affix
=
b
,
a
.
fn
.
affix
.
Constructor
=
c
,
a
.
fn
.
affix
.
noConflict
=
function
(){
return
a
.
fn
.
affix
=
d
,
this
},
a
(
window
).
on
(
"
load
"
,
function
(){
a
(
'
[data-spy="affix"]
'
).
each
(
function
(){
var
c
=
a
(
this
),
d
=
c
.
data
();
d
.
offset
=
d
.
offset
||
{},
d
.
offsetBottom
&&
(
d
.
offset
.
bottom
=
d
.
offsetBottom
),
d
.
offsetTop
&&
(
d
.
offset
.
top
=
d
.
offsetTop
),
b
.
call
(
c
,
d
)})})}(
jQuery
);
\ No newline at end of file
static/js/jquery-2.1.1.min.js
0 → 100644
View file @
be3974a3
/*! jQuery v2.1.1 | (c) 2005, 2014 jQuery Foundation, Inc. | jquery.org/license */
!
function
(
a
,
b
){
"
object
"
==
typeof
module
&&
"
object
"
==
typeof
module
.
exports
?
module
.
exports
=
a
.
document
?
b
(
a
,
!
0
):
function
(
a
){
if
(
!
a
.
document
)
throw
new
Error
(
"
jQuery requires a window with a document
"
);
return
b
(
a
)}:
b
(
a
)}(
"
undefined
"
!=
typeof
window
?
window
:
this
,
function
(
a
,
b
){
var
c
=
[],
d
=
c
.
slice
,
e
=
c
.
concat
,
f
=
c
.
push
,
g
=
c
.
indexOf
,
h
=
{},
i
=
h
.
toString
,
j
=
h
.
hasOwnProperty
,
k
=
{},
l
=
a
.
document
,
m
=
"
2.1.1
"
,
n
=
function
(
a
,
b
){
return
new
n
.
fn
.
init
(
a
,
b
)},
o
=
/^
[\s\u
FEFF
\x
A0
]
+|
[\s\u
FEFF
\x
A0
]
+$/g
,
p
=
/^-ms-/
,
q
=
/-
([\d
a-z
])
/gi
,
r
=
function
(
a
,
b
){
return
b
.
toUpperCase
()};
n
.
fn
=
n
.
prototype
=
{
jquery
:
m
,
constructor
:
n
,
selector
:
""
,
length
:
0
,
toArray
:
function
(){
return
d
.
call
(
this
)},
get
:
function
(
a
){
return
null
!=
a
?
0
>
a
?
this
[
a
+
this
.
length
]:
this
[
a
]:
d
.
call
(
this
)},
pushStack
:
function
(
a
){
var
b
=
n
.
merge
(
this
.
constructor
(),
a
);
return
b
.
prevObject
=
this
,
b
.
context
=
this
.
context
,
b
},
each
:
function
(
a
,
b
){
return
n
.
each
(
this
,
a
,
b
)},
map
:
function
(
a
){
return
this
.
pushStack
(
n
.
map
(
this
,
function
(
b
,
c
){
return
a
.
call
(
b
,
c
,
b
)}))},
slice
:
function
(){
return
this
.
pushStack
(
d
.
apply
(
this
,
arguments
))},
first
:
function
(){
return
this
.
eq
(
0
)},
last
:
function
(){
return
this
.
eq
(
-
1
)},
eq
:
function
(
a
){
var
b
=
this
.
length
,
c
=+
a
+
(
0
>
a
?
b
:
0
);
return
this
.
pushStack
(
c
>=
0
&&
b
>
c
?[
this
[
c
]]:[])},
end
:
function
(){
return
this
.
prevObject
||
this
.
constructor
(
null
)},
push
:
f
,
sort
:
c
.
sort
,
splice
:
c
.
splice
},
n
.
extend
=
n
.
fn
.
extend
=
function
(){
var
a
,
b
,
c
,
d
,
e
,
f
,
g
=
arguments
[
0
]
||
{},
h
=
1
,
i
=
arguments
.
length
,
j
=!
1
;
for
(
"
boolean
"
==
typeof
g
&&
(
j
=
g
,
g
=
arguments
[
h
]
||
{},
h
++
),
"
object
"
==
typeof
g
||
n
.
isFunction
(
g
)
||
(
g
=
{}),
h
===
i
&&
(
g
=
this
,
h
--
);
i
>
h
;
h
++
)
if
(
null
!=
(
a
=
arguments
[
h
]))
for
(
b
in
a
)
c
=
g
[
b
],
d
=
a
[
b
],
g
!==
d
&&
(
j
&&
d
&&
(
n
.
isPlainObject
(
d
)
||
(
e
=
n
.
isArray
(
d
)))?(
e
?(
e
=!
1
,
f
=
c
&&
n
.
isArray
(
c
)?
c
:[]):
f
=
c
&&
n
.
isPlainObject
(
c
)?
c
:{},
g
[
b
]
=
n
.
extend
(
j
,
f
,
d
)):
void
0
!==
d
&&
(
g
[
b
]
=
d
));
return
g
},
n
.
extend
({
expando
:
"
jQuery
"
+
(
m
+
Math
.
random
()).
replace
(
/
\D
/g
,
""
),
isReady
:
!
0
,
error
:
function
(
a
){
throw
new
Error
(
a
)},
noop
:
function
(){},
isFunction
:
function
(
a
){
return
"
function
"
===
n
.
type
(
a
)},
isArray
:
Array
.
isArray
,
isWindow
:
function
(
a
){
return
null
!=
a
&&
a
===
a
.
window
},
isNumeric
:
function
(
a
){
return
!
n
.
isArray
(
a
)
&&
a
-
parseFloat
(
a
)
>=
0
},
isPlainObject
:
function
(
a
){
return
"
object
"
!==
n
.
type
(
a
)
||
a
.
nodeType
||
n
.
isWindow
(
a
)?
!
1
:
a
.
constructor
&&!
j
.
call
(
a
.
constructor
.
prototype
,
"
isPrototypeOf
"
)?
!
1
:
!
0
},
isEmptyObject
:
function
(
a
){
var
b
;
for
(
b
in
a
)
return
!
1
;
return
!
0
},
type
:
function
(
a
){
return
null
==
a
?
a
+
""
:
"
object
"
==
typeof
a
||
"
function
"
==
typeof
a
?
h
[
i
.
call
(
a
)]
||
"
object
"
:
typeof
a
},
globalEval
:
function
(
a
){
var
b
,
c
=
eval
;
a
=
n
.
trim
(
a
),
a
&&
(
1
===
a
.
indexOf
(
"
use strict
"
)?(
b
=
l
.
createElement
(
"
script
"
),
b
.
text
=
a
,
l
.
head
.
appendChild
(
b
).
parentNode
.
removeChild
(
b
)):
c
(
a
))},
camelCase
:
function
(
a
){
return
a
.
replace
(
p
,
"
ms-
"
).
replace
(
q
,
r
)},
nodeName
:
function
(
a
,
b
){
return
a
.
nodeName
&&
a
.
nodeName
.
toLowerCase
()
===
b
.
toLowerCase
()},
each
:
function
(
a
,
b
,
c
){
var
d
,
e
=
0
,
f
=
a
.
length
,
g
=
s
(
a
);
if
(
c
){
if
(
g
){
for
(;
f
>
e
;
e
++
)
if
(
d
=
b
.
apply
(
a
[
e
],
c
),
d
===!
1
)
break
}
else
for
(
e
in
a
)
if
(
d
=
b
.
apply
(
a
[
e
],
c
),
d
===!
1
)
break
}
else
if
(
g
){
for
(;
f
>
e
;
e
++
)
if
(
d
=
b
.
call
(
a
[
e
],
e
,
a
[
e
]),
d
===!
1
)
break
}
else
for
(
e
in
a
)
if
(
d
=
b
.
call
(
a
[
e
],
e
,
a
[
e
]),
d
===!
1
)
break
;
return
a
},
trim
:
function
(
a
){
return
null
==
a
?
""
:(
a
+
""
).
replace
(
o
,
""
)},
makeArray
:
function
(
a
,
b
){
var
c
=
b
||
[];
return
null
!=
a
&&
(
s
(
Object
(
a
))?
n
.
merge
(
c
,
"
string
"
==
typeof
a
?[
a
]:
a
):
f
.
call
(
c
,
a
)),
c
},
inArray
:
function
(
a
,
b
,
c
){
return
null
==
b
?
-
1
:
g
.
call
(
b
,
a
,
c
)},
merge
:
function
(
a
,
b
){
for
(
var
c
=+
b
.
length
,
d
=
0
,
e
=
a
.
length
;
c
>
d
;
d
++
)
a
[
e
++
]
=
b
[
d
];
return
a
.
length
=
e
,
a
},
grep
:
function
(
a
,
b
,
c
){
for
(
var
d
,
e
=
[],
f
=
0
,
g
=
a
.
length
,
h
=!
c
;
g
>
f
;
f
++
)
d
=!
b
(
a
[
f
],
f
),
d
!==
h
&&
e
.
push
(
a
[
f
]);
return
e
},
map
:
function
(
a
,
b
,
c
){
var
d
,
f
=
0
,
g
=
a
.
length
,
h
=
s
(
a
),
i
=
[];
if
(
h
)
for
(;
g
>
f
;
f
++
)
d
=
b
(
a
[
f
],
f
,
c
),
null
!=
d
&&
i
.
push
(
d
);
else
for
(
f
in
a
)
d
=
b
(
a
[
f
],
f
,
c
),
null
!=
d
&&
i
.
push
(
d
);
return
e
.
apply
([],
i
)},
guid
:
1
,
proxy
:
function
(
a
,
b
){
var
c
,
e
,
f
;
return
"
string
"
==
typeof
b
&&
(
c
=
a
[
b
],
b
=
a
,
a
=
c
),
n
.
isFunction
(
a
)?(
e
=
d
.
call
(
arguments
,
2
),
f
=
function
(){
return
a
.
apply
(
b
||
this
,
e
.
concat
(
d
.
call
(
arguments
)))},
f
.
guid
=
a
.
guid
=
a
.
guid
||
n
.
guid
++
,
f
):
void
0
},
now
:
Date
.
now
,
support
:
k
}),
n
.
each
(
"
Boolean Number String Function Array Date RegExp Object Error
"
.
split
(
"
"
),
function
(
a
,
b
){
h
[
"
[object
"
+
b
+
"
]
"
]
=
b
.
toLowerCase
()});
function
s
(
a
){
var
b
=
a
.
length
,
c
=
n
.
type
(
a
);
return
"
function
"
===
c
||
n
.
isWindow
(
a
)?
!
1
:
1
===
a
.
nodeType
&&
b
?
!
0
:
"
array
"
===
c
||
0
===
b
||
"
number
"
==
typeof
b
&&
b
>
0
&&
b
-
1
in
a
}
var
t
=
function
(
a
){
var
b
,
c
,
d
,
e
,
f
,
g
,
h
,
i
,
j
,
k
,
l
,
m
,
n
,
o
,
p
,
q
,
r
,
s
,
t
,
u
=
"
sizzle
"
+-
new
Date
,
v
=
a
.
document
,
w
=
0
,
x
=
0
,
y
=
gb
(),
z
=
gb
(),
A
=
gb
(),
B
=
function
(
a
,
b
){
return
a
===
b
&&
(
l
=!
0
),
0
},
C
=
"
undefined
"
,
D
=
1
<<
31
,
E
=
{}.
hasOwnProperty
,
F
=
[],
G
=
F
.
pop
,
H
=
F
.
push
,
I
=
F
.
push
,
J
=
F
.
slice
,
K
=
F
.
indexOf
||
function
(
a
){
for
(
var
b
=
0
,
c
=
this
.
length
;
c
>
b
;
b
++
)
if
(
this
[
b
]
===
a
)
return
b
;
return
-
1
},
L
=
"
checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped
"
,
M
=
"
[
\\
x20
\\
t
\\
r
\\
n
\\
f]
"
,
N
=
"
(?:
\\\\
.|[
\\
w-]|[^
\\
x00-
\\
xa0])+
"
,
O
=
N
.
replace
(
"
w
"
,
"
w#
"
),
P
=
"
\\
[
"
+
M
+
"
*(
"
+
N
+
"
)(?:
"
+
M
+
"
*([*^$|!~]?=)
"
+
M
+
"
*(?:'((?:
\\\\
.|[^
\\\\
'])*)'|
\"
((?:
\\\\
.|[^
\\\\\"
])*)
\"
|(
"
+
O
+
"
))|)
"
+
M
+
"
*
\\
]
"
,
Q
=
"
:(
"
+
N
+
"
)(?:
\\
((('((?:
\\\\
.|[^
\\\\
'])*)'|
\"
((?:
\\\\
.|[^
\\\\\"
])*)
\"
)|((?:
\\\\
.|[^
\\\\
()[
\\
]]|
"
+
P
+
"
)*)|.*)
\\
)|)
"
,
R
=
new
RegExp
(
"
^
"
+
M
+
"
+|((?:^|[^
\\\\
])(?:
\\\\
.)*)
"
+
M
+
"
+$
"
,
"
g
"
),
S
=
new
RegExp
(
"
^
"
+
M
+
"
*,
"
+
M
+
"
*
"
),
T
=
new
RegExp
(
"
^
"
+
M
+
"
*([>+~]|
"
+
M
+
"
)
"
+
M
+
"
*
"
),
U
=
new
RegExp
(
"
=
"
+
M
+
"
*([^
\\
]'
\"
]*?)
"
+
M
+
"
*
\\
]
"
,
"
g
"
),
V
=
new
RegExp
(
Q
),
W
=
new
RegExp
(
"
^
"
+
O
+
"
$
"
),
X
=
{
ID
:
new
RegExp
(
"
^#(
"
+
N
+
"
)
"
),
CLASS
:
new
RegExp
(
"
^
\\
.(
"
+
N
+
"
)
"
),
TAG
:
new
RegExp
(
"
^(
"
+
N
.
replace
(
"
w
"
,
"
w*
"
)
+
"
)
"
),
ATTR
:
new
RegExp
(
"
^
"
+
P
),
PSEUDO
:
new
RegExp
(
"
^
"
+
Q
),
CHILD
:
new
RegExp
(
"
^:(only|first|last|nth|nth-last)-(child|of-type)(?:
\\
(
"
+
M
+
"
*(even|odd|(([+-]|)(
\\
d*)n|)
"
+
M
+
"
*(?:([+-]|)
"
+
M
+
"
*(
\\
d+)|))
"
+
M
+
"
*
\\
)|)
"
,
"
i
"
),
bool
:
new
RegExp
(
"
^(?:
"
+
L
+
"
)$
"
,
"
i
"
),
needsContext
:
new
RegExp
(
"
^
"
+
M
+
"
*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:
\\
(
"
+
M
+
"
*((?:-
\\
d)?
\\
d*)
"
+
M
+
"
*
\\
)|)(?=[^-]|$)
"
,
"
i
"
)},
Y
=
/^
(?:
input|select|textarea|button
)
$/i
,
Z
=
/^h
\d
$/i
,
$
=
/^
[^
{
]
+
\{\s
*
\[
native
\w
/
,
_
=
/^
(?:
#
([\w
-
]
+
)
|
(\w
+
)
|
\.([\w
-
]
+
))
$/
,
ab
=
/
[
+~
]
/
,
bb
=
/'|
\\
/g
,
cb
=
new
RegExp
(
"
\\\\
([
\\
da-f]{1,6}
"
+
M
+
"
?|(
"
+
M
+
"
)|.)
"
,
"
ig
"
),
db
=
function
(
a
,
b
,
c
){
var
d
=
"
0x
"
+
b
-
65536
;
return
d
!==
d
||
c
?
b
:
0
>
d
?
String
.
fromCharCode
(
d
+
65536
):
String
.
fromCharCode
(
d
>>
10
|
55296
,
1023
&
d
|
56320
)};
try
{
I
.
apply
(
F
=
J
.
call
(
v
.
childNodes
),
v
.
childNodes
),
F
[
v
.
childNodes
.
length
].
nodeType
}
catch
(
eb
){
I
=
{
apply
:
F
.
length
?
function
(
a
,
b
){
H
.
apply
(
a
,
J
.
call
(
b
))}:
function
(
a
,
b
){
var
c
=
a
.
length
,
d
=
0
;
while
(
a
[
c
++
]
=
b
[
d
++
]);
a
.
length
=
c
-
1
}}}
function
fb
(
a
,
b
,
d
,
e
){
var
f
,
h
,
j
,
k
,
l
,
o
,
r
,
s
,
w
,
x
;
if
((
b
?
b
.
ownerDocument
||
b
:
v
)
!==
n
&&
m
(
b
),
b
=
b
||
n
,
d
=
d
||
[],
!
a
||
"
string
"
!=
typeof
a
)
return
d
;
if
(
1
!==
(
k
=
b
.
nodeType
)
&&
9
!==
k
)
return
[];
if
(
p
&&!
e
){
if
(
f
=
_
.
exec
(
a
))
if
(
j
=
f
[
1
]){
if
(
9
===
k
){
if
(
h
=
b
.
getElementById
(
j
),
!
h
||!
h
.
parentNode
)
return
d
;
if
(
h
.
id
===
j
)
return
d
.
push
(
h
),
d
}
else
if
(
b
.
ownerDocument
&&
(
h
=
b
.
ownerDocument
.
getElementById
(
j
))
&&
t
(
b
,
h
)
&&
h
.
id
===
j
)
return
d
.
push
(
h
),
d
}
else
{
if
(
f
[
2
])
return
I
.
apply
(
d
,
b
.
getElementsByTagName
(
a
)),
d
;
if
((
j
=
f
[
3
])
&&
c
.
getElementsByClassName
&&
b
.
getElementsByClassName
)
return
I
.
apply
(
d
,
b
.
getElementsByClassName
(
j
)),
d
}
if
(
c
.
qsa
&&
(
!
q
||!
q
.
test
(
a
))){
if
(
s
=
r
=
u
,
w
=
b
,
x
=
9
===
k
&&
a
,
1
===
k
&&
"
object
"
!==
b
.
nodeName
.
toLowerCase
()){
o
=
g
(
a
),(
r
=
b
.
getAttribute
(
"
id
"
))?
s
=
r
.
replace
(
bb
,
"
\\
$&
"
):
b
.
setAttribute
(
"
id
"
,
s
),
s
=
"
[id='
"
+
s
+
"
']
"
,
l
=
o
.
length
;
while
(
l
--
)
o
[
l
]
=
s
+
qb
(
o
[
l
]);
w
=
ab
.
test
(
a
)
&&
ob
(
b
.
parentNode
)
||
b
,
x
=
o
.
join
(
"
,
"
)}
if
(
x
)
try
{
return
I
.
apply
(
d
,
w
.
querySelectorAll
(
x
)),
d
}
catch
(
y
){}
finally
{
r
||
b
.
removeAttribute
(
"
id
"
)}}}
return
i
(
a
.
replace
(
R
,
"
$1
"
),
b
,
d
,
e
)}
function
gb
(){
var
a
=
[];
function
b
(
c
,
e
){
return
a
.
push
(
c
+
"
"
)
>
d
.
cacheLength
&&
delete
b
[
a
.
shift
()],
b
[
c
+
"
"
]
=
e
}
return
b
}
function
hb
(
a
){
return
a
[
u
]
=!
0
,
a
}
function
ib
(
a
){
var
b
=
n
.
createElement
(
"
div
"
);
try
{
return
!!
a
(
b
)}
catch
(
c
){
return
!
1
}
finally
{
b
.
parentNode
&&
b
.
parentNode
.
removeChild
(
b
),
b
=
null
}}
function
jb
(
a
,
b
){
var
c
=
a
.
split
(
"
|
"
),
e
=
a
.
length
;
while
(
e
--
)
d
.
attrHandle
[
c
[
e
]]
=
b
}
function
kb
(
a
,
b
){
var
c
=
b
&&
a
,
d
=
c
&&
1
===
a
.
nodeType
&&
1
===
b
.
nodeType
&&
(
~
b
.
sourceIndex
||
D
)
-
(
~
a
.
sourceIndex
||
D
);
if
(
d
)
return
d
;
if
(
c
)
while
(
c
=
c
.
nextSibling
)
if
(
c
===
b
)
return
-
1
;
return
a
?
1
:
-
1
}
function
lb
(
a
){
return
function
(
b
){
var
c
=
b
.
nodeName
.
toLowerCase
();
return
"
input
"
===
c
&&
b
.
type
===
a
}}
function
mb
(
a
){
return
function
(
b
){
var
c
=
b
.
nodeName
.
toLowerCase
();
return
(
"
input
"
===
c
||
"
button
"
===
c
)
&&
b
.
type
===
a
}}
function
nb
(
a
){
return
hb
(
function
(
b
){
return
b
=+
b
,
hb
(
function
(
c
,
d
){
var
e
,
f
=
a
([],
c
.
length
,
b
),
g
=
f
.
length
;
while
(
g
--
)
c
[
e
=
f
[
g
]]
&&
(
c
[
e
]
=!
(
d
[
e
]
=
c
[
e
]))})})}
function
ob
(
a
){
return
a
&&
typeof
a
.
getElementsByTagName
!==
C
&&
a
}
c
=
fb
.
support
=
{},
f
=
fb
.
isXML
=
function
(
a
){
var
b
=
a
&&
(
a
.
ownerDocument
||
a
).
documentElement
;
return
b
?
"
HTML
"
!==
b
.
nodeName
:
!
1
},
m
=
fb
.
setDocument
=
function
(
a
){
var
b
,
e
=
a
?
a
.
ownerDocument
||
a
:
v
,
g
=
e
.
defaultView
;
return
e
!==
n
&&
9
===
e
.
nodeType
&&
e
.
documentElement
?(
n
=
e
,
o
=
e
.
documentElement
,
p
=!
f
(
e
),
g
&&
g
!==
g
.
top
&&
(
g
.
addEventListener
?
g
.
addEventListener
(
"
unload
"
,
function
(){
m
()},
!
1
):
g
.
attachEvent
&&
g
.
attachEvent
(
"
onunload
"
,
function
(){
m
()})),
c
.
attributes
=
ib
(
function
(
a
){
return
a
.
className
=
"
i
"
,
!
a
.
getAttribute
(
"
className
"
)}),
c
.
getElementsByTagName
=
ib
(
function
(
a
){
return
a
.
appendChild
(
e
.
createComment
(
""
)),
!
a
.
getElementsByTagName
(
"
*
"
).
length
}),
c
.
getElementsByClassName
=
$
.
test
(
e
.
getElementsByClassName
)
&&
ib
(
function
(
a
){
return
a
.
innerHTML
=
"
<div class='a'></div><div class='a i'></div>
"
,
a
.
firstChild
.
className
=
"
i
"
,
2
===
a
.
getElementsByClassName
(
"
i
"
).
length
}),
c
.
getById
=
ib
(
function
(
a
){
return
o
.
appendChild
(
a
).
id
=
u
,
!
e
.
getElementsByName
||!
e
.
getElementsByName
(
u
).
length
}),
c
.
getById
?(
d
.
find
.
ID
=
function
(
a
,
b
){
if
(
typeof
b
.
getElementById
!==
C
&&
p
){
var
c
=
b
.
getElementById
(
a
);
return
c
&&
c
.
parentNode
?[
c
]:[]}},
d
.
filter
.
ID
=
function
(
a
){
var
b
=
a
.
replace
(
cb
,
db
);
return
function
(
a
){
return
a
.
getAttribute
(
"
id
"
)
===
b
}}):(
delete
d
.
find
.
ID
,
d
.
filter
.
ID
=
function
(
a
){
var
b
=
a
.
replace
(
cb
,
db
);
return
function
(
a
){
var
c
=
typeof
a
.
getAttributeNode
!==
C
&&
a
.
getAttributeNode
(
"
id
"
);
return
c
&&
c
.
value
===
b
}}),
d
.
find
.
TAG
=
c
.
getElementsByTagName
?
function
(
a
,
b
){
return
typeof
b
.
getElementsByTagName
!==
C
?
b
.
getElementsByTagName
(
a
):
void
0
}:
function
(
a
,
b
){
var
c
,
d
=
[],
e
=
0
,
f
=
b
.
getElementsByTagName
(
a
);
if
(
"
*
"
===
a
){
while
(
c
=
f
[
e
++
])
1
===
c
.
nodeType
&&
d
.
push
(
c
);
return
d
}
return
f
},
d
.
find
.
CLASS
=
c
.
getElementsByClassName
&&
function
(
a
,
b
){
return
typeof
b
.
getElementsByClassName
!==
C
&&
p
?
b
.
getElementsByClassName
(
a
):
void
0
},
r
=
[],
q
=
[],(
c
.
qsa
=
$
.
test
(
e
.
querySelectorAll
))
&&
(
ib
(
function
(
a
){
a
.
innerHTML
=
"
<select msallowclip=''><option selected=''></option></select>
"
,
a
.
querySelectorAll
(
"
[msallowclip^='']
"
).
length
&&
q
.
push
(
"
[*^$]=
"
+
M
+
"
*(?:''|
\"\"
)
"
),
a
.
querySelectorAll
(
"
[selected]
"
).
length
||
q
.
push
(
"
\\
[
"
+
M
+
"
*(?:value|
"
+
L
+
"
)
"
),
a
.
querySelectorAll
(
"
:checked
"
).
length
||
q
.
push
(
"
:checked
"
)}),
ib
(
function
(
a
){
var
b
=
e
.
createElement
(
"
input
"
);
b
.
setAttribute
(
"
type
"
,
"
hidden
"
),
a
.
appendChild
(
b
).
setAttribute
(
"
name
"
,
"
D
"
),
a
.
querySelectorAll
(
"
[name=d]
"
).
length
&&
q
.
push
(
"
name
"
+
M
+
"
*[*^$|!~]?=
"
),
a
.
querySelectorAll
(
"
:enabled
"
).
length
||
q
.
push
(
"
:enabled
"
,
"
:disabled
"
),
a
.
querySelectorAll
(
"
*,:x
"
),
q
.
push
(
"
,.*:
"
)})),(
c
.
matchesSelector
=
$
.
test
(
s
=
o
.
matches
||
o
.
webkitMatchesSelector
||
o
.
mozMatchesSelector
||
o
.
oMatchesSelector
||
o
.
msMatchesSelector
))
&&
ib
(
function
(
a
){
c
.
disconnectedMatch
=
s
.
call
(
a
,
"
div
"
),
s
.
call
(
a
,
"
[s!='']:x
"
),
r
.
push
(
"
!=
"
,
Q
)}),
q
=
q
.
length
&&
new
RegExp
(
q
.
join
(
"
|
"
)),
r
=
r
.
length
&&
new
RegExp
(
r
.
join
(
"
|
"
)),
b
=
$
.
test
(
o
.
compareDocumentPosition
),
t
=
b
||
$
.
test
(
o
.
contains
)?
function
(
a
,
b
){
var
c
=
9
===
a
.
nodeType
?
a
.
documentElement
:
a
,
d
=
b
&&
b
.
parentNode
;
return
a
===
d
||!
(
!
d
||
1
!==
d
.
nodeType
||!
(
c
.
contains
?
c
.
contains
(
d
):
a
.
compareDocumentPosition
&&
16
&
a
.
compareDocumentPosition
(
d
)))}:
function
(
a
,
b
){
if
(
b
)
while
(
b
=
b
.
parentNode
)
if
(
b
===
a
)
return
!
0
;
return
!
1
},
B
=
b
?
function
(
a
,
b
){
if
(
a
===
b
)
return
l
=!
0
,
0
;
var
d
=!
a
.
compareDocumentPosition
-!
b
.
compareDocumentPosition
;
return
d
?
d
:(
d
=
(
a
.
ownerDocument
||
a
)
===
(
b
.
ownerDocument
||
b
)?
a
.
compareDocumentPosition
(
b
):
1
,
1
&
d
||!
c
.
sortDetached
&&
b
.
compareDocumentPosition
(
a
)
===
d
?
a
===
e
||
a
.
ownerDocument
===
v
&&
t
(
v
,
a
)?
-
1
:
b
===
e
||
b
.
ownerDocument
===
v
&&
t
(
v
,
b
)?
1
:
k
?
K
.
call
(
k
,
a
)
-
K
.
call
(
k
,
b
):
0
:
4
&
d
?
-
1
:
1
)}:
function
(
a
,
b
){
if
(
a
===
b
)
return
l
=!
0
,
0
;
var
c
,
d
=
0
,
f
=
a
.
parentNode
,
g
=
b
.
parentNode
,
h
=
[
a
],
i
=
[
b
];
if
(
!
f
||!
g
)
return
a
===
e
?
-
1
:
b
===
e
?
1
:
f
?
-
1
:
g
?
1
:
k
?
K
.
call
(
k
,
a
)
-
K
.
call
(
k
,
b
):
0
;
if
(
f
===
g
)
return
kb
(
a
,
b
);
c
=
a
;
while
(
c
=
c
.
parentNode
)
h
.
unshift
(
c
);
c
=
b
;
while
(
c
=
c
.
parentNode
)
i
.
unshift
(
c
);
while
(
h
[
d
]
===
i
[
d
])
d
++
;
return
d
?
kb
(
h
[
d
],
i
[
d
]):
h
[
d
]
===
v
?
-
1
:
i
[
d
]
===
v
?
1
:
0
},
e
):
n
},
fb
.
matches
=
function
(
a
,
b
){
return
fb
(
a
,
null
,
null
,
b
)},
fb
.
matchesSelector
=
function
(
a
,
b
){
if
((
a
.
ownerDocument
||
a
)
!==
n
&&
m
(
a
),
b
=
b
.
replace
(
U
,
"
='$1']
"
),
!
(
!
c
.
matchesSelector
||!
p
||
r
&&
r
.
test
(
b
)
||
q
&&
q
.
test
(
b
)))
try
{
var
d
=
s
.
call
(
a
,
b
);
if
(
d
||
c
.
disconnectedMatch
||
a
.
document
&&
11
!==
a
.
document
.
nodeType
)
return
d
}
catch
(
e
){}
return
fb
(
b
,
n
,
null
,[
a
]).
length
>
0
},
fb
.
contains
=
function
(
a
,
b
){
return
(
a
.
ownerDocument
||
a
)
!==
n
&&
m
(
a
),
t
(
a
,
b
)},
fb
.
attr
=
function
(
a
,
b
){(
a
.
ownerDocument
||
a
)
!==
n
&&
m
(
a
);
var
e
=
d
.
attrHandle
[
b
.
toLowerCase
()],
f
=
e
&&
E
.
call
(
d
.
attrHandle
,
b
.
toLowerCase
())?
e
(
a
,
b
,
!
p
):
void
0
;
return
void
0
!==
f
?
f
:
c
.
attributes
||!
p
?
a
.
getAttribute
(
b
):(
f
=
a
.
getAttributeNode
(
b
))
&&
f
.
specified
?
f
.
value
:
null
},
fb
.
error
=
function
(
a
){
throw
new
Error
(
"
Syntax error, unrecognized expression:
"
+
a
)},
fb
.
uniqueSort
=
function
(
a
){
var
b
,
d
=
[],
e
=
0
,
f
=
0
;
if
(
l
=!
c
.
detectDuplicates
,
k
=!
c
.
sortStable
&&
a
.
slice
(
0
),
a
.
sort
(
B
),
l
){
while
(
b
=
a
[
f
++
])
b
===
a
[
f
]
&&
(
e
=
d
.
push
(
f
));
while
(
e
--
)
a
.
splice
(
d
[
e
],
1
)}
return
k
=
null
,
a
},
e
=
fb
.
getText
=
function
(
a
){
var
b
,
c
=
""
,
d
=
0
,
f
=
a
.
nodeType
;
if
(
f
){
if
(
1
===
f
||
9
===
f
||
11
===
f
){
if
(
"
string
"
==
typeof
a
.
textContent
)
return
a
.
textContent
;
for
(
a
=
a
.
firstChild
;
a
;
a
=
a
.
nextSibling
)
c
+=
e
(
a
)}
else
if
(
3
===
f
||
4
===
f
)
return
a
.
nodeValue
}
else
while
(
b
=
a
[
d
++
])
c
+=
e
(
b
);
return
c
},
d
=
fb
.
selectors
=
{
cacheLength
:
50
,
createPseudo
:
hb
,
match
:
X
,
attrHandle
:{},
find
:{},
relative
:{
"
>
"
:{
dir
:
"
parentNode
"
,
first
:
!
0
},
"
"
:{
dir
:
"
parentNode
"
},
"
+
"
:{
dir
:
"
previousSibling
"
,
first
:
!
0
},
"
~
"
:{
dir
:
"
previousSibling
"
}},
preFilter
:{
ATTR
:
function
(
a
){
return
a
[
1
]
=
a
[
1
].
replace
(
cb
,
db
),
a
[
3
]
=
(
a
[
3
]
||
a
[
4
]
||
a
[
5
]
||
""
).
replace
(
cb
,
db
),
"
~=
"
===
a
[
2
]
&&
(
a
[
3
]
=
"
"
+
a
[
3
]
+
"
"
),
a
.
slice
(
0
,
4
)},
CHILD
:
function
(
a
){
return
a
[
1
]
=
a
[
1
].
toLowerCase
(),
"
nth
"
===
a
[
1
].
slice
(
0
,
3
)?(
a
[
3
]
||
fb
.
error
(
a
[
0
]),
a
[
4
]
=+
(
a
[
4
]?
a
[
5
]
+
(
a
[
6
]
||
1
):
2
*
(
"
even
"
===
a
[
3
]
||
"
odd
"
===
a
[
3
])),
a
[
5
]
=+
(
a
[
7
]
+
a
[
8
]
||
"
odd
"
===
a
[
3
])):
a
[
3
]
&&
fb
.
error
(
a
[
0
]),
a
},
PSEUDO
:
function
(
a
){
var
b
,
c
=!
a
[
6
]
&&
a
[
2
];
return
X
.
CHILD
.
test
(
a
[
0
])?
null
:(
a
[
3
]?
a
[
2
]
=
a
[
4
]
||
a
[
5
]
||
""
:
c
&&
V
.
test
(
c
)
&&
(
b
=
g
(
c
,
!
0
))
&&
(
b
=
c
.
indexOf
(
"
)
"
,
c
.
length
-
b
)
-
c
.
length
)
&&
(
a
[
0
]
=
a
[
0
].
slice
(
0
,
b
),
a
[
2
]
=
c
.
slice
(
0
,
b
)),
a
.
slice
(
0
,
3
))}},
filter
:{
TAG
:
function
(
a
){
var
b
=
a
.
replace
(
cb
,
db
).
toLowerCase
();
return
"
*
"
===
a
?
function
(){
return
!
0
}:
function
(
a
){
return
a
.
nodeName
&&
a
.
nodeName
.
toLowerCase
()
===
b
}},
CLASS
:
function
(
a
){
var
b
=
y
[
a
+
"
"
];
return
b
||
(
b
=
new
RegExp
(
"
(^|
"
+
M
+
"
)
"
+
a
+
"
(
"
+
M
+
"
|$)
"
))
&&
y
(
a
,
function
(
a
){
return
b
.
test
(
"
string
"
==
typeof
a
.
className
&&
a
.
className
||
typeof
a
.
getAttribute
!==
C
&&
a
.
getAttribute
(
"
class
"
)
||
""
)})},
ATTR
:
function
(
a
,
b
,
c
){
return
function
(
d
){
var
e
=
fb
.
attr
(
d
,
a
);
return
null
==
e
?
"
!=
"
===
b
:
b
?(
e
+=
""
,
"
=
"
===
b
?
e
===
c
:
"
!=
"
===
b
?
e
!==
c
:
"
^=
"
===
b
?
c
&&
0
===
e
.
indexOf
(
c
):
"
*=
"
===
b
?
c
&&
e
.
indexOf
(
c
)
>-
1
:
"
$=
"
===
b
?
c
&&
e
.
slice
(
-
c
.
length
)
===
c
:
"
~=
"
===
b
?(
"
"
+
e
+
"
"
).
indexOf
(
c
)
>-
1
:
"
|=
"
===
b
?
e
===
c
||
e
.
slice
(
0
,
c
.
length
+
1
)
===
c
+
"
-
"
:
!
1
):
!
0
}},
CHILD
:
function
(
a
,
b
,
c
,
d
,
e
){
var
f
=
"
nth
"
!==
a
.
slice
(
0
,
3
),
g
=
"
last
"
!==
a
.
slice
(
-
4
),
h
=
"
of-type
"
===
b
;
return
1
===
d
&&
0
===
e
?
function
(
a
){
return
!!
a
.
parentNode
}:
function
(
b
,
c
,
i
){
var
j
,
k
,
l
,
m
,
n
,
o
,
p
=
f
!==
g
?
"
nextSibling
"
:
"
previousSibling
"
,
q
=
b
.
parentNode
,
r
=
h
&&
b
.
nodeName
.
toLowerCase
(),
s
=!
i
&&!
h
;
if
(
q
){
if
(
f
){
while
(
p
){
l
=
b
;
while
(
l
=
l
[
p
])
if
(
h
?
l
.
nodeName
.
toLowerCase
()
===
r
:
1
===
l
.
nodeType
)
return
!
1
;
o
=
p
=
"
only
"
===
a
&&!
o
&&
"
nextSibling
"
}
return
!
0
}
if
(
o
=
[
g
?
q
.
firstChild
:
q
.
lastChild
],
g
&&
s
){
k
=
q
[
u
]
||
(
q
[
u
]
=
{}),
j
=
k
[
a
]
||
[],
n
=
j
[
0
]
===
w
&&
j
[
1
],
m
=
j
[
0
]
===
w
&&
j
[
2
],
l
=
n
&&
q
.
childNodes
[
n
];
while
(
l
=++
n
&&
l
&&
l
[
p
]
||
(
m
=
n
=
0
)
||
o
.
pop
())
if
(
1
===
l
.
nodeType
&&++
m
&&
l
===
b
){
k
[
a
]
=
[
w
,
n
,
m
];
break
}}
else
if
(
s
&&
(
j
=
(
b
[
u
]
||
(
b
[
u
]
=
{}))[
a
])
&&
j
[
0
]
===
w
)
m
=
j
[
1
];
else
while
(
l
=++
n
&&
l
&&
l
[
p
]
||
(
m
=
n
=
0
)
||
o
.
pop
())
if
((
h
?
l
.
nodeName
.
toLowerCase
()
===
r
:
1
===
l
.
nodeType
)
&&++
m
&&
(
s
&&
((
l
[
u
]
||
(
l
[
u
]
=
{}))[
a
]
=
[
w
,
m
]),
l
===
b
))
break
;
return
m
-=
e
,
m
===
d
||
m
%
d
===
0
&&
m
/
d
>=
0
}}},
PSEUDO
:
function
(
a
,
b
){
var
c
,
e
=
d
.
pseudos
[
a
]
||
d
.
setFilters
[
a
.
toLowerCase
()]
||
fb
.
error
(
"
unsupported pseudo:
"
+
a
);
return
e
[
u
]?
e
(
b
):
e
.
length
>
1
?(
c
=
[
a
,
a
,
""
,
b
],
d
.
setFilters
.
hasOwnProperty
(
a
.
toLowerCase
())?
hb
(
function
(
a
,
c
){
var
d
,
f
=
e
(
a
,
b
),
g
=
f
.
length
;
while
(
g
--
)
d
=
K
.
call
(
a
,
f
[
g
]),
a
[
d
]
=!
(
c
[
d
]
=
f
[
g
])}):
function
(
a
){
return
e
(
a
,
0
,
c
)}):
e
}},
pseudos
:{
not
:
hb
(
function
(
a
){
var
b
=
[],
c
=
[],
d
=
h
(
a
.
replace
(
R
,
"
$1
"
));
return
d
[
u
]?
hb
(
function
(
a
,
b
,
c
,
e
){
var
f
,
g
=
d
(
a
,
null
,
e
,[]),
h
=
a
.
length
;
while
(
h
--
)(
f
=
g
[
h
])
&&
(
a
[
h
]
=!
(
b
[
h
]
=
f
))}):
function
(
a
,
e
,
f
){
return
b
[
0
]
=
a
,
d
(
b
,
null
,
f
,
c
),
!
c
.
pop
()}}),
has
:
hb
(
function
(
a
){
return
function
(
b
){
return
fb
(
a
,
b
).
length
>
0
}}),
contains
:
hb
(
function
(
a
){
return
function
(
b
){
return
(
b
.
textContent
||
b
.
innerText
||
e
(
b
)).
indexOf
(
a
)
>-
1
}}),
lang
:
hb
(
function
(
a
){
return
W
.
test
(
a
||
""
)
||
fb
.
error
(
"
unsupported lang:
"
+
a
),
a
=
a
.
replace
(
cb
,
db
).
toLowerCase
(),
function
(
b
){
var
c
;
do
if
(
c
=
p
?
b
.
lang
:
b
.
getAttribute
(
"
xml:lang
"
)
||
b
.
getAttribute
(
"
lang
"
))
return
c
=
c
.
toLowerCase
(),
c
===
a
||
0
===
c
.
indexOf
(
a
+
"
-
"
);
while
((
b
=
b
.
parentNode
)
&&
1
===
b
.
nodeType
);
return
!
1
}}),
target
:
function
(
b
){
var
c
=
a
.
location
&&
a
.
location
.
hash
;
return
c
&&
c
.
slice
(
1
)
===
b
.
id
},
root
:
function
(
a
){
return
a
===
o
},
focus
:
function
(
a
){
return
a
===
n
.
activeElement
&&
(
!
n
.
hasFocus
||
n
.
hasFocus
())
&&!!
(
a
.
type
||
a
.
href
||~
a
.
tabIndex
)},
enabled
:
function
(
a
){
return
a
.
disabled
===!
1
},
disabled
:
function
(
a
){
return
a
.
disabled
===!
0
},
checked
:
function
(
a
){
var
b
=
a
.
nodeName
.
toLowerCase
();
return
"
input
"
===
b
&&!!
a
.
checked
||
"
option
"
===
b
&&!!
a
.
selected
},
selected
:
function
(
a
){
return
a
.
parentNode
&&
a
.
parentNode
.
selectedIndex
,
a
.
selected
===!
0
},
empty
:
function
(
a
){
for
(
a
=
a
.
firstChild
;
a
;
a
=
a
.
nextSibling
)
if
(
a
.
nodeType
<
6
)
return
!
1
;
return
!
0
},
parent
:
function
(
a
){
return
!
d
.
pseudos
.
empty
(
a
)},
header
:
function
(
a
){
return
Z
.
test
(
a
.
nodeName
)},
input
:
function
(
a
){
return
Y
.
test
(
a
.
nodeName
)},
button
:
function
(
a
){
var
b
=
a
.
nodeName
.
toLowerCase
();
return
"
input
"
===
b
&&
"
button
"
===
a
.
type
||
"
button
"
===
b
},
text
:
function
(
a
){
var
b
;
return
"
input
"
===
a
.
nodeName
.
toLowerCase
()
&&
"
text
"
===
a
.
type
&&
(
null
==
(
b
=
a
.
getAttribute
(
"
type
"
))
||
"
text
"
===
b
.
toLowerCase
())},
first
:
nb
(
function
(){
return
[
0
]}),
last
:
nb
(
function
(
a
,
b
){
return
[
b
-
1
]}),
eq
:
nb
(
function
(
a
,
b
,
c
){
return
[
0
>
c
?
c
+
b
:
c
]}),
even
:
nb
(
function
(
a
,
b
){
for
(
var
c
=
0
;
b
>
c
;
c
+=
2
)
a
.
push
(
c
);
return
a
}),
odd
:
nb
(
function
(
a
,
b
){
for
(
var
c
=
1
;
b
>
c
;
c
+=
2
)
a
.
push
(
c
);
return
a
}),
lt
:
nb
(
function
(
a
,
b
,
c
){
for
(
var
d
=
0
>
c
?
c
+
b
:
c
;
--
d
>=
0
;)
a
.
push
(
d
);
return
a
}),
gt
:
nb
(
function
(
a
,
b
,
c
){
for
(
var
d
=
0
>
c
?
c
+
b
:
c
;
++
d
<
b
;)
a
.
push
(
d
);
return
a
})}},
d
.
pseudos
.
nth
=
d
.
pseudos
.
eq
;
for
(
b
in
{
radio
:
!
0
,
checkbox
:
!
0
,
file
:
!
0
,
password
:
!
0
,
image
:
!
0
})
d
.
pseudos
[
b
]
=
lb
(
b
);
for
(
b
in
{
submit
:
!
0
,
reset
:
!
0
})
d
.
pseudos
[
b
]
=
mb
(
b
);
function
pb
(){}
pb
.
prototype
=
d
.
filters
=
d
.
pseudos
,
d
.
setFilters
=
new
pb
,
g
=
fb
.
tokenize
=
function
(
a
,
b
){
var
c
,
e
,
f
,
g
,
h
,
i
,
j
,
k
=
z
[
a
+
"
"
];
if
(
k
)
return
b
?
0
:
k
.
slice
(
0
);
h
=
a
,
i
=
[],
j
=
d
.
preFilter
;
while
(
h
){(
!
c
||
(
e
=
S
.
exec
(
h
)))
&&
(
e
&&
(
h
=
h
.
slice
(
e
[
0
].
length
)
||
h
),
i
.
push
(
f
=
[])),
c
=!
1
,(
e
=
T
.
exec
(
h
))
&&
(
c
=
e
.
shift
(),
f
.
push
({
value
:
c
,
type
:
e
[
0
].
replace
(
R
,
"
"
)}),
h
=
h
.
slice
(
c
.
length
));
for
(
g
in
d
.
filter
)
!
(
e
=
X
[
g
].
exec
(
h
))
||
j
[
g
]
&&!
(
e
=
j
[
g
](
e
))
||
(
c
=
e
.
shift
(),
f
.
push
({
value
:
c
,
type
:
g
,
matches
:
e
}),
h
=
h
.
slice
(
c
.
length
));
if
(
!
c
)
break
}
return
b
?
h
.
length
:
h
?
fb
.
error
(
a
):
z
(
a
,
i
).
slice
(
0
)};
function
qb
(
a
){
for
(
var
b
=
0
,
c
=
a
.
length
,
d
=
""
;
c
>
b
;
b
++
)
d
+=
a
[
b
].
value
;
return
d
}
function
rb
(
a
,
b
,
c
){
var
d
=
b
.
dir
,
e
=
c
&&
"
parentNode
"
===
d
,
f
=
x
++
;
return
b
.
first
?
function
(
b
,
c
,
f
){
while
(
b
=
b
[
d
])
if
(
1
===
b
.
nodeType
||
e
)
return
a
(
b
,
c
,
f
)}:
function
(
b
,
c
,
g
){
var
h
,
i
,
j
=
[
w
,
f
];
if
(
g
){
while
(
b
=
b
[
d
])
if
((
1
===
b
.
nodeType
||
e
)
&&
a
(
b
,
c
,
g
))
return
!
0
}
else
while
(
b
=
b
[
d
])
if
(
1
===
b
.
nodeType
||
e
){
if
(
i
=
b
[
u
]
||
(
b
[
u
]
=
{}),(
h
=
i
[
d
])
&&
h
[
0
]
===
w
&&
h
[
1
]
===
f
)
return
j
[
2
]
=
h
[
2
];
if
(
i
[
d
]
=
j
,
j
[
2
]
=
a
(
b
,
c
,
g
))
return
!
0
}}}
function
sb
(
a
){
return
a
.
length
>
1
?
function
(
b
,
c
,
d
){
var
e
=
a
.
length
;
while
(
e
--
)
if
(
!
a
[
e
](
b
,
c
,
d
))
return
!
1
;
return
!
0
}:
a
[
0
]}
function
tb
(
a
,
b
,
c
){
for
(
var
d
=
0
,
e
=
b
.
length
;
e
>
d
;
d
++
)
fb
(
a
,
b
[
d
],
c
);
return
c
}
function
ub
(
a
,
b
,
c
,
d
,
e
){
for
(
var
f
,
g
=
[],
h
=
0
,
i
=
a
.
length
,
j
=
null
!=
b
;
i
>
h
;
h
++
)(
f
=
a
[
h
])
&&
(
!
c
||
c
(
f
,
d
,
e
))
&&
(
g
.
push
(
f
),
j
&&
b
.
push
(
h
));
return
g
}
function
vb
(
a
,
b
,
c
,
d
,
e
,
f
){
return
d
&&!
d
[
u
]
&&
(
d
=
vb
(
d
)),
e
&&!
e
[
u
]
&&
(
e
=
vb
(
e
,
f
)),
hb
(
function
(
f
,
g
,
h
,
i
){
var
j
,
k
,
l
,
m
=
[],
n
=
[],
o
=
g
.
length
,
p
=
f
||
tb
(
b
||
"
*
"
,
h
.
nodeType
?[
h
]:
h
,[]),
q
=!
a
||!
f
&&
b
?
p
:
ub
(
p
,
m
,
a
,
h
,
i
),
r
=
c
?
e
||
(
f
?
a
:
o
||
d
)?[]:
g
:
q
;
if
(
c
&&
c
(
q
,
r
,
h
,
i
),
d
){
j
=
ub
(
r
,
n
),
d
(
j
,[],
h
,
i
),
k
=
j
.
length
;
while
(
k
--
)(
l
=
j
[
k
])
&&
(
r
[
n
[
k
]]
=!
(
q
[
n
[
k
]]
=
l
))}
if
(
f
){
if
(
e
||
a
){
if
(
e
){
j
=
[],
k
=
r
.
length
;
while
(
k
--
)(
l
=
r
[
k
])
&&
j
.
push
(
q
[
k
]
=
l
);
e
(
null
,
r
=
[],
j
,
i
)}
k
=
r
.
length
;
while
(
k
--
)(
l
=
r
[
k
])
&&
(
j
=
e
?
K
.
call
(
f
,
l
):
m
[
k
])
>-
1
&&
(
f
[
j
]
=!
(
g
[
j
]
=
l
))}}
else
r
=
ub
(
r
===
g
?
r
.
splice
(
o
,
r
.
length
):
r
),
e
?
e
(
null
,
g
,
r
,
i
):
I
.
apply
(
g
,
r
)})}
function
wb
(
a
){
for
(
var
b
,
c
,
e
,
f
=
a
.
length
,
g
=
d
.
relative
[
a
[
0
].
type
],
h
=
g
||
d
.
relative
[
"
"
],
i
=
g
?
1
:
0
,
k
=
rb
(
function
(
a
){
return
a
===
b
},
h
,
!
0
),
l
=
rb
(
function
(
a
){
return
K
.
call
(
b
,
a
)
>-
1
},
h
,
!
0
),
m
=
[
function
(
a
,
c
,
d
){
return
!
g
&&
(
d
||
c
!==
j
)
||
((
b
=
c
).
nodeType
?
k
(
a
,
c
,
d
):
l
(
a
,
c
,
d
))}];
f
>
i
;
i
++
)
if
(
c
=
d
.
relative
[
a
[
i
].
type
])
m
=
[
rb
(
sb
(
m
),
c
)];
else
{
if
(
c
=
d
.
filter
[
a
[
i
].
type
].
apply
(
null
,
a
[
i
].
matches
),
c
[
u
]){
for
(
e
=++
i
;
f
>
e
;
e
++
)
if
(
d
.
relative
[
a
[
e
].
type
])
break
;
return
vb
(
i
>
1
&&
sb
(
m
),
i
>
1
&&
qb
(
a
.
slice
(
0
,
i
-
1
).
concat
({
value
:
"
"
===
a
[
i
-
2
].
type
?
"
*
"
:
""
})).
replace
(
R
,
"
$1
"
),
c
,
e
>
i
&&
wb
(
a
.
slice
(
i
,
e
)),
f
>
e
&&
wb
(
a
=
a
.
slice
(
e
)),
f
>
e
&&
qb
(
a
))}
m
.
push
(
c
)}
return
sb
(
m
)}
function
xb
(
a
,
b
){
var
c
=
b
.
length
>
0
,
e
=
a
.
length
>
0
,
f
=
function
(
f
,
g
,
h
,
i
,
k
){
var
l
,
m
,
o
,
p
=
0
,
q
=
"
0
"
,
r
=
f
&&
[],
s
=
[],
t
=
j
,
u
=
f
||
e
&&
d
.
find
.
TAG
(
"
*
"
,
k
),
v
=
w
+=
null
==
t
?
1
:
Math
.
random
()
||
.
1
,
x
=
u
.
length
;
for
(
k
&&
(
j
=
g
!==
n
&&
g
);
q
!==
x
&&
null
!=
(
l
=
u
[
q
]);
q
++
){
if
(
e
&&
l
){
m
=
0
;
while
(
o
=
a
[
m
++
])
if
(
o
(
l
,
g
,
h
)){
i
.
push
(
l
);
break
}
k
&&
(
w
=
v
)}
c
&&
((
l
=!
o
&&
l
)
&&
p
--
,
f
&&
r
.
push
(
l
))}
if
(
p
+=
q
,
c
&&
q
!==
p
){
m
=
0
;
while
(
o
=
b
[
m
++
])
o
(
r
,
s
,
g
,
h
);
if
(
f
){
if
(
p
>
0
)
while
(
q
--
)
r
[
q
]
||
s
[
q
]
||
(
s
[
q
]
=
G
.
call
(
i
));
s
=
ub
(
s
)}
I
.
apply
(
i
,
s
),
k
&&!
f
&&
s
.
length
>
0
&&
p
+
b
.
length
>
1
&&
fb
.
uniqueSort
(
i
)}
return
k
&&
(
w
=
v
,
j
=
t
),
r
};
return
c
?
hb
(
f
):
f
}
return
h
=
fb
.
compile
=
function
(
a
,
b
){
var
c
,
d
=
[],
e
=
[],
f
=
A
[
a
+
"
"
];
if
(
!
f
){
b
||
(
b
=
g
(
a
)),
c
=
b
.
length
;
while
(
c
--
)
f
=
wb
(
b
[
c
]),
f
[
u
]?
d
.
push
(
f
):
e
.
push
(
f
);
f
=
A
(
a
,
xb
(
e
,
d
)),
f
.
selector
=
a
}
return
f
},
i
=
fb
.
select
=
function
(
a
,
b
,
e
,
f
){
var
i
,
j
,
k
,
l
,
m
,
n
=
"
function
"
==
typeof
a
&&
a
,
o
=!
f
&&
g
(
a
=
n
.
selector
||
a
);
if
(
e
=
e
||
[],
1
===
o
.
length
){
if
(
j
=
o
[
0
]
=
o
[
0
].
slice
(
0
),
j
.
length
>
2
&&
"
ID
"
===
(
k
=
j
[
0
]).
type
&&
c
.
getById
&&
9
===
b
.
nodeType
&&
p
&&
d
.
relative
[
j
[
1
].
type
]){
if
(
b
=
(
d
.
find
.
ID
(
k
.
matches
[
0
].
replace
(
cb
,
db
),
b
)
||
[])[
0
],
!
b
)
return
e
;
n
&&
(
b
=
b
.
parentNode
),
a
=
a
.
slice
(
j
.
shift
().
value
.
length
)}
i
=
X
.
needsContext
.
test
(
a
)?
0
:
j
.
length
;
while
(
i
--
){
if
(
k
=
j
[
i
],
d
.
relative
[
l
=
k
.
type
])
break
;
if
((
m
=
d
.
find
[
l
])
&&
(
f
=
m
(
k
.
matches
[
0
].
replace
(
cb
,
db
),
ab
.
test
(
j
[
0
].
type
)
&&
ob
(
b
.
parentNode
)
||
b
))){
if
(
j
.
splice
(
i
,
1
),
a
=
f
.
length
&&
qb
(
j
),
!
a
)
return
I
.
apply
(
e
,
f
),
e
;
break
}}}
return
(
n
||
h
(
a
,
o
))(
f
,
b
,
!
p
,
e
,
ab
.
test
(
a
)
&&
ob
(
b
.
parentNode
)
||
b
),
e
},
c
.
sortStable
=
u
.
split
(
""
).
sort
(
B
).
join
(
""
)
===
u
,
c
.
detectDuplicates
=!!
l
,
m
(),
c
.
sortDetached
=
ib
(
function
(
a
){
return
1
&
a
.
compareDocumentPosition
(
n
.
createElement
(
"
div
"
))}),
ib
(
function
(
a
){
return
a
.
innerHTML
=
"
<a href='#'></a>
"
,
"
#
"
===
a
.
firstChild
.
getAttribute
(
"
href
"
)})
||
jb
(
"
type|href|height|width
"
,
function
(
a
,
b
,
c
){
return
c
?
void
0
:
a
.
getAttribute
(
b
,
"
type
"
===
b
.
toLowerCase
()?
1
:
2
)}),
c
.
attributes
&&
ib
(
function
(
a
){
return
a
.
innerHTML
=
"
<input/>
"
,
a
.
firstChild
.
setAttribute
(
"
value
"
,
""
),
""
===
a
.
firstChild
.
getAttribute
(
"
value
"
)})
||
jb
(
"
value
"
,
function
(
a
,
b
,
c
){
return
c
||
"
input
"
!==
a
.
nodeName
.
toLowerCase
()?
void
0
:
a
.
defaultValue
}),
ib
(
function
(
a
){
return
null
==
a
.
getAttribute
(
"
disabled
"
)})
||
jb
(
L
,
function
(
a
,
b
,
c
){
var
d
;
return
c
?
void
0
:
a
[
b
]
===!
0
?
b
.
toLowerCase
():(
d
=
a
.
getAttributeNode
(
b
))
&&
d
.
specified
?
d
.
value
:
null
}),
fb
}(
a
);
n
.
find
=
t
,
n
.
expr
=
t
.
selectors
,
n
.
expr
[
"
:
"
]
=
n
.
expr
.
pseudos
,
n
.
unique
=
t
.
uniqueSort
,
n
.
text
=
t
.
getText
,
n
.
isXMLDoc
=
t
.
isXML
,
n
.
contains
=
t
.
contains
;
var
u
=
n
.
expr
.
match
.
needsContext
,
v
=
/^<
(\w
+
)\s
*
\/?
>
(?:
<
\/\1
>|
)
$/
,
w
=
/^.
[^
:#
\[\.
,
]
*$/
;
function
x
(
a
,
b
,
c
){
if
(
n
.
isFunction
(
b
))
return
n
.
grep
(
a
,
function
(
a
,
d
){
return
!!
b
.
call
(
a
,
d
,
a
)
!==
c
});
if
(
b
.
nodeType
)
return
n
.
grep
(
a
,
function
(
a
){
return
a
===
b
!==
c
});
if
(
"
string
"
==
typeof
b
){
if
(
w
.
test
(
b
))
return
n
.
filter
(
b
,
a
,
c
);
b
=
n
.
filter
(
b
,
a
)}
return
n
.
grep
(
a
,
function
(
a
){
return
g
.
call
(
b
,
a
)
>=
0
!==
c
})}
n
.
filter
=
function
(
a
,
b
,
c
){
var
d
=
b
[
0
];
return
c
&&
(
a
=
"
:not(
"
+
a
+
"
)
"
),
1
===
b
.
length
&&
1
===
d
.
nodeType
?
n
.
find
.
matchesSelector
(
d
,
a
)?[
d
]:[]:
n
.
find
.
matches
(
a
,
n
.
grep
(
b
,
function
(
a
){
return
1
===
a
.
nodeType
}))},
n
.
fn
.
extend
({
find
:
function
(
a
){
var
b
,
c
=
this
.
length
,
d
=
[],
e
=
this
;
if
(
"
string
"
!=
typeof
a
)
return
this
.
pushStack
(
n
(
a
).
filter
(
function
(){
for
(
b
=
0
;
c
>
b
;
b
++
)
if
(
n
.
contains
(
e
[
b
],
this
))
return
!
0
}));
for
(
b
=
0
;
c
>
b
;
b
++
)
n
.
find
(
a
,
e
[
b
],
d
);
return
d
=
this
.
pushStack
(
c
>
1
?
n
.
unique
(
d
):
d
),
d
.
selector
=
this
.
selector
?
this
.
selector
+
"
"
+
a
:
a
,
d
},
filter
:
function
(
a
){
return
this
.
pushStack
(
x
(
this
,
a
||
[],
!
1
))},
not
:
function
(
a
){
return
this
.
pushStack
(
x
(
this
,
a
||
[],
!
0
))},
is
:
function
(
a
){
return
!!
x
(
this
,
"
string
"
==
typeof
a
&&
u
.
test
(
a
)?
n
(
a
):
a
||
[],
!
1
).
length
}});
var
y
,
z
=
/^
(?:\s
*
(
<
[\w\W]
+>
)[^
>
]
*|#
([\w
-
]
*
))
$/
,
A
=
n
.
fn
.
init
=
function
(
a
,
b
){
var
c
,
d
;
if
(
!
a
)
return
this
;
if
(
"
string
"
==
typeof
a
){
if
(
c
=
"
<
"
===
a
[
0
]
&&
"
>
"
===
a
[
a
.
length
-
1
]
&&
a
.
length
>=
3
?[
null
,
a
,
null
]:
z
.
exec
(
a
),
!
c
||!
c
[
1
]
&&
b
)
return
!
b
||
b
.
jquery
?(
b
||
y
).
find
(
a
):
this
.
constructor
(
b
).
find
(
a
);
if
(
c
[
1
]){
if
(
b
=
b
instanceof
n
?
b
[
0
]:
b
,
n
.
merge
(
this
,
n
.
parseHTML
(
c
[
1
],
b
&&
b
.
nodeType
?
b
.
ownerDocument
||
b
:
l
,
!
0
)),
v
.
test
(
c
[
1
])
&&
n
.
isPlainObject
(
b
))
for
(
c
in
b
)
n
.
isFunction
(
this
[
c
])?
this
[
c
](
b
[
c
]):
this
.
attr
(
c
,
b
[
c
]);
return
this
}
return
d
=
l
.
getElementById
(
c
[
2
]),
d
&&
d
.
parentNode
&&
(
this
.
length
=
1
,
this
[
0
]
=
d
),
this
.
context
=
l
,
this
.
selector
=
a
,
this
}
return
a
.
nodeType
?(
this
.
context
=
this
[
0
]
=
a
,
this
.
length
=
1
,
this
):
n
.
isFunction
(
a
)?
"
undefined
"
!=
typeof
y
.
ready
?
y
.
ready
(
a
):
a
(
n
):(
void
0
!==
a
.
selector
&&
(
this
.
selector
=
a
.
selector
,
this
.
context
=
a
.
context
),
n
.
makeArray
(
a
,
this
))};
A
.
prototype
=
n
.
fn
,
y
=
n
(
l
);
var
B
=
/^
(?:
parents|prev
(?:
Until|All
))
/
,
C
=
{
children
:
!
0
,
contents
:
!
0
,
next
:
!
0
,
prev
:
!
0
};
n
.
extend
({
dir
:
function
(
a
,
b
,
c
){
var
d
=
[],
e
=
void
0
!==
c
;
while
((
a
=
a
[
b
])
&&
9
!==
a
.
nodeType
)
if
(
1
===
a
.
nodeType
){
if
(
e
&&
n
(
a
).
is
(
c
))
break
;
d
.
push
(
a
)}
return
d
},
sibling
:
function
(
a
,
b
){
for
(
var
c
=
[];
a
;
a
=
a
.
nextSibling
)
1
===
a
.
nodeType
&&
a
!==
b
&&
c
.
push
(
a
);
return
c
}}),
n
.
fn
.
extend
({
has
:
function
(
a
){
var
b
=
n
(
a
,
this
),
c
=
b
.
length
;
return
this
.
filter
(
function
(){
for
(
var
a
=
0
;
c
>
a
;
a
++
)
if
(
n
.
contains
(
this
,
b
[
a
]))
return
!
0
})},
closest
:
function
(
a
,
b
){
for
(
var
c
,
d
=
0
,
e
=
this
.
length
,
f
=
[],
g
=
u
.
test
(
a
)
||
"
string
"
!=
typeof
a
?
n
(
a
,
b
||
this
.
context
):
0
;
e
>
d
;
d
++
)
for
(
c
=
this
[
d
];
c
&&
c
!==
b
;
c
=
c
.
parentNode
)
if
(
c
.
nodeType
<
11
&&
(
g
?
g
.
index
(
c
)
>-
1
:
1
===
c
.
nodeType
&&
n
.
find
.
matchesSelector
(
c
,
a
))){
f
.
push
(
c
);
break
}
return
this
.
pushStack
(
f
.
length
>
1
?
n
.
unique
(
f
):
f
)},
index
:
function
(
a
){
return
a
?
"
string
"
==
typeof
a
?
g
.
call
(
n
(
a
),
this
[
0
]):
g
.
call
(
this
,
a
.
jquery
?
a
[
0
]:
a
):
this
[
0
]
&&
this
[
0
].
parentNode
?
this
.
first
().
prevAll
().
length
:
-
1
},
add
:
function
(
a
,
b
){
return
this
.
pushStack
(
n
.
unique
(
n
.
merge
(
this
.
get
(),
n
(
a
,
b
))))},
addBack
:
function
(
a
){
return
this
.
add
(
null
==
a
?
this
.
prevObject
:
this
.
prevObject
.
filter
(
a
))}});
function
D
(
a
,
b
){
while
((
a
=
a
[
b
])
&&
1
!==
a
.
nodeType
);
return
a
}
n
.
each
({
parent
:
function
(
a
){
var
b
=
a
.
parentNode
;
return
b
&&
11
!==
b
.
nodeType
?
b
:
null
},
parents
:
function
(
a
){
return
n
.
dir
(
a
,
"
parentNode
"
)},
parentsUntil
:
function
(
a
,
b
,
c
){
return
n
.
dir
(
a
,
"
parentNode
"
,
c
)},
next
:
function
(
a
){
return
D
(
a
,
"
nextSibling
"
)},
prev
:
function
(
a
){
return
D
(
a
,
"
previousSibling
"
)},
nextAll
:
function
(
a
){
return
n
.
dir
(
a
,
"
nextSibling
"
)},
prevAll
:
function
(
a
){
return
n
.
dir
(
a
,
"
previousSibling
"
)},
nextUntil
:
function
(
a
,
b
,
c
){
return
n
.
dir
(
a
,
"
nextSibling
"
,
c
)},
prevUntil
:
function
(
a
,
b
,
c
){
return
n
.
dir
(
a
,
"
previousSibling
"
,
c
)},
siblings
:
function
(
a
){
return
n
.
sibling
((
a
.
parentNode
||
{}).
firstChild
,
a
)},
children
:
function
(
a
){
return
n
.
sibling
(
a
.
firstChild
)},
contents
:
function
(
a
){
return
a
.
contentDocument
||
n
.
merge
([],
a
.
childNodes
)}},
function
(
a
,
b
){
n
.
fn
[
a
]
=
function
(
c
,
d
){
var
e
=
n
.
map
(
this
,
b
,
c
);
return
"
Until
"
!==
a
.
slice
(
-
5
)
&&
(
d
=
c
),
d
&&
"
string
"
==
typeof
d
&&
(
e
=
n
.
filter
(
d
,
e
)),
this
.
length
>
1
&&
(
C
[
a
]
||
n
.
unique
(
e
),
B
.
test
(
a
)
&&
e
.
reverse
()),
this
.
pushStack
(
e
)}});
var
E
=
/
\S
+/g
,
F
=
{};
function
G
(
a
){
var
b
=
F
[
a
]
=
{};
return
n
.
each
(
a
.
match
(
E
)
||
[],
function
(
a
,
c
){
b
[
c
]
=!
0
}),
b
}
n
.
Callbacks
=
function
(
a
){
a
=
"
string
"
==
typeof
a
?
F
[
a
]
||
G
(
a
):
n
.
extend
({},
a
);
var
b
,
c
,
d
,
e
,
f
,
g
,
h
=
[],
i
=!
a
.
once
&&
[],
j
=
function
(
l
){
for
(
b
=
a
.
memory
&&
l
,
c
=!
0
,
g
=
e
||
0
,
e
=
0
,
f
=
h
.
length
,
d
=!
0
;
h
&&
f
>
g
;
g
++
)
if
(
h
[
g
].
apply
(
l
[
0
],
l
[
1
])
===!
1
&&
a
.
stopOnFalse
){
b
=!
1
;
break
}
d
=!
1
,
h
&&
(
i
?
i
.
length
&&
j
(
i
.
shift
()):
b
?
h
=
[]:
k
.
disable
())},
k
=
{
add
:
function
(){
if
(
h
){
var
c
=
h
.
length
;
!
function
g
(
b
){
n
.
each
(
b
,
function
(
b
,
c
){
var
d
=
n
.
type
(
c
);
"
function
"
===
d
?
a
.
unique
&&
k
.
has
(
c
)
||
h
.
push
(
c
):
c
&&
c
.
length
&&
"
string
"
!==
d
&&
g
(
c
)})}(
arguments
),
d
?
f
=
h
.
length
:
b
&&
(
e
=
c
,
j
(
b
))}
return
this
},
remove
:
function
(){
return
h
&&
n
.
each
(
arguments
,
function
(
a
,
b
){
var
c
;
while
((
c
=
n
.
inArray
(
b
,
h
,
c
))
>-
1
)
h
.
splice
(
c
,
1
),
d
&&
(
f
>=
c
&&
f
--
,
g
>=
c
&&
g
--
)}),
this
},
has
:
function
(
a
){
return
a
?
n
.
inArray
(
a
,
h
)
>-
1
:
!
(
!
h
||!
h
.
length
)},
empty
:
function
(){
return
h
=
[],
f
=
0
,
this
},
disable
:
function
(){
return
h
=
i
=
b
=
void
0
,
this
},
disabled
:
function
(){
return
!
h
},
lock
:
function
(){
return
i
=
void
0
,
b
||
k
.
disable
(),
this
},
locked
:
function
(){
return
!
i
},
fireWith
:
function
(
a
,
b
){
return
!
h
||
c
&&!
i
||
(
b
=
b
||
[],
b
=
[
a
,
b
.
slice
?
b
.
slice
():
b
],
d
?
i
.
push
(
b
):
j
(
b
)),
this
},
fire
:
function
(){
return
k
.
fireWith
(
this
,
arguments
),
this
},
fired
:
function
(){
return
!!
c
}};
return
k
},
n
.
extend
({
Deferred
:
function
(
a
){
var
b
=
[[
"
resolve
"
,
"
done
"
,
n
.
Callbacks
(
"
once memory
"
),
"
resolved
"
],[
"
reject
"
,
"
fail
"
,
n
.
Callbacks
(
"
once memory
"
),
"
rejected
"
],[
"
notify
"
,
"
progress
"
,
n
.
Callbacks
(
"
memory
"
)]],
c
=
"
pending
"
,
d
=
{
state
:
function
(){
return
c
},
always
:
function
(){
return
e
.
done
(
arguments
).
fail
(
arguments
),
this
},
then
:
function
(){
var
a
=
arguments
;
return
n
.
Deferred
(
function
(
c
){
n
.
each
(
b
,
function
(
b
,
f
){
var
g
=
n
.
isFunction
(
a
[
b
])
&&
a
[
b
];
e
[
f
[
1
]](
function
(){
var
a
=
g
&&
g
.
apply
(
this
,
arguments
);
a
&&
n
.
isFunction
(
a
.
promise
)?
a
.
promise
().
done
(
c
.
resolve
).
fail
(
c
.
reject
).
progress
(
c
.
notify
):
c
[
f
[
0
]
+
"
With
"
](
this
===
d
?
c
.
promise
():
this
,
g
?[
a
]:
arguments
)})}),
a
=
null
}).
promise
()},
promise
:
function
(
a
){
return
null
!=
a
?
n
.
extend
(
a
,
d
):
d
}},
e
=
{};
return
d
.
pipe
=
d
.
then
,
n
.
each
(
b
,
function
(
a
,
f
){
var
g
=
f
[
2
],
h
=
f
[
3
];
d
[
f
[
1
]]
=
g
.
add
,
h
&&
g
.
add
(
function
(){
c
=
h
},
b
[
1
^
a
][
2
].
disable
,
b
[
2
][
2
].
lock
),
e
[
f
[
0
]]
=
function
(){
return
e
[
f
[
0
]
+
"
With
"
](
this
===
e
?
d
:
this
,
arguments
),
this
},
e
[
f
[
0
]
+
"
With
"
]
=
g
.
fireWith
}),
d
.
promise
(
e
),
a
&&
a
.
call
(
e
,
e
),
e
},
when
:
function
(
a
){
var
b
=
0
,
c
=
d
.
call
(
arguments
),
e
=
c
.
length
,
f
=
1
!==
e
||
a
&&
n
.
isFunction
(
a
.
promise
)?
e
:
0
,
g
=
1
===
f
?
a
:
n
.
Deferred
(),
h
=
function
(
a
,
b
,
c
){
return
function
(
e
){
b
[
a
]
=
this
,
c
[
a
]
=
arguments
.
length
>
1
?
d
.
call
(
arguments
):
e
,
c
===
i
?
g
.
notifyWith
(
b
,
c
):
--
f
||
g
.
resolveWith
(
b
,
c
)}},
i
,
j
,
k
;
if
(
e
>
1
)
for
(
i
=
new
Array
(
e
),
j
=
new
Array
(
e
),
k
=
new
Array
(
e
);
e
>
b
;
b
++
)
c
[
b
]
&&
n
.
isFunction
(
c
[
b
].
promise
)?
c
[
b
].
promise
().
done
(
h
(
b
,
k
,
c
)).
fail
(
g
.
reject
).
progress
(
h
(
b
,
j
,
i
)):
--
f
;
return
f
||
g
.
resolveWith
(
k
,
c
),
g
.
promise
()}});
var
H
;
n
.
fn
.
ready
=
function
(
a
){
return
n
.
ready
.
promise
().
done
(
a
),
this
},
n
.
extend
({
isReady
:
!
1
,
readyWait
:
1
,
holdReady
:
function
(
a
){
a
?
n
.
readyWait
++
:
n
.
ready
(
!
0
)},
ready
:
function
(
a
){(
a
===!
0
?
--
n
.
readyWait
:
n
.
isReady
)
||
(
n
.
isReady
=!
0
,
a
!==!
0
&&--
n
.
readyWait
>
0
||
(
H
.
resolveWith
(
l
,[
n
]),
n
.
fn
.
triggerHandler
&&
(
n
(
l
).
triggerHandler
(
"
ready
"
),
n
(
l
).
off
(
"
ready
"
))))}});
function
I
(){
l
.
removeEventListener
(
"
DOMContentLoaded
"
,
I
,
!
1
),
a
.
removeEventListener
(
"
load
"
,
I
,
!
1
),
n
.
ready
()}
n
.
ready
.
promise
=
function
(
b
){
return
H
||
(
H
=
n
.
Deferred
(),
"
complete
"
===
l
.
readyState
?
setTimeout
(
n
.
ready
):(
l
.
addEventListener
(
"
DOMContentLoaded
"
,
I
,
!
1
),
a
.
addEventListener
(
"
load
"
,
I
,
!
1
))),
H
.
promise
(
b
)},
n
.
ready
.
promise
();
var
J
=
n
.
access
=
function
(
a
,
b
,
c
,
d
,
e
,
f
,
g
){
var
h
=
0
,
i
=
a
.
length
,
j
=
null
==
c
;
if
(
"
object
"
===
n
.
type
(
c
)){
e
=!
0
;
for
(
h
in
c
)
n
.
access
(
a
,
b
,
h
,
c
[
h
],
!
0
,
f
,
g
)}
else
if
(
void
0
!==
d
&&
(
e
=!
0
,
n
.
isFunction
(
d
)
||
(
g
=!
0
),
j
&&
(
g
?(
b
.
call
(
a
,
d
),
b
=
null
):(
j
=
b
,
b
=
function
(
a
,
b
,
c
){
return
j
.
call
(
n
(
a
),
c
)})),
b
))
for
(;
i
>
h
;
h
++
)
b
(
a
[
h
],
c
,
g
?
d
:
d
.
call
(
a
[
h
],
h
,
b
(
a
[
h
],
c
)));
return
e
?
a
:
j
?
b
.
call
(
a
):
i
?
b
(
a
[
0
],
c
):
f
};
n
.
acceptData
=
function
(
a
){
return
1
===
a
.
nodeType
||
9
===
a
.
nodeType
||!+
a
.
nodeType
};
function
K
(){
Object
.
defineProperty
(
this
.
cache
=
{},
0
,{
get
:
function
(){
return
{}}}),
this
.
expando
=
n
.
expando
+
Math
.
random
()}
K
.
uid
=
1
,
K
.
accepts
=
n
.
acceptData
,
K
.
prototype
=
{
key
:
function
(
a
){
if
(
!
K
.
accepts
(
a
))
return
0
;
var
b
=
{},
c
=
a
[
this
.
expando
];
if
(
!
c
){
c
=
K
.
uid
++
;
try
{
b
[
this
.
expando
]
=
{
value
:
c
},
Object
.
defineProperties
(
a
,
b
)}
catch
(
d
){
b
[
this
.
expando
]
=
c
,
n
.
extend
(
a
,
b
)}}
return
this
.
cache
[
c
]
||
(
this
.
cache
[
c
]
=
{}),
c
},
set
:
function
(
a
,
b
,
c
){
var
d
,
e
=
this
.
key
(
a
),
f
=
this
.
cache
[
e
];
if
(
"
string
"
==
typeof
b
)
f
[
b
]
=
c
;
else
if
(
n
.
isEmptyObject
(
f
))
n
.
extend
(
this
.
cache
[
e
],
b
);
else
for
(
d
in
b
)
f
[
d
]
=
b
[
d
];
return
f
},
get
:
function
(
a
,
b
){
var
c
=
this
.
cache
[
this
.
key
(
a
)];
return
void
0
===
b
?
c
:
c
[
b
]},
access
:
function
(
a
,
b
,
c
){
var
d
;
return
void
0
===
b
||
b
&&
"
string
"
==
typeof
b
&&
void
0
===
c
?(
d
=
this
.
get
(
a
,
b
),
void
0
!==
d
?
d
:
this
.
get
(
a
,
n
.
camelCase
(
b
))):(
this
.
set
(
a
,
b
,
c
),
void
0
!==
c
?
c
:
b
)},
remove
:
function
(
a
,
b
){
var
c
,
d
,
e
,
f
=
this
.
key
(
a
),
g
=
this
.
cache
[
f
];
if
(
void
0
===
b
)
this
.
cache
[
f
]
=
{};
else
{
n
.
isArray
(
b
)?
d
=
b
.
concat
(
b
.
map
(
n
.
camelCase
)):(
e
=
n
.
camelCase
(
b
),
b
in
g
?
d
=
[
b
,
e
]:(
d
=
e
,
d
=
d
in
g
?[
d
]:
d
.
match
(
E
)
||
[])),
c
=
d
.
length
;
while
(
c
--
)
delete
g
[
d
[
c
]]}},
hasData
:
function
(
a
){
return
!
n
.
isEmptyObject
(
this
.
cache
[
a
[
this
.
expando
]]
||
{})},
discard
:
function
(
a
){
a
[
this
.
expando
]
&&
delete
this
.
cache
[
a
[
this
.
expando
]]}};
var
L
=
new
K
,
M
=
new
K
,
N
=
/^
(?:\{[\w\W]
*
\}
|
\[[\w\W]
*
\])
$/
,
O
=
/
([
A-Z
])
/g
;
function
P
(
a
,
b
,
c
){
var
d
;
if
(
void
0
===
c
&&
1
===
a
.
nodeType
)
if
(
d
=
"
data-
"
+
b
.
replace
(
O
,
"
-$1
"
).
toLowerCase
(),
c
=
a
.
getAttribute
(
d
),
"
string
"
==
typeof
c
){
try
{
c
=
"
true
"
===
c
?
!
0
:
"
false
"
===
c
?
!
1
:
"
null
"
===
c
?
null
:
+
c
+
""
===
c
?
+
c
:
N
.
test
(
c
)?
n
.
parseJSON
(
c
):
c
}
catch
(
e
){}
M
.
set
(
a
,
b
,
c
)}
else
c
=
void
0
;
return
c
}
n
.
extend
({
hasData
:
function
(
a
){
return
M
.
hasData
(
a
)
||
L
.
hasData
(
a
)},
data
:
function
(
a
,
b
,
c
){
return
M
.
access
(
a
,
b
,
c
)},
removeData
:
function
(
a
,
b
){
M
.
remove
(
a
,
b
)
},
_data
:
function
(
a
,
b
,
c
){
return
L
.
access
(
a
,
b
,
c
)},
_removeData
:
function
(
a
,
b
){
L
.
remove
(
a
,
b
)}}),
n
.
fn
.
extend
({
data
:
function
(
a
,
b
){
var
c
,
d
,
e
,
f
=
this
[
0
],
g
=
f
&&
f
.
attributes
;
if
(
void
0
===
a
){
if
(
this
.
length
&&
(
e
=
M
.
get
(
f
),
1
===
f
.
nodeType
&&!
L
.
get
(
f
,
"
hasDataAttrs
"
))){
c
=
g
.
length
;
while
(
c
--
)
g
[
c
]
&&
(
d
=
g
[
c
].
name
,
0
===
d
.
indexOf
(
"
data-
"
)
&&
(
d
=
n
.
camelCase
(
d
.
slice
(
5
)),
P
(
f
,
d
,
e
[
d
])));
L
.
set
(
f
,
"
hasDataAttrs
"
,
!
0
)}
return
e
}
return
"
object
"
==
typeof
a
?
this
.
each
(
function
(){
M
.
set
(
this
,
a
)}):
J
(
this
,
function
(
b
){
var
c
,
d
=
n
.
camelCase
(
a
);
if
(
f
&&
void
0
===
b
){
if
(
c
=
M
.
get
(
f
,
a
),
void
0
!==
c
)
return
c
;
if
(
c
=
M
.
get
(
f
,
d
),
void
0
!==
c
)
return
c
;
if
(
c
=
P
(
f
,
d
,
void
0
),
void
0
!==
c
)
return
c
}
else
this
.
each
(
function
(){
var
c
=
M
.
get
(
this
,
d
);
M
.
set
(
this
,
d
,
b
),
-
1
!==
a
.
indexOf
(
"
-
"
)
&&
void
0
!==
c
&&
M
.
set
(
this
,
a
,
b
)})},
null
,
b
,
arguments
.
length
>
1
,
null
,
!
0
)},
removeData
:
function
(
a
){
return
this
.
each
(
function
(){
M
.
remove
(
this
,
a
)})}}),
n
.
extend
({
queue
:
function
(
a
,
b
,
c
){
var
d
;
return
a
?(
b
=
(
b
||
"
fx
"
)
+
"
queue
"
,
d
=
L
.
get
(
a
,
b
),
c
&&
(
!
d
||
n
.
isArray
(
c
)?
d
=
L
.
access
(
a
,
b
,
n
.
makeArray
(
c
)):
d
.
push
(
c
)),
d
||
[]):
void
0
},
dequeue
:
function
(
a
,
b
){
b
=
b
||
"
fx
"
;
var
c
=
n
.
queue
(
a
,
b
),
d
=
c
.
length
,
e
=
c
.
shift
(),
f
=
n
.
_queueHooks
(
a
,
b
),
g
=
function
(){
n
.
dequeue
(
a
,
b
)};
"
inprogress
"
===
e
&&
(
e
=
c
.
shift
(),
d
--
),
e
&&
(
"
fx
"
===
b
&&
c
.
unshift
(
"
inprogress
"
),
delete
f
.
stop
,
e
.
call
(
a
,
g
,
f
)),
!
d
&&
f
&&
f
.
empty
.
fire
()},
_queueHooks
:
function
(
a
,
b
){
var
c
=
b
+
"
queueHooks
"
;
return
L
.
get
(
a
,
c
)
||
L
.
access
(
a
,
c
,{
empty
:
n
.
Callbacks
(
"
once memory
"
).
add
(
function
(){
L
.
remove
(
a
,[
b
+
"
queue
"
,
c
])})})}}),
n
.
fn
.
extend
({
queue
:
function
(
a
,
b
){
var
c
=
2
;
return
"
string
"
!=
typeof
a
&&
(
b
=
a
,
a
=
"
fx
"
,
c
--
),
arguments
.
length
<
c
?
n
.
queue
(
this
[
0
],
a
):
void
0
===
b
?
this
:
this
.
each
(
function
(){
var
c
=
n
.
queue
(
this
,
a
,
b
);
n
.
_queueHooks
(
this
,
a
),
"
fx
"
===
a
&&
"
inprogress
"
!==
c
[
0
]
&&
n
.
dequeue
(
this
,
a
)})},
dequeue
:
function
(
a
){
return
this
.
each
(
function
(){
n
.
dequeue
(
this
,
a
)})},
clearQueue
:
function
(
a
){
return
this
.
queue
(
a
||
"
fx
"
,[])},
promise
:
function
(
a
,
b
){
var
c
,
d
=
1
,
e
=
n
.
Deferred
(),
f
=
this
,
g
=
this
.
length
,
h
=
function
(){
--
d
||
e
.
resolveWith
(
f
,[
f
])};
"
string
"
!=
typeof
a
&&
(
b
=
a
,
a
=
void
0
),
a
=
a
||
"
fx
"
;
while
(
g
--
)
c
=
L
.
get
(
f
[
g
],
a
+
"
queueHooks
"
),
c
&&
c
.
empty
&&
(
d
++
,
c
.
empty
.
add
(
h
));
return
h
(),
e
.
promise
(
b
)}});
var
Q
=
/
[
+-
]?(?:\d
*
\.
|
)\d
+
(?:[
eE
][
+-
]?\d
+|
)
/
.
source
,
R
=
[
"
Top
"
,
"
Right
"
,
"
Bottom
"
,
"
Left
"
],
S
=
function
(
a
,
b
){
return
a
=
b
||
a
,
"
none
"
===
n
.
css
(
a
,
"
display
"
)
||!
n
.
contains
(
a
.
ownerDocument
,
a
)},
T
=
/^
(?:
checkbox|radio
)
$/i
;
!
function
(){
var
a
=
l
.
createDocumentFragment
(),
b
=
a
.
appendChild
(
l
.
createElement
(
"
div
"
)),
c
=
l
.
createElement
(
"
input
"
);
c
.
setAttribute
(
"
type
"
,
"
radio
"
),
c
.
setAttribute
(
"
checked
"
,
"
checked
"
),
c
.
setAttribute
(
"
name
"
,
"
t
"
),
b
.
appendChild
(
c
),
k
.
checkClone
=
b
.
cloneNode
(
!
0
).
cloneNode
(
!
0
).
lastChild
.
checked
,
b
.
innerHTML
=
"
<textarea>x</textarea>
"
,
k
.
noCloneChecked
=!!
b
.
cloneNode
(
!
0
).
lastChild
.
defaultValue
}();
var
U
=
"
undefined
"
;
k
.
focusinBubbles
=
"
onfocusin
"
in
a
;
var
V
=
/^key/
,
W
=
/^
(?:
mouse|pointer|contextmenu
)
|click/
,
X
=
/^
(?:
focusinfocus|focusoutblur
)
$/
,
Y
=
/^
([^
.
]
*
)(?:\.(
.+
)
|
)
$/
;
function
Z
(){
return
!
0
}
function
$
(){
return
!
1
}
function
_
(){
try
{
return
l
.
activeElement
}
catch
(
a
){}}
n
.
event
=
{
global
:{},
add
:
function
(
a
,
b
,
c
,
d
,
e
){
var
f
,
g
,
h
,
i
,
j
,
k
,
l
,
m
,
o
,
p
,
q
,
r
=
L
.
get
(
a
);
if
(
r
){
c
.
handler
&&
(
f
=
c
,
c
=
f
.
handler
,
e
=
f
.
selector
),
c
.
guid
||
(
c
.
guid
=
n
.
guid
++
),(
i
=
r
.
events
)
||
(
i
=
r
.
events
=
{}),(
g
=
r
.
handle
)
||
(
g
=
r
.
handle
=
function
(
b
){
return
typeof
n
!==
U
&&
n
.
event
.
triggered
!==
b
.
type
?
n
.
event
.
dispatch
.
apply
(
a
,
arguments
):
void
0
}),
b
=
(
b
||
""
).
match
(
E
)
||
[
""
],
j
=
b
.
length
;
while
(
j
--
)
h
=
Y
.
exec
(
b
[
j
])
||
[],
o
=
q
=
h
[
1
],
p
=
(
h
[
2
]
||
""
).
split
(
"
.
"
).
sort
(),
o
&&
(
l
=
n
.
event
.
special
[
o
]
||
{},
o
=
(
e
?
l
.
delegateType
:
l
.
bindType
)
||
o
,
l
=
n
.
event
.
special
[
o
]
||
{},
k
=
n
.
extend
({
type
:
o
,
origType
:
q
,
data
:
d
,
handler
:
c
,
guid
:
c
.
guid
,
selector
:
e
,
needsContext
:
e
&&
n
.
expr
.
match
.
needsContext
.
test
(
e
),
namespace
:
p
.
join
(
"
.
"
)},
f
),(
m
=
i
[
o
])
||
(
m
=
i
[
o
]
=
[],
m
.
delegateCount
=
0
,
l
.
setup
&&
l
.
setup
.
call
(
a
,
d
,
p
,
g
)
!==!
1
||
a
.
addEventListener
&&
a
.
addEventListener
(
o
,
g
,
!
1
)),
l
.
add
&&
(
l
.
add
.
call
(
a
,
k
),
k
.
handler
.
guid
||
(
k
.
handler
.
guid
=
c
.
guid
)),
e
?
m
.
splice
(
m
.
delegateCount
++
,
0
,
k
):
m
.
push
(
k
),
n
.
event
.
global
[
o
]
=!
0
)}},
remove
:
function
(
a
,
b
,
c
,
d
,
e
){
var
f
,
g
,
h
,
i
,
j
,
k
,
l
,
m
,
o
,
p
,
q
,
r
=
L
.
hasData
(
a
)
&&
L
.
get
(
a
);
if
(
r
&&
(
i
=
r
.
events
)){
b
=
(
b
||
""
).
match
(
E
)
||
[
""
],
j
=
b
.
length
;
while
(
j
--
)
if
(
h
=
Y
.
exec
(
b
[
j
])
||
[],
o
=
q
=
h
[
1
],
p
=
(
h
[
2
]
||
""
).
split
(
"
.
"
).
sort
(),
o
){
l
=
n
.
event
.
special
[
o
]
||
{},
o
=
(
d
?
l
.
delegateType
:
l
.
bindType
)
||
o
,
m
=
i
[
o
]
||
[],
h
=
h
[
2
]
&&
new
RegExp
(
"
(^|
\\
.)
"
+
p
.
join
(
"
\\
.(?:.*
\\
.|)
"
)
+
"
(
\\
.|$)
"
),
g
=
f
=
m
.
length
;
while
(
f
--
)
k
=
m
[
f
],
!
e
&&
q
!==
k
.
origType
||
c
&&
c
.
guid
!==
k
.
guid
||
h
&&!
h
.
test
(
k
.
namespace
)
||
d
&&
d
!==
k
.
selector
&&
(
"
**
"
!==
d
||!
k
.
selector
)
||
(
m
.
splice
(
f
,
1
),
k
.
selector
&&
m
.
delegateCount
--
,
l
.
remove
&&
l
.
remove
.
call
(
a
,
k
));
g
&&!
m
.
length
&&
(
l
.
teardown
&&
l
.
teardown
.
call
(
a
,
p
,
r
.
handle
)
!==!
1
||
n
.
removeEvent
(
a
,
o
,
r
.
handle
),
delete
i
[
o
])}
else
for
(
o
in
i
)
n
.
event
.
remove
(
a
,
o
+
b
[
j
],
c
,
d
,
!
0
);
n
.
isEmptyObject
(
i
)
&&
(
delete
r
.
handle
,
L
.
remove
(
a
,
"
events
"
))}},
trigger
:
function
(
b
,
c
,
d
,
e
){
var
f
,
g
,
h
,
i
,
k
,
m
,
o
,
p
=
[
d
||
l
],
q
=
j
.
call
(
b
,
"
type
"
)?
b
.
type
:
b
,
r
=
j
.
call
(
b
,
"
namespace
"
)?
b
.
namespace
.
split
(
"
.
"
):[];
if
(
g
=
h
=
d
=
d
||
l
,
3
!==
d
.
nodeType
&&
8
!==
d
.
nodeType
&&!
X
.
test
(
q
+
n
.
event
.
triggered
)
&&
(
q
.
indexOf
(
"
.
"
)
>=
0
&&
(
r
=
q
.
split
(
"
.
"
),
q
=
r
.
shift
(),
r
.
sort
()),
k
=
q
.
indexOf
(
"
:
"
)
<
0
&&
"
on
"
+
q
,
b
=
b
[
n
.
expando
]?
b
:
new
n
.
Event
(
q
,
"
object
"
==
typeof
b
&&
b
),
b
.
isTrigger
=
e
?
2
:
3
,
b
.
namespace
=
r
.
join
(
"
.
"
),
b
.
namespace_re
=
b
.
namespace
?
new
RegExp
(
"
(^|
\\
.)
"
+
r
.
join
(
"
\\
.(?:.*
\\
.|)
"
)
+
"
(
\\
.|$)
"
):
null
,
b
.
result
=
void
0
,
b
.
target
||
(
b
.
target
=
d
),
c
=
null
==
c
?[
b
]:
n
.
makeArray
(
c
,[
b
]),
o
=
n
.
event
.
special
[
q
]
||
{},
e
||!
o
.
trigger
||
o
.
trigger
.
apply
(
d
,
c
)
!==!
1
)){
if
(
!
e
&&!
o
.
noBubble
&&!
n
.
isWindow
(
d
)){
for
(
i
=
o
.
delegateType
||
q
,
X
.
test
(
i
+
q
)
||
(
g
=
g
.
parentNode
);
g
;
g
=
g
.
parentNode
)
p
.
push
(
g
),
h
=
g
;
h
===
(
d
.
ownerDocument
||
l
)
&&
p
.
push
(
h
.
defaultView
||
h
.
parentWindow
||
a
)}
f
=
0
;
while
((
g
=
p
[
f
++
])
&&!
b
.
isPropagationStopped
())
b
.
type
=
f
>
1
?
i
:
o
.
bindType
||
q
,
m
=
(
L
.
get
(
g
,
"
events
"
)
||
{})[
b
.
type
]
&&
L
.
get
(
g
,
"
handle
"
),
m
&&
m
.
apply
(
g
,
c
),
m
=
k
&&
g
[
k
],
m
&&
m
.
apply
&&
n
.
acceptData
(
g
)
&&
(
b
.
result
=
m
.
apply
(
g
,
c
),
b
.
result
===!
1
&&
b
.
preventDefault
());
return
b
.
type
=
q
,
e
||
b
.
isDefaultPrevented
()
||
o
.
_default
&&
o
.
_default
.
apply
(
p
.
pop
(),
c
)
!==!
1
||!
n
.
acceptData
(
d
)
||
k
&&
n
.
isFunction
(
d
[
q
])
&&!
n
.
isWindow
(
d
)
&&
(
h
=
d
[
k
],
h
&&
(
d
[
k
]
=
null
),
n
.
event
.
triggered
=
q
,
d
[
q
](),
n
.
event
.
triggered
=
void
0
,
h
&&
(
d
[
k
]
=
h
)),
b
.
result
}},
dispatch
:
function
(
a
){
a
=
n
.
event
.
fix
(
a
);
var
b
,
c
,
e
,
f
,
g
,
h
=
[],
i
=
d
.
call
(
arguments
),
j
=
(
L
.
get
(
this
,
"
events
"
)
||
{})[
a
.
type
]
||
[],
k
=
n
.
event
.
special
[
a
.
type
]
||
{};
if
(
i
[
0
]
=
a
,
a
.
delegateTarget
=
this
,
!
k
.
preDispatch
||
k
.
preDispatch
.
call
(
this
,
a
)
!==!
1
){
h
=
n
.
event
.
handlers
.
call
(
this
,
a
,
j
),
b
=
0
;
while
((
f
=
h
[
b
++
])
&&!
a
.
isPropagationStopped
()){
a
.
currentTarget
=
f
.
elem
,
c
=
0
;
while
((
g
=
f
.
handlers
[
c
++
])
&&!
a
.
isImmediatePropagationStopped
())(
!
a
.
namespace_re
||
a
.
namespace_re
.
test
(
g
.
namespace
))
&&
(
a
.
handleObj
=
g
,
a
.
data
=
g
.
data
,
e
=
((
n
.
event
.
special
[
g
.
origType
]
||
{}).
handle
||
g
.
handler
).
apply
(
f
.
elem
,
i
),
void
0
!==
e
&&
(
a
.
result
=
e
)
===!
1
&&
(
a
.
preventDefault
(),
a
.
stopPropagation
()))}
return
k
.
postDispatch
&&
k
.
postDispatch
.
call
(
this
,
a
),
a
.
result
}},
handlers
:
function
(
a
,
b
){
var
c
,
d
,
e
,
f
,
g
=
[],
h
=
b
.
delegateCount
,
i
=
a
.
target
;
if
(
h
&&
i
.
nodeType
&&
(
!
a
.
button
||
"
click
"
!==
a
.
type
))
for
(;
i
!==
this
;
i
=
i
.
parentNode
||
this
)
if
(
i
.
disabled
!==!
0
||
"
click
"
!==
a
.
type
){
for
(
d
=
[],
c
=
0
;
h
>
c
;
c
++
)
f
=
b
[
c
],
e
=
f
.
selector
+
"
"
,
void
0
===
d
[
e
]
&&
(
d
[
e
]
=
f
.
needsContext
?
n
(
e
,
this
).
index
(
i
)
>=
0
:
n
.
find
(
e
,
this
,
null
,[
i
]).
length
),
d
[
e
]
&&
d
.
push
(
f
);
d
.
length
&&
g
.
push
({
elem
:
i
,
handlers
:
d
})}
return
h
<
b
.
length
&&
g
.
push
({
elem
:
this
,
handlers
:
b
.
slice
(
h
)}),
g
},
props
:
"
altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which
"
.
split
(
"
"
),
fixHooks
:{},
keyHooks
:{
props
:
"
char charCode key keyCode
"
.
split
(
"
"
),
filter
:
function
(
a
,
b
){
return
null
==
a
.
which
&&
(
a
.
which
=
null
!=
b
.
charCode
?
b
.
charCode
:
b
.
keyCode
),
a
}},
mouseHooks
:{
props
:
"
button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement
"
.
split
(
"
"
),
filter
:
function
(
a
,
b
){
var
c
,
d
,
e
,
f
=
b
.
button
;
return
null
==
a
.
pageX
&&
null
!=
b
.
clientX
&&
(
c
=
a
.
target
.
ownerDocument
||
l
,
d
=
c
.
documentElement
,
e
=
c
.
body
,
a
.
pageX
=
b
.
clientX
+
(
d
&&
d
.
scrollLeft
||
e
&&
e
.
scrollLeft
||
0
)
-
(
d
&&
d
.
clientLeft
||
e
&&
e
.
clientLeft
||
0
),
a
.
pageY
=
b
.
clientY
+
(
d
&&
d
.
scrollTop
||
e
&&
e
.
scrollTop
||
0
)
-
(
d
&&
d
.
clientTop
||
e
&&
e
.
clientTop
||
0
)),
a
.
which
||
void
0
===
f
||
(
a
.
which
=
1
&
f
?
1
:
2
&
f
?
3
:
4
&
f
?
2
:
0
),
a
}},
fix
:
function
(
a
){
if
(
a
[
n
.
expando
])
return
a
;
var
b
,
c
,
d
,
e
=
a
.
type
,
f
=
a
,
g
=
this
.
fixHooks
[
e
];
g
||
(
this
.
fixHooks
[
e
]
=
g
=
W
.
test
(
e
)?
this
.
mouseHooks
:
V
.
test
(
e
)?
this
.
keyHooks
:{}),
d
=
g
.
props
?
this
.
props
.
concat
(
g
.
props
):
this
.
props
,
a
=
new
n
.
Event
(
f
),
b
=
d
.
length
;
while
(
b
--
)
c
=
d
[
b
],
a
[
c
]
=
f
[
c
];
return
a
.
target
||
(
a
.
target
=
l
),
3
===
a
.
target
.
nodeType
&&
(
a
.
target
=
a
.
target
.
parentNode
),
g
.
filter
?
g
.
filter
(
a
,
f
):
a
},
special
:{
load
:{
noBubble
:
!
0
},
focus
:{
trigger
:
function
(){
return
this
!==
_
()
&&
this
.
focus
?(
this
.
focus
(),
!
1
):
void
0
},
delegateType
:
"
focusin
"
},
blur
:{
trigger
:
function
(){
return
this
===
_
()
&&
this
.
blur
?(
this
.
blur
(),
!
1
):
void
0
},
delegateType
:
"
focusout
"
},
click
:{
trigger
:
function
(){
return
"
checkbox
"
===
this
.
type
&&
this
.
click
&&
n
.
nodeName
(
this
,
"
input
"
)?(
this
.
click
(),
!
1
):
void
0
},
_default
:
function
(
a
){
return
n
.
nodeName
(
a
.
target
,
"
a
"
)}},
beforeunload
:{
postDispatch
:
function
(
a
){
void
0
!==
a
.
result
&&
a
.
originalEvent
&&
(
a
.
originalEvent
.
returnValue
=
a
.
result
)}}},
simulate
:
function
(
a
,
b
,
c
,
d
){
var
e
=
n
.
extend
(
new
n
.
Event
,
c
,{
type
:
a
,
isSimulated
:
!
0
,
originalEvent
:{}});
d
?
n
.
event
.
trigger
(
e
,
null
,
b
):
n
.
event
.
dispatch
.
call
(
b
,
e
),
e
.
isDefaultPrevented
()
&&
c
.
preventDefault
()}},
n
.
removeEvent
=
function
(
a
,
b
,
c
){
a
.
removeEventListener
&&
a
.
removeEventListener
(
b
,
c
,
!
1
)},
n
.
Event
=
function
(
a
,
b
){
return
this
instanceof
n
.
Event
?(
a
&&
a
.
type
?(
this
.
originalEvent
=
a
,
this
.
type
=
a
.
type
,
this
.
isDefaultPrevented
=
a
.
defaultPrevented
||
void
0
===
a
.
defaultPrevented
&&
a
.
returnValue
===!
1
?
Z
:
$
):
this
.
type
=
a
,
b
&&
n
.
extend
(
this
,
b
),
this
.
timeStamp
=
a
&&
a
.
timeStamp
||
n
.
now
(),
void
(
this
[
n
.
expando
]
=!
0
)):
new
n
.
Event
(
a
,
b
)},
n
.
Event
.
prototype
=
{
isDefaultPrevented
:
$
,
isPropagationStopped
:
$
,
isImmediatePropagationStopped
:
$
,
preventDefault
:
function
(){
var
a
=
this
.
originalEvent
;
this
.
isDefaultPrevented
=
Z
,
a
&&
a
.
preventDefault
&&
a
.
preventDefault
()},
stopPropagation
:
function
(){
var
a
=
this
.
originalEvent
;
this
.
isPropagationStopped
=
Z
,
a
&&
a
.
stopPropagation
&&
a
.
stopPropagation
()},
stopImmediatePropagation
:
function
(){
var
a
=
this
.
originalEvent
;
this
.
isImmediatePropagationStopped
=
Z
,
a
&&
a
.
stopImmediatePropagation
&&
a
.
stopImmediatePropagation
(),
this
.
stopPropagation
()}},
n
.
each
({
mouseenter
:
"
mouseover
"
,
mouseleave
:
"
mouseout
"
,
pointerenter
:
"
pointerover
"
,
pointerleave
:
"
pointerout
"
},
function
(
a
,
b
){
n
.
event
.
special
[
a
]
=
{
delegateType
:
b
,
bindType
:
b
,
handle
:
function
(
a
){
var
c
,
d
=
this
,
e
=
a
.
relatedTarget
,
f
=
a
.
handleObj
;
return
(
!
e
||
e
!==
d
&&!
n
.
contains
(
d
,
e
))
&&
(
a
.
type
=
f
.
origType
,
c
=
f
.
handler
.
apply
(
this
,
arguments
),
a
.
type
=
b
),
c
}}}),
k
.
focusinBubbles
||
n
.
each
({
focus
:
"
focusin
"
,
blur
:
"
focusout
"
},
function
(
a
,
b
){
var
c
=
function
(
a
){
n
.
event
.
simulate
(
b
,
a
.
target
,
n
.
event
.
fix
(
a
),
!
0
)};
n
.
event
.
special
[
b
]
=
{
setup
:
function
(){
var
d
=
this
.
ownerDocument
||
this
,
e
=
L
.
access
(
d
,
b
);
e
||
d
.
addEventListener
(
a
,
c
,
!
0
),
L
.
access
(
d
,
b
,(
e
||
0
)
+
1
)},
teardown
:
function
(){
var
d
=
this
.
ownerDocument
||
this
,
e
=
L
.
access
(
d
,
b
)
-
1
;
e
?
L
.
access
(
d
,
b
,
e
):(
d
.
removeEventListener
(
a
,
c
,
!
0
),
L
.
remove
(
d
,
b
))}}}),
n
.
fn
.
extend
({
on
:
function
(
a
,
b
,
c
,
d
,
e
){
var
f
,
g
;
if
(
"
object
"
==
typeof
a
){
"
string
"
!=
typeof
b
&&
(
c
=
c
||
b
,
b
=
void
0
);
for
(
g
in
a
)
this
.
on
(
g
,
b
,
c
,
a
[
g
],
e
);
return
this
}
if
(
null
==
c
&&
null
==
d
?(
d
=
b
,
c
=
b
=
void
0
):
null
==
d
&&
(
"
string
"
==
typeof
b
?(
d
=
c
,
c
=
void
0
):(
d
=
c
,
c
=
b
,
b
=
void
0
)),
d
===!
1
)
d
=
$
;
else
if
(
!
d
)
return
this
;
return
1
===
e
&&
(
f
=
d
,
d
=
function
(
a
){
return
n
().
off
(
a
),
f
.
apply
(
this
,
arguments
)},
d
.
guid
=
f
.
guid
||
(
f
.
guid
=
n
.
guid
++
)),
this
.
each
(
function
(){
n
.
event
.
add
(
this
,
a
,
d
,
c
,
b
)})},
one
:
function
(
a
,
b
,
c
,
d
){
return
this
.
on
(
a
,
b
,
c
,
d
,
1
)},
off
:
function
(
a
,
b
,
c
){
var
d
,
e
;
if
(
a
&&
a
.
preventDefault
&&
a
.
handleObj
)
return
d
=
a
.
handleObj
,
n
(
a
.
delegateTarget
).
off
(
d
.
namespace
?
d
.
origType
+
"
.
"
+
d
.
namespace
:
d
.
origType
,
d
.
selector
,
d
.
handler
),
this
;
if
(
"
object
"
==
typeof
a
){
for
(
e
in
a
)
this
.
off
(
e
,
b
,
a
[
e
]);
return
this
}
return
(
b
===!
1
||
"
function
"
==
typeof
b
)
&&
(
c
=
b
,
b
=
void
0
),
c
===!
1
&&
(
c
=
$
),
this
.
each
(
function
(){
n
.
event
.
remove
(
this
,
a
,
c
,
b
)})},
trigger
:
function
(
a
,
b
){
return
this
.
each
(
function
(){
n
.
event
.
trigger
(
a
,
b
,
this
)})},
triggerHandler
:
function
(
a
,
b
){
var
c
=
this
[
0
];
return
c
?
n
.
event
.
trigger
(
a
,
b
,
c
,
!
0
):
void
0
}});
var
ab
=
/<
(?!
area|br|col|embed|hr|img|input|link|meta|param
)(([\w
:
]
+
)[^
>
]
*
)\/
>/gi
,
bb
=
/<
([\w
:
]
+
)
/
,
cb
=
/<|&#
?\w
+;/
,
db
=
/<
(?:
script|style|link
)
/i
,
eb
=
/checked
\s
*
(?:[^
=
]
|=
\s
*.checked.
)
/i
,
fb
=
/^$|
\/(?:
java|ecma
)
script/i
,
gb
=
/^true
\/(
.*
)
/
,
hb
=
/^
\s
*<!
(?:\[
CDATA
\[
|--
)
|
(?:\]\]
|--
)
>
\s
*$/g
,
ib
=
{
option
:[
1
,
"
<select multiple='multiple'>
"
,
"
</select>
"
],
thead
:[
1
,
"
<table>
"
,
"
</table>
"
],
col
:[
2
,
"
<table><colgroup>
"
,
"
</colgroup></table>
"
],
tr
:[
2
,
"
<table><tbody>
"
,
"
</tbody></table>
"
],
td
:[
3
,
"
<table><tbody><tr>
"
,
"
</tr></tbody></table>
"
],
_default
:[
0
,
""
,
""
]};
ib
.
optgroup
=
ib
.
option
,
ib
.
tbody
=
ib
.
tfoot
=
ib
.
colgroup
=
ib
.
caption
=
ib
.
thead
,
ib
.
th
=
ib
.
td
;
function
jb
(
a
,
b
){
return
n
.
nodeName
(
a
,
"
table
"
)
&&
n
.
nodeName
(
11
!==
b
.
nodeType
?
b
:
b
.
firstChild
,
"
tr
"
)?
a
.
getElementsByTagName
(
"
tbody
"
)[
0
]
||
a
.
appendChild
(
a
.
ownerDocument
.
createElement
(
"
tbody
"
)):
a
}
function
kb
(
a
){
return
a
.
type
=
(
null
!==
a
.
getAttribute
(
"
type
"
))
+
"
/
"
+
a
.
type
,
a
}
function
lb
(
a
){
var
b
=
gb
.
exec
(
a
.
type
);
return
b
?
a
.
type
=
b
[
1
]:
a
.
removeAttribute
(
"
type
"
),
a
}
function
mb
(
a
,
b
){
for
(
var
c
=
0
,
d
=
a
.
length
;
d
>
c
;
c
++
)
L
.
set
(
a
[
c
],
"
globalEval
"
,
!
b
||
L
.
get
(
b
[
c
],
"
globalEval
"
))}
function
nb
(
a
,
b
){
var
c
,
d
,
e
,
f
,
g
,
h
,
i
,
j
;
if
(
1
===
b
.
nodeType
){
if
(
L
.
hasData
(
a
)
&&
(
f
=
L
.
access
(
a
),
g
=
L
.
set
(
b
,
f
),
j
=
f
.
events
)){
delete
g
.
handle
,
g
.
events
=
{};
for
(
e
in
j
)
for
(
c
=
0
,
d
=
j
[
e
].
length
;
d
>
c
;
c
++
)
n
.
event
.
add
(
b
,
e
,
j
[
e
][
c
])}
M
.
hasData
(
a
)
&&
(
h
=
M
.
access
(
a
),
i
=
n
.
extend
({},
h
),
M
.
set
(
b
,
i
))}}
function
ob
(
a
,
b
){
var
c
=
a
.
getElementsByTagName
?
a
.
getElementsByTagName
(
b
||
"
*
"
):
a
.
querySelectorAll
?
a
.
querySelectorAll
(
b
||
"
*
"
):[];
return
void
0
===
b
||
b
&&
n
.
nodeName
(
a
,
b
)?
n
.
merge
([
a
],
c
):
c
}
function
pb
(
a
,
b
){
var
c
=
b
.
nodeName
.
toLowerCase
();
"
input
"
===
c
&&
T
.
test
(
a
.
type
)?
b
.
checked
=
a
.
checked
:(
"
input
"
===
c
||
"
textarea
"
===
c
)
&&
(
b
.
defaultValue
=
a
.
defaultValue
)}
n
.
extend
({
clone
:
function
(
a
,
b
,
c
){
var
d
,
e
,
f
,
g
,
h
=
a
.
cloneNode
(
!
0
),
i
=
n
.
contains
(
a
.
ownerDocument
,
a
);
if
(
!
(
k
.
noCloneChecked
||
1
!==
a
.
nodeType
&&
11
!==
a
.
nodeType
||
n
.
isXMLDoc
(
a
)))
for
(
g
=
ob
(
h
),
f
=
ob
(
a
),
d
=
0
,
e
=
f
.
length
;
e
>
d
;
d
++
)
pb
(
f
[
d
],
g
[
d
]);
if
(
b
)
if
(
c
)
for
(
f
=
f
||
ob
(
a
),
g
=
g
||
ob
(
h
),
d
=
0
,
e
=
f
.
length
;
e
>
d
;
d
++
)
nb
(
f
[
d
],
g
[
d
]);
else
nb
(
a
,
h
);
return
g
=
ob
(
h
,
"
script
"
),
g
.
length
>
0
&&
mb
(
g
,
!
i
&&
ob
(
a
,
"
script
"
)),
h
},
buildFragment
:
function
(
a
,
b
,
c
,
d
){
for
(
var
e
,
f
,
g
,
h
,
i
,
j
,
k
=
b
.
createDocumentFragment
(),
l
=
[],
m
=
0
,
o
=
a
.
length
;
o
>
m
;
m
++
)
if
(
e
=
a
[
m
],
e
||
0
===
e
)
if
(
"
object
"
===
n
.
type
(
e
))
n
.
merge
(
l
,
e
.
nodeType
?[
e
]:
e
);
else
if
(
cb
.
test
(
e
)){
f
=
f
||
k
.
appendChild
(
b
.
createElement
(
"
div
"
)),
g
=
(
bb
.
exec
(
e
)
||
[
""
,
""
])[
1
].
toLowerCase
(),
h
=
ib
[
g
]
||
ib
.
_default
,
f
.
innerHTML
=
h
[
1
]
+
e
.
replace
(
ab
,
"
<$1></$2>
"
)
+
h
[
2
],
j
=
h
[
0
];
while
(
j
--
)
f
=
f
.
lastChild
;
n
.
merge
(
l
,
f
.
childNodes
),
f
=
k
.
firstChild
,
f
.
textContent
=
""
}
else
l
.
push
(
b
.
createTextNode
(
e
));
k
.
textContent
=
""
,
m
=
0
;
while
(
e
=
l
[
m
++
])
if
((
!
d
||-
1
===
n
.
inArray
(
e
,
d
))
&&
(
i
=
n
.
contains
(
e
.
ownerDocument
,
e
),
f
=
ob
(
k
.
appendChild
(
e
),
"
script
"
),
i
&&
mb
(
f
),
c
)){
j
=
0
;
while
(
e
=
f
[
j
++
])
fb
.
test
(
e
.
type
||
""
)
&&
c
.
push
(
e
)}
return
k
},
cleanData
:
function
(
a
){
for
(
var
b
,
c
,
d
,
e
,
f
=
n
.
event
.
special
,
g
=
0
;
void
0
!==
(
c
=
a
[
g
]);
g
++
){
if
(
n
.
acceptData
(
c
)
&&
(
e
=
c
[
L
.
expando
],
e
&&
(
b
=
L
.
cache
[
e
]))){
if
(
b
.
events
)
for
(
d
in
b
.
events
)
f
[
d
]?
n
.
event
.
remove
(
c
,
d
):
n
.
removeEvent
(
c
,
d
,
b
.
handle
);
L
.
cache
[
e
]
&&
delete
L
.
cache
[
e
]}
delete
M
.
cache
[
c
[
M
.
expando
]]}}}),
n
.
fn
.
extend
({
text
:
function
(
a
){
return
J
(
this
,
function
(
a
){
return
void
0
===
a
?
n
.
text
(
this
):
this
.
empty
().
each
(
function
(){(
1
===
this
.
nodeType
||
11
===
this
.
nodeType
||
9
===
this
.
nodeType
)
&&
(
this
.
textContent
=
a
)})},
null
,
a
,
arguments
.
length
)},
append
:
function
(){
return
this
.
domManip
(
arguments
,
function
(
a
){
if
(
1
===
this
.
nodeType
||
11
===
this
.
nodeType
||
9
===
this
.
nodeType
){
var
b
=
jb
(
this
,
a
);
b
.
appendChild
(
a
)}})},
prepend
:
function
(){
return
this
.
domManip
(
arguments
,
function
(
a
){
if
(
1
===
this
.
nodeType
||
11
===
this
.
nodeType
||
9
===
this
.
nodeType
){
var
b
=
jb
(
this
,
a
);
b
.
insertBefore
(
a
,
b
.
firstChild
)}})},
before
:
function
(){
return
this
.
domManip
(
arguments
,
function
(
a
){
this
.
parentNode
&&
this
.
parentNode
.
insertBefore
(
a
,
this
)})},
after
:
function
(){
return
this
.
domManip
(
arguments
,
function
(
a
){
this
.
parentNode
&&
this
.
parentNode
.
insertBefore
(
a
,
this
.
nextSibling
)})},
remove
:
function
(
a
,
b
){
for
(
var
c
,
d
=
a
?
n
.
filter
(
a
,
this
):
this
,
e
=
0
;
null
!=
(
c
=
d
[
e
]);
e
++
)
b
||
1
!==
c
.
nodeType
||
n
.
cleanData
(
ob
(
c
)),
c
.
parentNode
&&
(
b
&&
n
.
contains
(
c
.
ownerDocument
,
c
)
&&
mb
(
ob
(
c
,
"
script
"
)),
c
.
parentNode
.
removeChild
(
c
));
return
this
},
empty
:
function
(){
for
(
var
a
,
b
=
0
;
null
!=
(
a
=
this
[
b
]);
b
++
)
1
===
a
.
nodeType
&&
(
n
.
cleanData
(
ob
(
a
,
!
1
)),
a
.
textContent
=
""
);
return
this
},
clone
:
function
(
a
,
b
){
return
a
=
null
==
a
?
!
1
:
a
,
b
=
null
==
b
?
a
:
b
,
this
.
map
(
function
(){
return
n
.
clone
(
this
,
a
,
b
)})},
html
:
function
(
a
){
return
J
(
this
,
function
(
a
){
var
b
=
this
[
0
]
||
{},
c
=
0
,
d
=
this
.
length
;
if
(
void
0
===
a
&&
1
===
b
.
nodeType
)
return
b
.
innerHTML
;
if
(
"
string
"
==
typeof
a
&&!
db
.
test
(
a
)
&&!
ib
[(
bb
.
exec
(
a
)
||
[
""
,
""
])[
1
].
toLowerCase
()]){
a
=
a
.
replace
(
ab
,
"
<$1></$2>
"
);
try
{
for
(;
d
>
c
;
c
++
)
b
=
this
[
c
]
||
{},
1
===
b
.
nodeType
&&
(
n
.
cleanData
(
ob
(
b
,
!
1
)),
b
.
innerHTML
=
a
);
b
=
0
}
catch
(
e
){}}
b
&&
this
.
empty
().
append
(
a
)},
null
,
a
,
arguments
.
length
)},
replaceWith
:
function
(){
var
a
=
arguments
[
0
];
return
this
.
domManip
(
arguments
,
function
(
b
){
a
=
this
.
parentNode
,
n
.
cleanData
(
ob
(
this
)),
a
&&
a
.
replaceChild
(
b
,
this
)}),
a
&&
(
a
.
length
||
a
.
nodeType
)?
this
:
this
.
remove
()},
detach
:
function
(
a
){
return
this
.
remove
(
a
,
!
0
)},
domManip
:
function
(
a
,
b
){
a
=
e
.
apply
([],
a
);
var
c
,
d
,
f
,
g
,
h
,
i
,
j
=
0
,
l
=
this
.
length
,
m
=
this
,
o
=
l
-
1
,
p
=
a
[
0
],
q
=
n
.
isFunction
(
p
);
if
(
q
||
l
>
1
&&
"
string
"
==
typeof
p
&&!
k
.
checkClone
&&
eb
.
test
(
p
))
return
this
.
each
(
function
(
c
){
var
d
=
m
.
eq
(
c
);
q
&&
(
a
[
0
]
=
p
.
call
(
this
,
c
,
d
.
html
())),
d
.
domManip
(
a
,
b
)});
if
(
l
&&
(
c
=
n
.
buildFragment
(
a
,
this
[
0
].
ownerDocument
,
!
1
,
this
),
d
=
c
.
firstChild
,
1
===
c
.
childNodes
.
length
&&
(
c
=
d
),
d
)){
for
(
f
=
n
.
map
(
ob
(
c
,
"
script
"
),
kb
),
g
=
f
.
length
;
l
>
j
;
j
++
)
h
=
c
,
j
!==
o
&&
(
h
=
n
.
clone
(
h
,
!
0
,
!
0
),
g
&&
n
.
merge
(
f
,
ob
(
h
,
"
script
"
))),
b
.
call
(
this
[
j
],
h
,
j
);
if
(
g
)
for
(
i
=
f
[
f
.
length
-
1
].
ownerDocument
,
n
.
map
(
f
,
lb
),
j
=
0
;
g
>
j
;
j
++
)
h
=
f
[
j
],
fb
.
test
(
h
.
type
||
""
)
&&!
L
.
access
(
h
,
"
globalEval
"
)
&&
n
.
contains
(
i
,
h
)
&&
(
h
.
src
?
n
.
_evalUrl
&&
n
.
_evalUrl
(
h
.
src
):
n
.
globalEval
(
h
.
textContent
.
replace
(
hb
,
""
)))}
return
this
}}),
n
.
each
({
appendTo
:
"
append
"
,
prependTo
:
"
prepend
"
,
insertBefore
:
"
before
"
,
insertAfter
:
"
after
"
,
replaceAll
:
"
replaceWith
"
},
function
(
a
,
b
){
n
.
fn
[
a
]
=
function
(
a
){
for
(
var
c
,
d
=
[],
e
=
n
(
a
),
g
=
e
.
length
-
1
,
h
=
0
;
g
>=
h
;
h
++
)
c
=
h
===
g
?
this
:
this
.
clone
(
!
0
),
n
(
e
[
h
])[
b
](
c
),
f
.
apply
(
d
,
c
.
get
());
return
this
.
pushStack
(
d
)}});
var
qb
,
rb
=
{};
function
sb
(
b
,
c
){
var
d
,
e
=
n
(
c
.
createElement
(
b
)).
appendTo
(
c
.
body
),
f
=
a
.
getDefaultComputedStyle
&&
(
d
=
a
.
getDefaultComputedStyle
(
e
[
0
]))?
d
.
display
:
n
.
css
(
e
[
0
],
"
display
"
);
return
e
.
detach
(),
f
}
function
tb
(
a
){
var
b
=
l
,
c
=
rb
[
a
];
return
c
||
(
c
=
sb
(
a
,
b
),
"
none
"
!==
c
&&
c
||
(
qb
=
(
qb
||
n
(
"
<iframe frameborder='0' width='0' height='0'/>
"
)).
appendTo
(
b
.
documentElement
),
b
=
qb
[
0
].
contentDocument
,
b
.
write
(),
b
.
close
(),
c
=
sb
(
a
,
b
),
qb
.
detach
()),
rb
[
a
]
=
c
),
c
}
var
ub
=
/^margin/
,
vb
=
new
RegExp
(
"
^(
"
+
Q
+
"
)(?!px)[a-z%]+$
"
,
"
i
"
),
wb
=
function
(
a
){
return
a
.
ownerDocument
.
defaultView
.
getComputedStyle
(
a
,
null
)};
function
xb
(
a
,
b
,
c
){
var
d
,
e
,
f
,
g
,
h
=
a
.
style
;
return
c
=
c
||
wb
(
a
),
c
&&
(
g
=
c
.
getPropertyValue
(
b
)
||
c
[
b
]),
c
&&
(
""
!==
g
||
n
.
contains
(
a
.
ownerDocument
,
a
)
||
(
g
=
n
.
style
(
a
,
b
)),
vb
.
test
(
g
)
&&
ub
.
test
(
b
)
&&
(
d
=
h
.
width
,
e
=
h
.
minWidth
,
f
=
h
.
maxWidth
,
h
.
minWidth
=
h
.
maxWidth
=
h
.
width
=
g
,
g
=
c
.
width
,
h
.
width
=
d
,
h
.
minWidth
=
e
,
h
.
maxWidth
=
f
)),
void
0
!==
g
?
g
+
""
:
g
}
function
yb
(
a
,
b
){
return
{
get
:
function
(){
return
a
()?
void
delete
this
.
get
:(
this
.
get
=
b
).
apply
(
this
,
arguments
)}}}
!
function
(){
var
b
,
c
,
d
=
l
.
documentElement
,
e
=
l
.
createElement
(
"
div
"
),
f
=
l
.
createElement
(
"
div
"
);
if
(
f
.
style
){
f
.
style
.
backgroundClip
=
"
content-box
"
,
f
.
cloneNode
(
!
0
).
style
.
backgroundClip
=
""
,
k
.
clearCloneStyle
=
"
content-box
"
===
f
.
style
.
backgroundClip
,
e
.
style
.
cssText
=
"
border:0;width:0;height:0;top:0;left:-9999px;margin-top:1px;position:absolute
"
,
e
.
appendChild
(
f
);
function
g
(){
f
.
style
.
cssText
=
"
-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute
"
,
f
.
innerHTML
=
""
,
d
.
appendChild
(
e
);
var
g
=
a
.
getComputedStyle
(
f
,
null
);
b
=
"
1%
"
!==
g
.
top
,
c
=
"
4px
"
===
g
.
width
,
d
.
removeChild
(
e
)}
a
.
getComputedStyle
&&
n
.
extend
(
k
,{
pixelPosition
:
function
(){
return
g
(),
b
},
boxSizingReliable
:
function
(){
return
null
==
c
&&
g
(),
c
},
reliableMarginRight
:
function
(){
var
b
,
c
=
f
.
appendChild
(
l
.
createElement
(
"
div
"
));
return
c
.
style
.
cssText
=
f
.
style
.
cssText
=
"
-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0
"
,
c
.
style
.
marginRight
=
c
.
style
.
width
=
"
0
"
,
f
.
style
.
width
=
"
1px
"
,
d
.
appendChild
(
e
),
b
=!
parseFloat
(
a
.
getComputedStyle
(
c
,
null
).
marginRight
),
d
.
removeChild
(
e
),
b
}})}}(),
n
.
swap
=
function
(
a
,
b
,
c
,
d
){
var
e
,
f
,
g
=
{};
for
(
f
in
b
)
g
[
f
]
=
a
.
style
[
f
],
a
.
style
[
f
]
=
b
[
f
];
e
=
c
.
apply
(
a
,
d
||
[]);
for
(
f
in
b
)
a
.
style
[
f
]
=
g
[
f
];
return
e
};
var
zb
=
/^
(
none|table
(?!
-c
[
ea
])
.+
)
/
,
Ab
=
new
RegExp
(
"
^(
"
+
Q
+
"
)(.*)$
"
,
"
i
"
),
Bb
=
new
RegExp
(
"
^([+-])=(
"
+
Q
+
"
)
"
,
"
i
"
),
Cb
=
{
position
:
"
absolute
"
,
visibility
:
"
hidden
"
,
display
:
"
block
"
},
Db
=
{
letterSpacing
:
"
0
"
,
fontWeight
:
"
400
"
},
Eb
=
[
"
Webkit
"
,
"
O
"
,
"
Moz
"
,
"
ms
"
];
function
Fb
(
a
,
b
){
if
(
b
in
a
)
return
b
;
var
c
=
b
[
0
].
toUpperCase
()
+
b
.
slice
(
1
),
d
=
b
,
e
=
Eb
.
length
;
while
(
e
--
)
if
(
b
=
Eb
[
e
]
+
c
,
b
in
a
)
return
b
;
return
d
}
function
Gb
(
a
,
b
,
c
){
var
d
=
Ab
.
exec
(
b
);
return
d
?
Math
.
max
(
0
,
d
[
1
]
-
(
c
||
0
))
+
(
d
[
2
]
||
"
px
"
):
b
}
function
Hb
(
a
,
b
,
c
,
d
,
e
){
for
(
var
f
=
c
===
(
d
?
"
border
"
:
"
content
"
)?
4
:
"
width
"
===
b
?
1
:
0
,
g
=
0
;
4
>
f
;
f
+=
2
)
"
margin
"
===
c
&&
(
g
+=
n
.
css
(
a
,
c
+
R
[
f
],
!
0
,
e
)),
d
?(
"
content
"
===
c
&&
(
g
-=
n
.
css
(
a
,
"
padding
"
+
R
[
f
],
!
0
,
e
)),
"
margin
"
!==
c
&&
(
g
-=
n
.
css
(
a
,
"
border
"
+
R
[
f
]
+
"
Width
"
,
!
0
,
e
))):(
g
+=
n
.
css
(
a
,
"
padding
"
+
R
[
f
],
!
0
,
e
),
"
padding
"
!==
c
&&
(
g
+=
n
.
css
(
a
,
"
border
"
+
R
[
f
]
+
"
Width
"
,
!
0
,
e
)));
return
g
}
function
Ib
(
a
,
b
,
c
){
var
d
=!
0
,
e
=
"
width
"
===
b
?
a
.
offsetWidth
:
a
.
offsetHeight
,
f
=
wb
(
a
),
g
=
"
border-box
"
===
n
.
css
(
a
,
"
boxSizing
"
,
!
1
,
f
);
if
(
0
>=
e
||
null
==
e
){
if
(
e
=
xb
(
a
,
b
,
f
),(
0
>
e
||
null
==
e
)
&&
(
e
=
a
.
style
[
b
]),
vb
.
test
(
e
))
return
e
;
d
=
g
&&
(
k
.
boxSizingReliable
()
||
e
===
a
.
style
[
b
]),
e
=
parseFloat
(
e
)
||
0
}
return
e
+
Hb
(
a
,
b
,
c
||
(
g
?
"
border
"
:
"
content
"
),
d
,
f
)
+
"
px
"
}
function
Jb
(
a
,
b
){
for
(
var
c
,
d
,
e
,
f
=
[],
g
=
0
,
h
=
a
.
length
;
h
>
g
;
g
++
)
d
=
a
[
g
],
d
.
style
&&
(
f
[
g
]
=
L
.
get
(
d
,
"
olddisplay
"
),
c
=
d
.
style
.
display
,
b
?(
f
[
g
]
||
"
none
"
!==
c
||
(
d
.
style
.
display
=
""
),
""
===
d
.
style
.
display
&&
S
(
d
)
&&
(
f
[
g
]
=
L
.
access
(
d
,
"
olddisplay
"
,
tb
(
d
.
nodeName
)))):(
e
=
S
(
d
),
"
none
"
===
c
&&
e
||
L
.
set
(
d
,
"
olddisplay
"
,
e
?
c
:
n
.
css
(
d
,
"
display
"
))));
for
(
g
=
0
;
h
>
g
;
g
++
)
d
=
a
[
g
],
d
.
style
&&
(
b
&&
"
none
"
!==
d
.
style
.
display
&&
""
!==
d
.
style
.
display
||
(
d
.
style
.
display
=
b
?
f
[
g
]
||
""
:
"
none
"
));
return
a
}
n
.
extend
({
cssHooks
:{
opacity
:{
get
:
function
(
a
,
b
){
if
(
b
){
var
c
=
xb
(
a
,
"
opacity
"
);
return
""
===
c
?
"
1
"
:
c
}}}},
cssNumber
:{
columnCount
:
!
0
,
fillOpacity
:
!
0
,
flexGrow
:
!
0
,
flexShrink
:
!
0
,
fontWeight
:
!
0
,
lineHeight
:
!
0
,
opacity
:
!
0
,
order
:
!
0
,
orphans
:
!
0
,
widows
:
!
0
,
zIndex
:
!
0
,
zoom
:
!
0
},
cssProps
:{
"
float
"
:
"
cssFloat
"
},
style
:
function
(
a
,
b
,
c
,
d
){
if
(
a
&&
3
!==
a
.
nodeType
&&
8
!==
a
.
nodeType
&&
a
.
style
){
var
e
,
f
,
g
,
h
=
n
.
camelCase
(
b
),
i
=
a
.
style
;
return
b
=
n
.
cssProps
[
h
]
||
(
n
.
cssProps
[
h
]
=
Fb
(
i
,
h
)),
g
=
n
.
cssHooks
[
b
]
||
n
.
cssHooks
[
h
],
void
0
===
c
?
g
&&
"
get
"
in
g
&&
void
0
!==
(
e
=
g
.
get
(
a
,
!
1
,
d
))?
e
:
i
[
b
]:(
f
=
typeof
c
,
"
string
"
===
f
&&
(
e
=
Bb
.
exec
(
c
))
&&
(
c
=
(
e
[
1
]
+
1
)
*
e
[
2
]
+
parseFloat
(
n
.
css
(
a
,
b
)),
f
=
"
number
"
),
null
!=
c
&&
c
===
c
&&
(
"
number
"
!==
f
||
n
.
cssNumber
[
h
]
||
(
c
+=
"
px
"
),
k
.
clearCloneStyle
||
""
!==
c
||
0
!==
b
.
indexOf
(
"
background
"
)
||
(
i
[
b
]
=
"
inherit
"
),
g
&&
"
set
"
in
g
&&
void
0
===
(
c
=
g
.
set
(
a
,
c
,
d
))
||
(
i
[
b
]
=
c
)),
void
0
)}},
css
:
function
(
a
,
b
,
c
,
d
){
var
e
,
f
,
g
,
h
=
n
.
camelCase
(
b
);
return
b
=
n
.
cssProps
[
h
]
||
(
n
.
cssProps
[
h
]
=
Fb
(
a
.
style
,
h
)),
g
=
n
.
cssHooks
[
b
]
||
n
.
cssHooks
[
h
],
g
&&
"
get
"
in
g
&&
(
e
=
g
.
get
(
a
,
!
0
,
c
)),
void
0
===
e
&&
(
e
=
xb
(
a
,
b
,
d
)),
"
normal
"
===
e
&&
b
in
Db
&&
(
e
=
Db
[
b
]),
""
===
c
||
c
?(
f
=
parseFloat
(
e
),
c
===!
0
||
n
.
isNumeric
(
f
)?
f
||
0
:
e
):
e
}}),
n
.
each
([
"
height
"
,
"
width
"
],
function
(
a
,
b
){
n
.
cssHooks
[
b
]
=
{
get
:
function
(
a
,
c
,
d
){
return
c
?
zb
.
test
(
n
.
css
(
a
,
"
display
"
))
&&
0
===
a
.
offsetWidth
?
n
.
swap
(
a
,
Cb
,
function
(){
return
Ib
(
a
,
b
,
d
)}):
Ib
(
a
,
b
,
d
):
void
0
},
set
:
function
(
a
,
c
,
d
){
var
e
=
d
&&
wb
(
a
);
return
Gb
(
a
,
c
,
d
?
Hb
(
a
,
b
,
d
,
"
border-box
"
===
n
.
css
(
a
,
"
boxSizing
"
,
!
1
,
e
),
e
):
0
)}}}),
n
.
cssHooks
.
marginRight
=
yb
(
k
.
reliableMarginRight
,
function
(
a
,
b
){
return
b
?
n
.
swap
(
a
,{
display
:
"
inline-block
"
},
xb
,[
a
,
"
marginRight
"
]):
void
0
}),
n
.
each
({
margin
:
""
,
padding
:
""
,
border
:
"
Width
"
},
function
(
a
,
b
){
n
.
cssHooks
[
a
+
b
]
=
{
expand
:
function
(
c
){
for
(
var
d
=
0
,
e
=
{},
f
=
"
string
"
==
typeof
c
?
c
.
split
(
"
"
):[
c
];
4
>
d
;
d
++
)
e
[
a
+
R
[
d
]
+
b
]
=
f
[
d
]
||
f
[
d
-
2
]
||
f
[
0
];
return
e
}},
ub
.
test
(
a
)
||
(
n
.
cssHooks
[
a
+
b
].
set
=
Gb
)}),
n
.
fn
.
extend
({
css
:
function
(
a
,
b
){
return
J
(
this
,
function
(
a
,
b
,
c
){
var
d
,
e
,
f
=
{},
g
=
0
;
if
(
n
.
isArray
(
b
)){
for
(
d
=
wb
(
a
),
e
=
b
.
length
;
e
>
g
;
g
++
)
f
[
b
[
g
]]
=
n
.
css
(
a
,
b
[
g
],
!
1
,
d
);
return
f
}
return
void
0
!==
c
?
n
.
style
(
a
,
b
,
c
):
n
.
css
(
a
,
b
)},
a
,
b
,
arguments
.
length
>
1
)},
show
:
function
(){
return
Jb
(
this
,
!
0
)},
hide
:
function
(){
return
Jb
(
this
)},
toggle
:
function
(
a
){
return
"
boolean
"
==
typeof
a
?
a
?
this
.
show
():
this
.
hide
():
this
.
each
(
function
(){
S
(
this
)?
n
(
this
).
show
():
n
(
this
).
hide
()})}});
function
Kb
(
a
,
b
,
c
,
d
,
e
){
return
new
Kb
.
prototype
.
init
(
a
,
b
,
c
,
d
,
e
)}
n
.
Tween
=
Kb
,
Kb
.
prototype
=
{
constructor
:
Kb
,
init
:
function
(
a
,
b
,
c
,
d
,
e
,
f
){
this
.
elem
=
a
,
this
.
prop
=
c
,
this
.
easing
=
e
||
"
swing
"
,
this
.
options
=
b
,
this
.
start
=
this
.
now
=
this
.
cur
(),
this
.
end
=
d
,
this
.
unit
=
f
||
(
n
.
cssNumber
[
c
]?
""
:
"
px
"
)},
cur
:
function
(){
var
a
=
Kb
.
propHooks
[
this
.
prop
];
return
a
&&
a
.
get
?
a
.
get
(
this
):
Kb
.
propHooks
.
_default
.
get
(
this
)},
run
:
function
(
a
){
var
b
,
c
=
Kb
.
propHooks
[
this
.
prop
];
return
this
.
pos
=
b
=
this
.
options
.
duration
?
n
.
easing
[
this
.
easing
](
a
,
this
.
options
.
duration
*
a
,
0
,
1
,
this
.
options
.
duration
):
a
,
this
.
now
=
(
this
.
end
-
this
.
start
)
*
b
+
this
.
start
,
this
.
options
.
step
&&
this
.
options
.
step
.
call
(
this
.
elem
,
this
.
now
,
this
),
c
&&
c
.
set
?
c
.
set
(
this
):
Kb
.
propHooks
.
_default
.
set
(
this
),
this
}},
Kb
.
prototype
.
init
.
prototype
=
Kb
.
prototype
,
Kb
.
propHooks
=
{
_default
:{
get
:
function
(
a
){
var
b
;
return
null
==
a
.
elem
[
a
.
prop
]
||
a
.
elem
.
style
&&
null
!=
a
.
elem
.
style
[
a
.
prop
]?(
b
=
n
.
css
(
a
.
elem
,
a
.
prop
,
""
),
b
&&
"
auto
"
!==
b
?
b
:
0
):
a
.
elem
[
a
.
prop
]},
set
:
function
(
a
){
n
.
fx
.
step
[
a
.
prop
]?
n
.
fx
.
step
[
a
.
prop
](
a
):
a
.
elem
.
style
&&
(
null
!=
a
.
elem
.
style
[
n
.
cssProps
[
a
.
prop
]]
||
n
.
cssHooks
[
a
.
prop
])?
n
.
style
(
a
.
elem
,
a
.
prop
,
a
.
now
+
a
.
unit
):
a
.
elem
[
a
.
prop
]
=
a
.
now
}}},
Kb
.
propHooks
.
scrollTop
=
Kb
.
propHooks
.
scrollLeft
=
{
set
:
function
(
a
){
a
.
elem
.
nodeType
&&
a
.
elem
.
parentNode
&&
(
a
.
elem
[
a
.
prop
]
=
a
.
now
)}},
n
.
easing
=
{
linear
:
function
(
a
){
return
a
},
swing
:
function
(
a
){
return
.
5
-
Math
.
cos
(
a
*
Math
.
PI
)
/
2
}},
n
.
fx
=
Kb
.
prototype
.
init
,
n
.
fx
.
step
=
{};
var
Lb
,
Mb
,
Nb
=
/^
(?:
toggle|show|hide
)
$/
,
Ob
=
new
RegExp
(
"
^(?:([+-])=|)(
"
+
Q
+
"
)([a-z%]*)$
"
,
"
i
"
),
Pb
=
/queueHooks$/
,
Qb
=
[
Vb
],
Rb
=
{
"
*
"
:[
function
(
a
,
b
){
var
c
=
this
.
createTween
(
a
,
b
),
d
=
c
.
cur
(),
e
=
Ob
.
exec
(
b
),
f
=
e
&&
e
[
3
]
||
(
n
.
cssNumber
[
a
]?
""
:
"
px
"
),
g
=
(
n
.
cssNumber
[
a
]
||
"
px
"
!==
f
&&+
d
)
&&
Ob
.
exec
(
n
.
css
(
c
.
elem
,
a
)),
h
=
1
,
i
=
20
;
if
(
g
&&
g
[
3
]
!==
f
){
f
=
f
||
g
[
3
],
e
=
e
||
[],
g
=+
d
||
1
;
do
h
=
h
||
"
.5
"
,
g
/=
h
,
n
.
style
(
c
.
elem
,
a
,
g
+
f
);
while
(
h
!==
(
h
=
c
.
cur
()
/
d
)
&&
1
!==
h
&&--
i
)}
return
e
&&
(
g
=
c
.
start
=+
g
||+
d
||
0
,
c
.
unit
=
f
,
c
.
end
=
e
[
1
]?
g
+
(
e
[
1
]
+
1
)
*
e
[
2
]:
+
e
[
2
]),
c
}]};
function
Sb
(){
return
setTimeout
(
function
(){
Lb
=
void
0
}),
Lb
=
n
.
now
()}
function
Tb
(
a
,
b
){
var
c
,
d
=
0
,
e
=
{
height
:
a
};
for
(
b
=
b
?
1
:
0
;
4
>
d
;
d
+=
2
-
b
)
c
=
R
[
d
],
e
[
"
margin
"
+
c
]
=
e
[
"
padding
"
+
c
]
=
a
;
return
b
&&
(
e
.
opacity
=
e
.
width
=
a
),
e
}
function
Ub
(
a
,
b
,
c
){
for
(
var
d
,
e
=
(
Rb
[
b
]
||
[]).
concat
(
Rb
[
"
*
"
]),
f
=
0
,
g
=
e
.
length
;
g
>
f
;
f
++
)
if
(
d
=
e
[
f
].
call
(
c
,
b
,
a
))
return
d
}
function
Vb
(
a
,
b
,
c
){
var
d
,
e
,
f
,
g
,
h
,
i
,
j
,
k
,
l
=
this
,
m
=
{},
o
=
a
.
style
,
p
=
a
.
nodeType
&&
S
(
a
),
q
=
L
.
get
(
a
,
"
fxshow
"
);
c
.
queue
||
(
h
=
n
.
_queueHooks
(
a
,
"
fx
"
),
null
==
h
.
unqueued
&&
(
h
.
unqueued
=
0
,
i
=
h
.
empty
.
fire
,
h
.
empty
.
fire
=
function
(){
h
.
unqueued
||
i
()}),
h
.
unqueued
++
,
l
.
always
(
function
(){
l
.
always
(
function
(){
h
.
unqueued
--
,
n
.
queue
(
a
,
"
fx
"
).
length
||
h
.
empty
.
fire
()})})),
1
===
a
.
nodeType
&&
(
"
height
"
in
b
||
"
width
"
in
b
)
&&
(
c
.
overflow
=
[
o