Advertisement
Guest User

Untitled

a guest
Oct 24th, 2014
142
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 67.84 KB | None | 0 0
  1. (function() {
  2. var e, h = this,
  3. k = function(a) {
  4. return void 0 !== a
  5. },
  6. m = function(a) {
  7. var b = typeof a;
  8. if ("object" == b)
  9. if (a) {
  10. if (a instanceof Array) return "array";
  11. if (a instanceof Object) return b;
  12. var c = Object.prototype.toString.call(a);
  13. if ("[object Window]" == c) return "object";
  14. if ("[object Array]" == c || "number" == typeof a.length && "undefined" != typeof a.splice && "undefined" != typeof a.propertyIsEnumerable && !a.propertyIsEnumerable("splice")) return "array";
  15. if ("[object Function]" == c || "undefined" != typeof a.call && "undefined" != typeof a.propertyIsEnumerable &&
  16. !a.propertyIsEnumerable("call")) return "function"
  17. } else return "null";
  18. else if ("function" == b && "undefined" == typeof a.call) return "object";
  19. return b
  20. },
  21. n = function(a) {
  22. return "array" == m(a)
  23. },
  24. aa = function(a) {
  25. var b = m(a);
  26. return "array" == b || "object" == b && "number" == typeof a.length
  27. },
  28. p = function(a) {
  29. return "string" == typeof a
  30. },
  31. q = function(a) {
  32. return "boolean" == typeof a
  33. },
  34. s = function(a) {
  35. return "number" == typeof a
  36. },
  37. ba = function(a) {
  38. var b = typeof a;
  39. return "object" == b && null != a || "function" == b
  40. },
  41. ca = "closure_uid_" + (1E9 * Math.random() >>> 0),
  42. da = 0,
  43. ea = function(a, b, c) {
  44. return a.call.apply(a.bind, arguments)
  45. },
  46. fa = function(a, b, c) {
  47. if (!a) throw Error();
  48. if (2 < arguments.length) {
  49. var d = Array.prototype.slice.call(arguments, 2);
  50. return function() {
  51. var c = Array.prototype.slice.call(arguments);
  52. Array.prototype.unshift.apply(c, d);
  53. return a.apply(b, c)
  54. }
  55. }
  56. return function() {
  57. return a.apply(b, arguments)
  58. }
  59. },
  60. ga = function(a, b, c) {
  61. ga = Function.prototype.bind && -1 != Function.prototype.bind.toString().indexOf("native code") ? ea : fa;
  62. return ga.apply(null, arguments)
  63. },
  64. ha = function(a) {
  65. var b =
  66. t;
  67.  
  68. function c() {}
  69. c.prototype = b.prototype;
  70. a.S = b.prototype;
  71. a.prototype = new c;
  72. a.prototype.constructor = a;
  73. a.R = function(a, c, g) {
  74. return b.prototype[c].apply(a, Array.prototype.slice.call(arguments, 2))
  75. }
  76. };
  77. var u = function(a, b) {
  78. var c = parseFloat(a);
  79. return isNaN(c) || 1 < c || 0 > c ? b : c
  80. },
  81. ia = function(a, b) {
  82. var c = parseInt(a, 10);
  83. return isNaN(c) ? b : c
  84. },
  85. ja = /^([\w-]+\.)*([\w-]{2,})(\:[0-9]+)?$/,
  86. ka = function(a, b) {
  87. if (!a) return b;
  88. var c = a.match(ja);
  89. return c ? c[0] : b
  90. };
  91. var la = u("0.02", 0),
  92. ma = u("0.0", 0);
  93. var na = u("0.005", 0),
  94. oa = u("0", 0),
  95. pa = u("0.001", 0),
  96. qa = ia("1500", 1500),
  97. ra = u("0.01", 0),
  98. sa = u("1.0", 0),
  99. ta = u("0.5", 0),
  100. ua = u("", .001),
  101. va = ia("", 200),
  102. wa = u("0.1", 0),
  103. xa = u("0.50", 0),
  104. ya = /^true$/.test("") ? !0 : !1,
  105. za = u("0.005", 0),
  106. Aa = u("0.01", 0),
  107. Ba = u("0.1", 0),
  108. Ca = u("0.01", 0),
  109. Da = u("1", 0),
  110. Ea = u("", .001);
  111. var Fa = function(a) {
  112. return /^[\s\xa0]*$/.test(a)
  113. },
  114. Ga = function(a, b) {
  115. return a < b ? -1 : a > b ? 1 : 0
  116. };
  117. var v = function(a, b, c) {
  118. for (var d in a) Object.prototype.hasOwnProperty.call(a, d) && b.call(c, a[d], d, a)
  119. };
  120. var w = function() {
  121. return h.googletag || (h.googletag = {})
  122. },
  123. x = function(a, b, c) {
  124. var d = w();
  125. a in d && !c || (d[a] = b)
  126. },
  127. Ha = function(a, b) {
  128. a.addEventListener ? a.addEventListener("load", b, !1) : a.attachEvent && a.attachEvent("onload", b)
  129. };
  130. var y = {};
  131. y["#1#"] = ka("", "pagead2.googlesyndication.com");
  132. y["#2#"] = ka("", "pubads.g.doubleclick.net");
  133. y["#3#"] = ka("", "securepubads.g.doubleclick.net");
  134. y["#4#"] = ka("", "partner.googleadservices.com");
  135. y["#5#"] = "http://pagead2.googlesyndication.com/pagead/show_ads.js";
  136. var Ia;
  137. t: {
  138. var Ja = null,
  139. z = window,
  140. Ka = null;
  141. try {
  142. for (; null != z && z !== Ja;) {
  143. Ka = z.location.protocol;
  144. if ("https:" === Ka) break;
  145. else if ("http:" === Ka || "file:" === Ka) {
  146. Ia = !1;
  147. break t
  148. }
  149. Ja = z;
  150. z = z.parent
  151. }
  152. } catch (La) {}
  153. Ia = !0
  154. }
  155. y["#6#"] = Ia;
  156. y["#7#"] = la;
  157. y["#10#"] = oa;
  158. y["#11#"] = pa;
  159. y["#12#"] = na;
  160. y["#13#"] = qa;
  161. y["#16#"] = ra;
  162. y["#17#"] = sa;
  163. y["#18#"] = ta;
  164. y["#20#"] = ma;
  165. y["#23#"] = ua;
  166. y["#24#"] = va;
  167. y["#25#"] = wa;
  168. y["#27#"] = xa;
  169. y["#28#"] = za;
  170. y["#29#"] = Aa;
  171. y["#31#"] = Ba;
  172. y["#33#"] = ka("", "pagead2.googlesyndication.com");
  173. y["#34#"] = Da;
  174. y["#36#"] = ya;
  175. y["#37#"] = Ca;
  176. y["#38#"] = Ea;
  177. y["#39#"] = "";
  178. x("_vars_", y);
  179. var Ma = Array.prototype,
  180. Na = function(a, b) {
  181. if (p(a)) return p(b) && 1 == b.length ? a.indexOf(b, 0) : -1;
  182. for (var c = 0; c < a.length; c++)
  183. if (c in a && a[c] === b) return c;
  184. return -1
  185. },
  186. Oa = function(a, b, c) {
  187. for (var d = a.length, f = p(a) ? a.split("") : a, g = 0; g < d; g++) g in f && b.call(c, f[g], g, a)
  188. },
  189. Pa = function(a, b) {
  190. for (var c = a.length, d = Array(c), f = p(a) ? a.split("") : a, g = 0; g < c; g++) g in f && (d[g] = b.call(void 0, f[g], g, a));
  191. return d
  192. },
  193. Qa = function(a, b) {
  194. var c;
  195. t: {
  196. c = a.length;
  197. for (var d = p(a) ? a.split("") : a, f = 0; f < c; f++)
  198. if (f in d && b.call(void 0, d[f], f, a)) {
  199. c =
  200. f;
  201. break t
  202. }
  203. c = -1
  204. }
  205. return 0 > c ? null : p(a) ? a.charAt(c) : a[c]
  206. },
  207. Ra = function(a, b) {
  208. 0 <= Na(a, b) || a.push(b)
  209. },
  210. Sa = function(a) {
  211. var b = a.length;
  212. if (0 < b) {
  213. for (var c = Array(b), d = 0; d < b; d++) c[d] = a[d];
  214. return c
  215. }
  216. return []
  217. },
  218. Ta = function(a, b, c) {
  219. return 2 >= arguments.length ? Ma.slice.call(a, b) : Ma.slice.call(a, b, c)
  220. },
  221. Ua = function(a) {
  222. for (var b = {}, c = 0, d = 0; d < a.length;) {
  223. var f = a[d++],
  224. g = ba(f) ? "o" + (f[ca] || (f[ca] = ++da)) : (typeof f).charAt(0) + f;
  225. Object.prototype.hasOwnProperty.call(b, g) || (b[g] = !0, a[c++] = f)
  226. }
  227. a.length = c
  228. },
  229. Wa = function(a, b) {
  230. a.sort(b || Va)
  231. },
  232. Ya = function(a) {
  233. for (var b = Xa, c = 0; c < a.length; c++) a[c] = {
  234. index: c,
  235. value: a[c]
  236. };
  237. var d = b || Va;
  238. Wa(a, function(a, b) {
  239. return d(a.value, b.value) || a.index - b.index
  240. });
  241. for (c = 0; c < a.length; c++) a[c] = a[c].value
  242. },
  243. Va = function(a, b) {
  244. return a > b ? 1 : a < b ? -1 : 0
  245. };
  246. var Za = function(a) {
  247. return s(a) && isFinite(a) && 0 == a % 1 && 0 <= a
  248. },
  249. $a = function(a) {
  250. return a.replace(/[^a-zA-Z0-9]/g, function(a) {
  251. return "&#" + a.charCodeAt() + ";"
  252. })
  253. },
  254. ab = function() {
  255. return B("#6#") ? "https:" : "http:"
  256. },
  257. bb = function(a) {
  258. var b = [],
  259. b = Pa(a, function(a) {
  260. a = a.getName();
  261. var b = a.split("/");
  262. return "/" == a.charAt(0) && 2 <= b.length ? b[1] : "/" != a.charAt(0) && 1 <= b.length ? b[0] : ""
  263. });
  264. Ua(b);
  265. return b
  266. },
  267. B = function(a) {
  268. return w()._vars_[a]
  269. };
  270. var cb = B("#36#");
  271. var E = function(a, b) {
  272. this.b = a;
  273. this.a = b || []
  274. };
  275. E.prototype.getMessageId = function() {
  276. return this.b
  277. };
  278. E.prototype.getMessageArgs = function() {
  279. return this.a
  280. };
  281. var db = function(a, b, c, d, f) {
  282. this.b = new Date;
  283. this.g = d || null;
  284. this.f = c || null;
  285. this.c = a;
  286. this.d = b;
  287. this.a = f || null
  288. };
  289. e = db.prototype;
  290. e.getSlot = function() {
  291. return this.g
  292. };
  293. e.getService = function() {
  294. return this.f
  295. };
  296. e.getLevel = function() {
  297. return this.c
  298. };
  299. e.getTimestamp = function() {
  300. return this.b
  301. };
  302. e.getMessage = function() {
  303. return this.d
  304. };
  305. e.getReference = function() {
  306. return this.a
  307. };
  308. var eb = ["Debug", "Info", "Warning", "Error", "Fatal"];
  309. db.prototype.toString = function() {
  310. var a = this.b.toTimeString() + ": " + eb[this.c] + ": " + this.d;
  311. this.a && (a += " Duration: " + (this.b.getTime() - this.a.getTimestamp().getTime()) + "ms.");
  312. return a
  313. };
  314. var F = function() {
  315. this.a = []
  316. };
  317. F.prototype.getAllEvents = function() {
  318. return this.a
  319. };
  320. F.prototype.getEventsByService = function(a) {
  321. return fb(this, function(b) {
  322. return b.getService() === a
  323. })
  324. };
  325. F.prototype.getEventsBySlot = function(a) {
  326. return fb(this, function(b) {
  327. return b.getSlot() === a
  328. })
  329. };
  330. F.prototype.getEventsByLevel = function(a) {
  331. return fb(this, function(b) {
  332. return b.getLevel() >= a
  333. })
  334. };
  335. var fb = function(a, b) {
  336. for (var c = [], d = 0; d < a.a.length; ++d) b(a.a[d]) && c.push(a.a[d]);
  337. return c
  338. };
  339. F.prototype.log = function(a, b, c, d, f) {
  340. a = new db(a, b, c, d, f);
  341. this.a.push(a);
  342. return a
  343. };
  344. var G = function(a, b, c, d, f) {
  345. return a.log(1, b, c, d, f)
  346. },
  347. H = function(a, b, c, d) {
  348. a.log(2, b, c, d, void 0)
  349. },
  350. I = function(a, b, c, d) {
  351. a.log(3, b, c, d, void 0)
  352. },
  353. J = function() {
  354. var a = w();
  355. return a.debug_log || (a.debug_log = new F)
  356. };
  357. x("getEventLog", J);
  358. var K = function(a) {
  359. return function() {
  360. return new E(a, [])
  361. }
  362. },
  363. L = function(a) {
  364. return function(b) {
  365. return new E(a, [b])
  366. }
  367. },
  368. M = function(a) {
  369. return function(b, c) {
  370. return new E(a, [b, c])
  371. }
  372. },
  373. O = function(a) {
  374. return function(b, c, d) {
  375. return new E(a, [b, c, d])
  376. }
  377. },
  378. gb = function(a) {
  379. return "[" + Pa(a, function(a) {
  380. return p(a) ? "'" + a + "'" : n(a) ? gb(a) : String(a)
  381. }).join(", ") + "]"
  382. },
  383. hb = K(1),
  384. ib = L(2),
  385. jb = L(3),
  386. kb = L(4),
  387. lb = L(5),
  388. mb = L(6),
  389. nb = K(8),
  390. ob = O(9),
  391. pb = O(10),
  392. qb = M(12),
  393. rb = L(13),
  394. sb = L(14),
  395. tb = K(16),
  396. ub = O(17),
  397. vb = K(19),
  398. wb = L(20),
  399. xb = L(21),
  400. yb = M(22),
  401. zb = M(23),
  402. Ab =
  403. L(26),
  404. Bb = L(27),
  405. Cb = L(28),
  406. Db = L(30),
  407. Eb = M(31),
  408. Fb = K(34),
  409. Gb = L(35),
  410. Hb = O(36),
  411. Ib = O(37),
  412. Jb = K(38),
  413. Kb = L(39),
  414. Lb = M(40),
  415. Mb = K(42),
  416. Nb = M(43),
  417. Ob = K(44),
  418. Pb = K(45),
  419. Qb = L(46),
  420. Rb = L(47),
  421. Sb = L(48),
  422. Tb = K(49),
  423. Ub = K(50),
  424. Vb = K(52),
  425. Wb = M(53),
  426. Xb = M(54),
  427. Yb = L(55),
  428. Zb = L(56),
  429. $b = M(57),
  430. cc = O(58),
  431. dc = L(59),
  432. ec = L(60),
  433. fc = M(61),
  434. gc = M(62),
  435. hc = L(63),
  436. ic = M(64),
  437. jc = L(65),
  438. kc = K(66),
  439. lc = K(67),
  440. mc = K(68),
  441. nc = K(69),
  442. oc = K(70),
  443. pc = K(71),
  444. qc = K(72),
  445. rc = L(75),
  446. sc = O(77),
  447. tc = L(78),
  448. uc = K(79),
  449. vc = L(80),
  450. wc = M(82),
  451. xc = M(84),
  452. yc = L(85),
  453. zc = K(87),
  454. Ac = O(88),
  455. Bc = L(90),
  456. Cc = L(92),
  457. Dc = L(93),
  458. Ec = L(94),
  459. Fc = L(95),
  460. P = function(a, b) {
  461. var c = gb(Sa(b)),
  462. c = c.substring(1, c.length - 1);
  463. return new E(96, [a, c])
  464. };
  465. x("getVersion", function() {
  466. return "52"
  467. });
  468. var Hc = function() {
  469. this.a = Gc + "/pagead/gen_204?id=" + encodeURIComponent("gpt_exception")
  470. },
  471. Gc = B("#6#") ? "https://" + B("#33#") : "http://" + B("#33#"),
  472. Ic = function(a, b, c) {
  473. b && b.match(/^\w+$/) && c && (a.a += "&" + b + "=" + encodeURIComponent(c))
  474. },
  475. Kc = function(a) {
  476. var b = Jc;
  477. if (!k(b) || 0 > b || 1 < b) b = B("#23#");
  478. if (Math.random() < b && a.a) {
  479. a = a.a;
  480. b = window;
  481. b.google_image_requests || (b.google_image_requests = []);
  482. var c = b.document.createElement("img");
  483. c.src = a;
  484. b.google_image_requests.push(c)
  485. }
  486. },
  487. Mc = function(a) {
  488. var b = Lc;
  489. Ic(a, "vrg", "52");
  490. b = bb(b);
  491. 3 >= b.length || (b = Ta(b, 0, 3), b.push("__extra__"));
  492. Ic(a, "nw_id", b.join(","))
  493. };
  494. var Jc = B("#38#"),
  495. Lc = [],
  496. Nc = function(a, b) {
  497. var c = {
  498. methodId: a
  499. };
  500. b.name && (c.name = b.name);
  501. b.message && (c.message = b.message.substring(0, 512));
  502. b.fileName && (c.fileName = b.fileName);
  503. b.lineNumber && (c.lineNumber = b.lineNumber);
  504. if (b.stack) {
  505. var d;
  506. var f = b.stack;
  507. try {
  508. -1 == f.indexOf("") && (f = "\n" + f);
  509. for (var g; f != g;) g = f, f = f.replace(/((https?:\/..*\/)[^\/:]*:\d+(?:.|\n)*)\2/, "$1");
  510. d = f.replace(/\n */g, "\n")
  511. } catch (l) {
  512. d = ""
  513. }
  514. c.stack = d
  515. }
  516. return c
  517. },
  518. Q = function(a, b) {
  519. if (!b.Q) try {
  520. b.Q = !0;
  521. var c = Nc(a, b),
  522. d = new Hc;
  523. try {
  524. Mc(d)
  525. } catch (f) {}
  526. v(c, function(a,
  527. b) {
  528. Ic(d, b, a)
  529. });
  530. Kc(d)
  531. } catch (g) {}
  532. throw b;
  533. };
  534. var Oc = function() {
  535. this.b = this.a = 0
  536. };
  537. Oc.prototype.push = function(a) {
  538. try {
  539. for (var b = J(), c = 0; c < arguments.length; ++c) try {
  540. "function" == m(arguments[c]) && (arguments[c](), this.a++)
  541. } catch (d) {
  542. this.b++, I(b, Db(String(d.message)))
  543. }
  544. G(b, Eb(String(this.a), String(this.b)));
  545. return this.a
  546. } catch (f) {
  547. Q(1001, f)
  548. }
  549. };
  550. (function() {
  551. function a(a) {
  552. this.t = {};
  553. this.tick = function(a, b, c) {
  554. this.t[a] = [void 0 != c ? c : (new Date).getTime(), b];
  555. if (void 0 == c) try {
  556. window.console.timeStamp("CSI/" + a)
  557. } catch (d) {}
  558. };
  559. this.tick("start", null, a)
  560. }
  561. var b;
  562. window.performance && (b = window.performance.timing);
  563. var c = b ? new a(b.responseStart) : new a;
  564. window.GPT_jstiming = {
  565. Timer: a,
  566. load: c
  567. };
  568. b && (c = b.navigationStart, b = b.responseStart, 0 < c && b >= c && (window.GPT_jstiming.srt = b - c));
  569. try {
  570. b = null, window.chrome && window.chrome.csi && (b = Math.floor(window.chrome.csi().pageT)), null ==
  571. b && window.gtbExternal && (b = window.gtbExternal.pageT()), null == b && window.external && (b = window.external.pageT), b && (window.GPT_jstiming.pt = b)
  572. } catch (d) {}
  573. })();
  574. if (window.GPT_jstiming) {
  575. window.GPT_jstiming.N = {};
  576. window.GPT_jstiming.P = 1;
  577. var Pc = function(a, b, c) {
  578. var d = a.t[b],
  579. f = a.t.start;
  580. if (d && (f || c)) return d = a.t[b][0], void 0 != c ? f = c : f = f[0], d - f
  581. };
  582. window.GPT_jstiming.getTick = Pc;
  583. var Qc = function(a, b, c) {
  584. var d = "";
  585. window.GPT_jstiming.srt && (d += "&srt=" + window.GPT_jstiming.srt);
  586. window.GPT_jstiming.pt && (d += "&tbsrt=" + window.GPT_jstiming.pt);
  587. try {
  588. window.external && window.external.tran ? d += "&tran=" + window.external.tran : window.gtbExternal && window.gtbExternal.tran ? d += "&tran=" + window.gtbExternal.tran() :
  589. window.chrome && window.chrome.csi && (d += "&tran=" + window.chrome.csi().tran)
  590. } catch (f) {}
  591. var g = window.chrome;
  592. if (g && (g = g.loadTimes)) {
  593. g().wasFetchedViaSpdy && (d += "&p=s");
  594. if (g().wasNpnNegotiated) {
  595. var d = d + "&npn=1",
  596. l = g().npnNegotiatedProtocol;
  597. l && (d += "&npnv=" + (encodeURIComponent || escape)(l))
  598. }
  599. g().wasAlternateProtocolAvailable && (d += "&apa=1")
  600. }
  601. var r = a.t,
  602. N = r.start,
  603. g = [],
  604. l = [],
  605. A;
  606. for (A in r)
  607. if ("start" != A && 0 != A.indexOf("_")) {
  608. var C = r[A][1];
  609. C ? r[C] && l.push(A + "." + Pc(a, A, r[C][0])) : N && g.push(A + "." + Pc(a, A))
  610. }
  611. if (b)
  612. for (var D in b) d +=
  613. "&" + D + "=" + b[D];
  614. (b = c) || (b = "https:" == document.location.protocol ? "https://csi.gstatic.com/csi" : "http://csi.gstatic.com/csi");
  615. return [b, "?v=3", "&s=" + (window.GPT_jstiming.sn || "gpt") + "&action=", a.name, l.length ? "&it=" + l.join(",") : "", d, "&rt=", g.join(",")].join("")
  616. },
  617. Rc = function(a, b, c) {
  618. a = Qc(a, b, c);
  619. if (!a) return "";
  620. b = new Image;
  621. var d = window.GPT_jstiming.P++;
  622. window.GPT_jstiming.N[d] = b;
  623. b.onload = b.onerror = function() {
  624. window.GPT_jstiming && delete window.GPT_jstiming.N[d]
  625. };
  626. b.src = a;
  627. b = null;
  628. return a
  629. };
  630. window.GPT_jstiming.report =
  631. function(a, b, c) {
  632. if ("prerender" == document.webkitVisibilityState) {
  633. var d = !1,
  634. f = function() {
  635. if (!d) {
  636. b ? b.prerender = "1" : b = {
  637. prerender: "1"
  638. };
  639. var g;
  640. "prerender" == document.webkitVisibilityState ? g = !1 : (Rc(a, b, c), g = !0);
  641. g && (d = !0, document.removeEventListener("webkitvisibilitychange", f, !1))
  642. }
  643. };
  644. document.addEventListener("webkitvisibilitychange", f, !1);
  645. return ""
  646. }
  647. return Rc(a, b, c)
  648. }
  649. };
  650. var Sc = function(a, b) {
  651. for (var c in a)
  652. if (b.call(void 0, a[c], c, a)) return !0;
  653. return !1
  654. },
  655. Tc = function(a, b) {
  656. for (var c in a)
  657. if (a[c] == b) return !0;
  658. return !1
  659. };
  660. var Uc = function(a, b) {
  661. this.b = a;
  662. this.a = b
  663. };
  664. e = Uc.prototype;
  665. e.clone = function() {
  666. return new Uc(this.b, this.a)
  667. };
  668. e.isEmpty = function() {
  669. return !(this.b * this.a)
  670. };
  671. e.ceil = function() {
  672. this.b = Math.ceil(this.b);
  673. this.a = Math.ceil(this.a);
  674. return this
  675. };
  676. e.floor = function() {
  677. this.b = Math.floor(this.b);
  678. this.a = Math.floor(this.a);
  679. return this
  680. };
  681. e.round = function() {
  682. this.b = Math.round(this.b);
  683. this.a = Math.round(this.a);
  684. return this
  685. };
  686. var R;
  687. t: {
  688. var Vc = h.navigator;
  689. if (Vc) {
  690. var Wc = Vc.userAgent;
  691. if (Wc) {
  692. R = Wc;
  693. break t
  694. }
  695. }
  696. R = ""
  697. }
  698. var S = function(a) {
  699. return -1 != R.indexOf(a)
  700. };
  701. var Xc = S("Opera") || S("OPR"),
  702. T = S("Trident") || S("MSIE"),
  703. Yc = S("Gecko") && -1 == R.toLowerCase().indexOf("webkit") && !(S("Trident") || S("MSIE")),
  704. Zc = -1 != R.toLowerCase().indexOf("webkit"),
  705. $c = function() {
  706. var a = h.document;
  707. return a ? a.documentMode : void 0
  708. },
  709. ad = function() {
  710. var a = "",
  711. b;
  712. if (Xc && h.opera) return a = h.opera.version, "function" == m(a) ? a() : a;
  713. Yc ? b = /rv\:([^\);]+)(\)|;)/ : T ? b = /\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/ : Zc && (b = /WebKit\/(\S+)/);
  714. b && (a = (a = b.exec(R)) ? a[1] : "");
  715. return T && (b = $c(), b > parseFloat(a)) ? String(b) : a
  716. }(),
  717. bd = {},
  718. cd = function(a) {
  719. if (!bd[a]) {
  720. for (var b = 0, c = String(ad).replace(/^[\s\xa0]+|[\s\xa0]+$/g, "").split("."), d = String(a).replace(/^[\s\xa0]+|[\s\xa0]+$/g, "").split("."), f = Math.max(c.length, d.length), g = 0; 0 == b && g < f; g++) {
  721. var l = c[g] || "",
  722. r = d[g] || "",
  723. N = RegExp("(\\d*)(\\D*)", "g"),
  724. A = RegExp("(\\d*)(\\D*)", "g");
  725. do {
  726. var C = N.exec(l) || ["", "", ""],
  727. D = A.exec(r) || ["", "", ""];
  728. if (0 == C[0].length && 0 == D[0].length) break;
  729. b = Ga(0 == C[1].length ? 0 : parseInt(C[1], 10), 0 == D[1].length ? 0 : parseInt(D[1], 10)) || Ga(0 == C[2].length, 0 == D[2].length) || Ga(C[2],
  730. D[2])
  731. } while (0 == b)
  732. }
  733. bd[a] = 0 <= b
  734. }
  735. },
  736. dd = h.document,
  737. ed = dd && T ? $c() || ("CSS1Compat" == dd.compatMode ? parseInt(ad, 10) : 5) : void 0;
  738. var fd;
  739. if (!(fd = !Yc && !T)) {
  740. var gd;
  741. if (gd = T) gd = T && 9 <= ed;
  742. fd = gd
  743. }
  744. fd || Yc && cd("1.9.1");
  745. T && cd("9");
  746. var hd = {
  747. T: "slotRenderEnded"
  748. },
  749. id = function(a, b, c, d) {
  750. this.slot = a;
  751. this.isEmpty = b;
  752. this.size = c;
  753. this.lineItemId = this.creativeId = null;
  754. this.serviceName = d
  755. };
  756. var t = function() {
  757. this.L = [];
  758. this.M = {};
  759. this.b = !1;
  760. this.m = {};
  761. this.log = J();
  762. G(this.log, Gb(this.getName()), this)
  763. };
  764. e = t.prototype;
  765. e.getName = function() {
  766. return "unknown"
  767. };
  768. e.getVersion = function() {
  769. return "unversioned"
  770. };
  771. e.getSlots = function() {
  772. return this.L
  773. };
  774. e.getSlotIdMap = function() {
  775. return this.M
  776. };
  777. e.enable = function() {
  778. if (this.b) G(this.log, Jb(), this);
  779. else {
  780. this.b = !0;
  781. try {
  782. this.A()
  783. } catch (a) {
  784. I(this.log, Kb(String(a)), this)
  785. }
  786. }
  787. };
  788. e.w = function(a) {
  789. this.L.push(a);
  790. this.M[a.getSlotId().getId()] = a;
  791. G(this.log, Lb(this.getName(), a.getName()), this, a)
  792. };
  793. e.addEventListener = function(a, b) {
  794. try {
  795. if ("function" != m(b) || !p(a)) {
  796. var c = P("Service.addEventListener", arguments);
  797. H(this.log, c, this);
  798. return this
  799. }
  800. if (!Tc(hd, a)) return H(this.log, Dc(a), this), this;
  801. c = a;
  802. n(this.m[c]) || (this.m[c] = []);
  803. this.m[c].push(b);
  804. return this
  805. } catch (d) {
  806. Q(1401, d)
  807. }
  808. };
  809. var jd = function(a, b) {
  810. var c = a.m.slotRenderEnded;
  811. n(c) && Oa(c, function(a) {
  812. try {
  813. a(b)
  814. } catch (c) {
  815. a = c && p(c.name) ? c.name : null;
  816. var g = c && p(c.message) ? c.message : null,
  817. l = "";
  818. a && g ? l = a + ": " + g : a ? l = a : g && (l = g);
  819. H(this.log, Cc(l), this)
  820. }
  821. }, a)
  822. };
  823. var kd = {
  824. load: !0,
  825. gpt_load: !0,
  826. _pubads_load_start: !0,
  827. pubads_load: !0
  828. },
  829. ld = {
  830. ad_fetch_start: !0
  831. },
  832. md = {
  833. pubads_load: "_pubads_load_start",
  834. ad_fetch_end: "ad_fetch_start"
  835. },
  836. nd = {},
  837. od = function() {
  838. this.f = !1;
  839. h.GPT_jstiming && h.GPT_jstiming.load && ("http:" == h.location.protocol || "https:" == h.location.protocol) && Math.random() < B("#37#") && (this.f = !0);
  840. this.a = this.d = null;
  841. this.j = !1;
  842. this.k = window.GPT_jstiming.getTick(window.GPT_jstiming.load, "start", 0);
  843. this.c = window.GPT_jstiming.load;
  844. this.c.name = "global";
  845. this.b = {};
  846. this.b.load = !1;
  847. this.b.gpt_load = !1;
  848. this.b._pubads_load_start = !1;
  849. this.b.pubads_load = !1;
  850. this.g = 500;
  851. this.i = [];
  852. this.h = {};
  853. this.m = !1
  854. },
  855. qd = function(a, b, c, d, f) {
  856. c && a.c ? (a.c.tick(b, d, f), pd(a, !0)) : c || (a.a || (a.a = new h.GPT_jstiming.Timer(a.k), a.a.name = "ad_events"), a.a.tick(b, d, f), 0 != b.indexOf("_") && (a.j = !0))
  857. };
  858. od.prototype.tick = function(a, b) {
  859. if (this.f) {
  860. var c = kd.hasOwnProperty(a),
  861. d = b ? ".psbk" : "";
  862. a += d;
  863. var f = md[a];
  864. f && (f += d);
  865. c && (this.b[a] = !0);
  866. qd(this, a, c, f)
  867. }
  868. };
  869. var rd = function(a) {
  870. window.setTimeout(ga(function() {
  871. pd(this, !1) && (this.g = 32E3 < 2 * this.g ? 32E3 : 2 * this.g);
  872. rd(this)
  873. }, a), a.g)
  874. },
  875. pd = function(a, b) {
  876. if (!a.f) return !1;
  877. var c = "https:" == h.location.protocol ? "https://www.google.com/csi" : "http://csi.gstatic.com/csi",
  878. d = {
  879. vrg: "52"
  880. };
  881. a.i.length && (d.e = a.i.join());
  882. return b && a.c && null != a.c && (a.b.load || "complete" == document.readyState) && a.b.gpt_load && a.b._pubads_load_start == a.b.pubads_load ? (h.GPT_jstiming.report(a.c, d, c), a.c = null, !0) : !b && a.a && a.j ? (h.GPT_jstiming.report(a.a, d,
  883. c), a.a = null, a.j = !1, !0) : !1
  884. };
  885. od.prototype.tickRepeated = function(a, b, c) {
  886. if (this.f && !(4 < b)) {
  887. var d = md[a],
  888. f = kd.hasOwnProperty(a),
  889. g = a,
  890. l = d,
  891. r = "";
  892. c && (r = ".psbk");
  893. d && (l = this.d && nd[d] ? l + (".sra" + r) : l + (r + "." + b));
  894. g = this.d && nd[a] ? g + (".sra" + r) : g + (r + "." + b);
  895. l && this.h.hasOwnProperty("_" + l) && (l = "_" + l, qd(this, l, !1, void 0, this.h[l] + this.k), delete this.h[l]);
  896. qd(this, g, f, l);
  897. f || "ad_fetch_start" != a || this.m || (qd(this, "first_ad_fetch_start" + r, !1, void 0, window.GPT_jstiming.getTick(this.a, g) + this.k), this.m = !0);
  898. ld.hasOwnProperty(a) && (a = window.GPT_jstiming.getTick(this.a,
  899. g), this.h["_" + g] = a)
  900. }
  901. };
  902. od.prototype.addFeature = function(a) {
  903. 0 < a.length && Ra(this.i, a)
  904. };
  905. od.prototype.setSraMode = function(a) {
  906. null === this.d && ((this.d = a) ? this.addFeature("sra") : this.addFeature("non-sra"))
  907. };
  908. var td = function() {
  909. return w()._tmanager_ || sd()
  910. },
  911. sd = function() {
  912. var a = new od;
  913. x("_tmanager_", a);
  914. rd(a);
  915. Ha(window, function() {
  916. a.tick("load")
  917. });
  918. a.addFeature("v52");
  919. return a
  920. };
  921. var ud = function() {
  922. this.a = {};
  923. this.b = !1;
  924. this.c = J();
  925. this.f = G(this.c, nb());
  926. Ha(window, ga(ud.prototype.d, this))
  927. },
  928. vd = function(a, b) {
  929. var c = null;
  930. b in a.a && (c = a.a[b]);
  931. return c
  932. },
  933. wd = function() {
  934. var a = U();
  935. v(a.a, function(a, c) {
  936. a.enable();
  937. td().addFeature(c)
  938. })
  939. };
  940. ud.prototype.d = function() {
  941. this.b = !0;
  942. G(this.c, hb(), null, null, this.f)
  943. };
  944. var U = function() {
  945. var a = w();
  946. return a.service_manager_instance || (a.service_manager_instance = new ud)
  947. };
  948. x("enableServices", function() {
  949. try {
  950. wd()
  951. } catch (a) {
  952. Q(1801, a)
  953. }
  954. });
  955. var xd = function(a) {
  956. return n(a) && 2 == a.length && Za(a[0]) && Za(a[1])
  957. },
  958. yd = function(a) {
  959. return n(a) && 1 < a.length && s(a[0]) && s(a[1])
  960. };
  961. var zd = function(a, b) {
  962. this.b = a;
  963. this.a = b
  964. };
  965. zd.prototype.getWidth = function() {
  966. return this.b
  967. };
  968. zd.prototype.getHeight = function() {
  969. return this.a
  970. };
  971. var Ad = function(a) {
  972. var b = [];
  973. if (n(a))
  974. if (yd(a)) b.push(new zd(a[0], a[1]));
  975. else
  976. for (var c = 0; c < a.length; ++c) {
  977. var d = a[c];
  978. yd(d) && b.push(new zd(d[0], d[1]))
  979. }
  980. return b
  981. };
  982. var Bd = function(a, b) {
  983. this.a = a;
  984. this.b = b
  985. };
  986. Bd.prototype.clone = function() {
  987. return new Bd(this.a, this.b)
  988. };
  989. var Cd = function(a) {
  990. this.a = a
  991. },
  992. Dd = function(a, b) {
  993. var c = Qa(a.a, function(a) {
  994. a = a.a;
  995. return a.b <= b.b && a.a <= b.a
  996. });
  997. return null == c ? null : c.b
  998. },
  999. Ed = function(a) {
  1000. if (!n(a) || 2 != a.length) throw Error("Each mapping entry has to be an array of size 2");
  1001. var b;
  1002. b = a[0];
  1003. if (!xd(b)) throw Error("Size has to be an array of two non-negative integers");
  1004. b = new Uc(b[0], b[1]);
  1005. if (n(a[1]) && 0 == a[1].length) a = [];
  1006. else if (a = Ad(a[1]), 0 == a.length) throw Error("At least one slot size must be present");
  1007. return new Bd(b, a)
  1008. };
  1009. var Fd = function(a, b, c) {
  1010. this.b = a;
  1011. this.c = s(b) ? b : 0;
  1012. this.a = this.b + "_" + this.c;
  1013. this.d = c || "gpt_unit_" + this.a
  1014. };
  1015. e = Fd.prototype;
  1016. e.getId = function() {
  1017. return this.a
  1018. };
  1019. e.getName = function() {
  1020. return this.b
  1021. };
  1022. e.getInstance = function() {
  1023. return this.c
  1024. };
  1025. e.toString = Fd.prototype.getId;
  1026. e.getDomId = function() {
  1027. return this.d
  1028. };
  1029. var Gd = function(a, b, c, d) {
  1030. this.j = a;
  1031. this.v = Ad(c);
  1032. this.l = null;
  1033. this.b = new Fd(a, b, d);
  1034. this.c = [];
  1035. this.f = {};
  1036. this.h = null;
  1037. this.a = J();
  1038. G(this.a, ib(this.b.toString()), null, this);
  1039. this.g = this.k = null;
  1040. this.n = this.s = "";
  1041. this.m = !0;
  1042. this.d = {};
  1043. this.i = [];
  1044. this.u = !1;
  1045. this.r = this.q = null;
  1046. this.o = 0;
  1047. this.p = -1
  1048. };
  1049. e = Gd.prototype;
  1050. e.set = function(a, b) {
  1051. try {
  1052. if (!p(a) || !b) return H(this.a, P("Slot.set", arguments), null, this), this;
  1053. var c = this.getName();
  1054. this.f[a] = b;
  1055. this.k || this.g ? H(this.a, pb(a, String(b), c), null, this) : G(this.a, ob(a, String(b), c), null, this);
  1056. return this
  1057. } catch (d) {
  1058. Q(201, d)
  1059. }
  1060. };
  1061. e.get = function(a) {
  1062. try {
  1063. return p(a) ? this.f.hasOwnProperty(a) ? this.f[a] : null : (H(this.a, P("Slot.get", arguments), null, this), null)
  1064. } catch (b) {
  1065. Q(202, b)
  1066. }
  1067. };
  1068. e.getAttributeKeys = function() {
  1069. try {
  1070. var a = [];
  1071. v(this.f, function(b, d) {
  1072. a.push(d)
  1073. });
  1074. return a
  1075. } catch (b) {
  1076. Q(203, b)
  1077. }
  1078. };
  1079. e.addService = function(a) {
  1080. try {
  1081. var b = U();
  1082. if (!Tc(b.a, a)) return H(this.a, Ec(this.b.toString()), null, this), this;
  1083. for (b = 0; b < this.c.length; ++b)
  1084. if (a == this.c[b]) return H(this.a, qb(a.getName(), this.b.toString()), a, this), this;
  1085. this.c.push(a);
  1086. a.w(this);
  1087. return this
  1088. } catch (c) {
  1089. Q(204, c)
  1090. }
  1091. };
  1092. e.getName = function() {
  1093. return this.j
  1094. };
  1095. e.getAdUnitPath = function() {
  1096. try {
  1097. return this.j
  1098. } catch (a) {
  1099. Q(215, a)
  1100. }
  1101. };
  1102. e.getSlotId = function() {
  1103. return this.b
  1104. };
  1105. e.getServices = function() {
  1106. return this.c
  1107. };
  1108. e.getSizes = function(a, b) {
  1109. return s(a) && s(b) && this.l ? Dd(this.l, new Uc(a, b)) : this.v
  1110. };
  1111. e.defineSizeMapping = function(a) {
  1112. try {
  1113. if (!n(a)) throw Error("Size mapping has to be an array");
  1114. var b = Pa(a, Ed);
  1115. this.l = new Cd(b)
  1116. } catch (c) {
  1117. H(this.a, rb(c.message), null, this)
  1118. }
  1119. return this
  1120. };
  1121. e.hasWrapperDiv = function() {
  1122. return !!document.getElementById(this.b.getDomId())
  1123. };
  1124. e.setClickUrl = function(a) {
  1125. try {
  1126. if (!p(a)) return H(this.a, P("Slot.setClickUrl", arguments), null, this), this;
  1127. this.n = a;
  1128. return this
  1129. } catch (b) {
  1130. Q(206, b)
  1131. }
  1132. };
  1133. e.getClickUrl = function() {
  1134. return this.n
  1135. };
  1136. e.setCategoryExclusion = function(a) {
  1137. try {
  1138. return p(a) && !Fa(null == a ? "" : String(a)) ? (Ra(this.i, a), G(this.a, sb(a), null, this)) : H(this.a, P("Slot.setCategoryExclusion", arguments), null, this), this
  1139. } catch (b) {
  1140. Q(207, b)
  1141. }
  1142. };
  1143. e.clearCategoryExclusions = function() {
  1144. try {
  1145. return G(this.a, tb(), null, this), this.i = [], this
  1146. } catch (a) {
  1147. Q(208, a)
  1148. }
  1149. };
  1150. e.getCategoryExclusions = function() {
  1151. try {
  1152. return Sa(this.i)
  1153. } catch (a) {
  1154. Q(209, a)
  1155. }
  1156. };
  1157. e.setTargeting = function(a, b) {
  1158. try {
  1159. var c = [];
  1160. n(b) ? c = b : b && c.push(b.toString());
  1161. p(a) ? (G(this.a, ub(a, c.join(), this.getName()), null, this), this.d[a] = c) : H(this.a, P("Slot.setTargeting", arguments), null, this);
  1162. return this
  1163. } catch (d) {
  1164. Q(210, d)
  1165. }
  1166. };
  1167. e.clearTargeting = function() {
  1168. try {
  1169. return G(this.a, vb(), null, this), this.d = {}, this
  1170. } catch (a) {
  1171. Q(211, a)
  1172. }
  1173. };
  1174. e.getTargetingMap = function() {
  1175. var a = this.d,
  1176. b = {},
  1177. c;
  1178. for (c in a) b[c] = a[c];
  1179. return b
  1180. };
  1181. e.getTargeting = function(a) {
  1182. try {
  1183. return p(a) ? this.d.hasOwnProperty(a) ? Sa(this.d[a]) : [] : (H(this.a, P("Slot.getTargeting", arguments), null, this), [])
  1184. } catch (b) {
  1185. Q(212, b)
  1186. }
  1187. };
  1188. e.getTargetingKeys = function() {
  1189. try {
  1190. var a = [];
  1191. v(this.d, function(b, d) {
  1192. a.push(d)
  1193. });
  1194. return a
  1195. } catch (b) {
  1196. Q(213, b)
  1197. }
  1198. };
  1199. e.getOutOfPage = function() {
  1200. return this.u
  1201. };
  1202. e.getAudExtId = function() {
  1203. return this.o
  1204. };
  1205. e.setTagForChildDirectedTreatment = function(a) {
  1206. if (0 === a || 1 === a) this.p = a
  1207. };
  1208. e.gtfcd = function() {
  1209. return this.p
  1210. };
  1211. e.setCollapseEmptyDiv = function(a, b) {
  1212. try {
  1213. if (!q(a) || b && !q(b)) return H(this.a, P("Slot.setCollapseEmptyDiv", arguments), null, this), this;
  1214. this.r = (this.q = a) && Boolean(b);
  1215. b && !a && H(this.a, wb(this.b.toString()), null, this);
  1216. return this
  1217. } catch (c) {
  1218. Q(214, c)
  1219. }
  1220. };
  1221. e.getCollapseEmptyDiv = function() {
  1222. return this.q
  1223. };
  1224. e.getDivStartsCollapsed = function() {
  1225. return this.r
  1226. };
  1227. var Hd = function(a, b) {
  1228. if (!a.hasWrapperDiv()) return I(a.a, xb(a.b.toString()), null, a), !1;
  1229. var c = h.document,
  1230. d = a.b.getDomId(),
  1231. c = c && c.getElementById(d);
  1232. if (!c) return I(a.a, yb(d, a.b.toString()), null, a), !1;
  1233. d = a.h;
  1234. return p(d) && 0 < d.length ? (a.renderStarted(), c.innerHTML = d, a.renderEnded(b), !0) : !1
  1235. };
  1236. e = Gd.prototype;
  1237. e.fetchStarted = function(a) {
  1238. this.k = G(this.a, jb(this.getName()), null, this);
  1239. this.s = a
  1240. };
  1241. e.getContentUrl = function() {
  1242. return this.s
  1243. };
  1244. e.fetchEnded = function() {
  1245. G(this.a, kb(this.getName()), null, this, this.k)
  1246. };
  1247. e.renderStarted = function() {
  1248. this.g = G(this.a, lb(this.getName()), null, this)
  1249. };
  1250. e.renderEnded = function(a) {
  1251. G(this.a, mb(this.getName()), null, this, this.g);
  1252. Oa(this.c, function(b) {
  1253. b.getName() == a.serviceName && jd(b, a)
  1254. })
  1255. };
  1256. var Id = function() {
  1257. this.a = {};
  1258. this.b = {};
  1259. this.c = J()
  1260. },
  1261. Jd = function(a, b, c, d) {
  1262. if (!p(b) || 0 >= b.length || !c) return null;
  1263. b in a.a || (a.a[b] = []);
  1264. c = new Gd(b, a.a[b].length, c, d);
  1265. d = c.getSlotId().getDomId();
  1266. if (a.b[d]) return I(a.c, Cb(d)), null;
  1267. a.a[b].push(c);
  1268. a.b[c.getSlotId().getDomId()] = c;
  1269. Lc.push(c);
  1270. return c
  1271. };
  1272. Id.prototype.d = function(a, b) {
  1273. var c = b || 0,
  1274. d = p(a) && this.a[a] || [];
  1275. return 0 <= c && c < d.length && (d = d[c], d.getSlotId().getInstance() == c) ? d : null
  1276. };
  1277. var Kd = function(a, b) {
  1278. return Sc(a.a, function(a) {
  1279. return 0 <= Na(a, b)
  1280. })
  1281. },
  1282. V = function() {
  1283. var a = w();
  1284. return a.slot_manager_instance || (a.slot_manager_instance = new Id)
  1285. },
  1286. W = function(a, b, c) {
  1287. try {
  1288. var d = V();
  1289. return d && Jd(d, a, b, c)
  1290. } catch (f) {
  1291. Q(802, f)
  1292. }
  1293. };
  1294. x("defineOutOfPageSlot", function(a, b) {
  1295. try {
  1296. var c = V();
  1297. if (!c) return null;
  1298. var d = Jd(c, a, [1, 1], b);
  1299. return d ? (d.u = !0, d) : null
  1300. } catch (f) {
  1301. Q(801, f)
  1302. }
  1303. });
  1304. x("defineSlot", W);
  1305. x("defineUnit", W);
  1306. Id.prototype.find = Id.prototype.d;
  1307. Id.getInstance = V;
  1308. var Ld = function(a) {
  1309. try {
  1310. var b = J();
  1311. if (p(a)) {
  1312. var c, d = V();
  1313. if (c = d.b[a] ? d.b[a] : null)
  1314. if (c.m && !c.hasWrapperDiv()) H(c.a, zb(c.j, c.b.getDomId()), null, c);
  1315. else
  1316. for (a = 0; a < c.c.length; ++a) c.c[a].b && c.c[a].p(c);
  1317. else I(b, Bb(String(a)))
  1318. } else I(b, Ab(String(a)))
  1319. } catch (f) {
  1320. Q(2201, f)
  1321. }
  1322. };
  1323. x("display", Ld, !0);
  1324. var Md = /#|$/,
  1325. Nd = function(a, b) {
  1326. var c = a.search(Md),
  1327. d;
  1328. t: {
  1329. d = 0;
  1330. for (var f = b.length; 0 <= (d = a.indexOf(b, d)) && d < c;) {
  1331. var g = a.charCodeAt(d - 1);
  1332. if (38 == g || 63 == g)
  1333. if (g = a.charCodeAt(d + f), !g || 61 == g || 38 == g || 35 == g) break t;
  1334. d += f + 1
  1335. }
  1336. d = -1
  1337. }
  1338. if (0 > d) return null;
  1339. f = a.indexOf("&", d);
  1340. if (0 > f || f > c) f = c;
  1341. d += b.length + 1;
  1342. return decodeURIComponent(a.substr(d, f - d).replace(/\+/g, " "))
  1343. };
  1344. var Od = null,
  1345. Pd = Yc || Zc || Xc || "function" == typeof h.atob;
  1346. var Rd = function(a, b, c) {
  1347. var d = Qd++;
  1348. this.a = new Gd(a, d, b);
  1349. this.a.addService(c);
  1350. this.b = c
  1351. },
  1352. Qd = 1;
  1353. e = Rd.prototype;
  1354. e.setClickUrl = function(a) {
  1355. try {
  1356. return this.a.setClickUrl(a), this
  1357. } catch (b) {
  1358. Q(1202, b)
  1359. }
  1360. };
  1361. e.setTargeting = function(a, b) {
  1362. try {
  1363. return this.a.setTargeting(a, b), this
  1364. } catch (c) {
  1365. Q(1204, c)
  1366. }
  1367. };
  1368. e.setAudExtId = function(a) {
  1369. try {
  1370. return Za(a) && (this.a.o = a), this
  1371. } catch (b) {
  1372. Q(1205, b)
  1373. }
  1374. };
  1375. e.setTagForChildDirectedTreatment = function(a) {
  1376. try {
  1377. return this.a.setTagForChildDirectedTreatment(a), this
  1378. } catch (b) {
  1379. Q(1203, b)
  1380. }
  1381. };
  1382. e.display = function() {
  1383. try {
  1384. Sd(this.b, this.a)
  1385. } catch (a) {
  1386. Q(1201, a)
  1387. }
  1388. };
  1389. var Td = function(a, b) {
  1390. this.a = a;
  1391. this.b = b || {
  1392. changeCorrelator: !0
  1393. }
  1394. },
  1395. X = function() {
  1396. t.call(this);
  1397. this.g = !1;
  1398. this.a = null;
  1399. this.D = 0;
  1400. this.n = -1;
  1401. this.o = {};
  1402. this.j = {};
  1403. this.v = [];
  1404. this.B = this.u = "";
  1405. this.I = !1;
  1406. this.G = !0;
  1407. this.f = this.F = !1;
  1408. this.c = cb ? !1 : !0;
  1409. this.H = cb;
  1410. this.q = this.i = !1;
  1411. this.d = [];
  1412. this.l = [];
  1413. this.h = [];
  1414. this.C = {};
  1415. this.s = !1;
  1416. this.k = -1;
  1417. this.J = this.K = "";
  1418. this.r = [];
  1419. null !== Nd(window.location.href, "google_force_safeframe_image") && this.r.push("108809020")
  1420. };
  1421. ha(X);
  1422. var Ud = {
  1423. adsense_ad_format: "google_ad_format",
  1424. adsense_ad_types: "google_ad_type",
  1425. adsense_allow_expandable_ads: "google_allow_expandable_ads",
  1426. adsense_background_color: "google_color_bg",
  1427. adsense_bid: "google_bid",
  1428. adsense_border_color: "google_color_border",
  1429. adsense_channel_ids: "google_ad_channel",
  1430. adsense_content_section: "google_ad_section",
  1431. adsense_cpm: "google_cpm",
  1432. adsense_ed: "google_ed",
  1433. adsense_encoding: "google_encoding",
  1434. adsense_family_safe: "google_safe",
  1435. adsense_feedback: "google_feedback",
  1436. adsense_flash_version: "google_flash_version",
  1437. adsense_font_face: "google_font_face",
  1438. adsense_font_size: "google_font_size",
  1439. adsense_hints: "google_hints",
  1440. adsense_host: "google_ad_host",
  1441. adsense_host_channel: "google_ad_host_channel",
  1442. adsense_host_tier_id: "google_ad_host_tier_id",
  1443. adsense_keyword_type: "google_kw_type",
  1444. adsense_keywords: "google_kw",
  1445. adsense_line_color: "google_line_color",
  1446. adsense_link_color: "google_color_link",
  1447. adsense_relevant_content: "google_contents",
  1448. adsense_reuse_colors: "google_reuse_colors",
  1449. adsense_targeting: "google_targeting",
  1450. adsense_targeting_types: "google_targeting",
  1451. adsense_test_mode: "google_adtest",
  1452. adsense_text_color: "google_color_text",
  1453. adsense_ui_features: "google_ui_features",
  1454. adsense_ui_version: "google_ui_version",
  1455. adsense_url_color: "google_color_url",
  1456. alternate_ad_iframe_color: "google_alternate_color",
  1457. alternate_ad_url: "google_alternate_ad_url",
  1458. demographic_age: "google_cust_age",
  1459. demographic_ch: "google_cust_ch",
  1460. demographic_gender: "google_cust_gender",
  1461. demographic_interests: "google_cust_interests",
  1462. demographic_job: "google_cust_job",
  1463. demographic_l: "google_cust_l",
  1464. demographic_lh: "google_cust_lh",
  1465. demographic_u_url: "google_cust_u_url",
  1466. demographic_unique_id: "google_cust_id",
  1467. document_language: "google_language",
  1468. geography_override_city: "google_city",
  1469. geography_override_country: "google_country",
  1470. geography_override_region: "google_region",
  1471. page_url: "google_page_url"
  1472. };
  1473. e = X.prototype;
  1474. e.set = function(a, b) {
  1475. try {
  1476. if (!(p(a) && 0 < a.length)) return H(this.log, P("PubAdsService.set", arguments), this, null), this;
  1477. this.o[a] = b;
  1478. G(this.log, Hb(a, String(b), this.getName()), this, null);
  1479. return this
  1480. } catch (c) {
  1481. Q(21, c)
  1482. }
  1483. };
  1484. e.get = function(a) {
  1485. try {
  1486. return this.o[a]
  1487. } catch (b) {
  1488. Q(22, b)
  1489. }
  1490. };
  1491. e.getAttributeKeys = function() {
  1492. try {
  1493. var a = [];
  1494. v(this.o, function(b, d) {
  1495. a.push(d)
  1496. });
  1497. return a
  1498. } catch (b) {
  1499. Q(23, b)
  1500. }
  1501. };
  1502. e.display = function(a, b, c, d) {
  1503. try {
  1504. this.enable();
  1505. var f = c ? W(a, b, c) : W(a, b);
  1506. f.addService(this);
  1507. d && f.setClickUrl(d);
  1508. Ld(f.getSlotId().getDomId())
  1509. } catch (g) {
  1510. Q(24, g)
  1511. }
  1512. };
  1513. e.A = function() {
  1514. if (this.c) {
  1515. if (!this.g) {
  1516. var a = document,
  1517. b = a.createElement("script");
  1518. U();
  1519. b.async = !0;
  1520. b.type = "text/javascript";
  1521. b.src = Vd();
  1522. (a = a.getElementsByTagName("head")[0] || a.getElementsByTagName("body")[0]) ? (G(this.log, Qb("GPT PubAds"), this), td().tick("_pubads_load_start"), a.appendChild(b), this.g = !0) : I(this.log, Rb("GPT PubAds"), this)
  1523. }
  1524. } else Wd(this)
  1525. };
  1526. e.getName = function() {
  1527. return "publisher_ads"
  1528. };
  1529. var Vd = function() {
  1530. return ab() + "//partner.googleadservices.com/gpt/pubads_impl_52.js"
  1531. },
  1532. Wd = function(a) {
  1533. var b = U();
  1534. a.g || b.b || (b = document, a.g = !0, td().tick("_pubads_load_start"), b.write('<script type="text/javascript" src="' + $a(Vd()) + '">\x3c/script>'))
  1535. };
  1536. X.prototype.fillSlot = function(a) {
  1537. G(this.log, Ub());
  1538. this.a.fillSlot(a);
  1539. this.C[a.getName()] = !0;
  1540. if (this.a)
  1541. for (a = 0; a < this.h.length; a++) {
  1542. var b = this.h[a];
  1543. b.a[0].getName() in this.C && (this.refresh(b.a, b.b), Ma.splice.call(this.h, a, 1), a--)
  1544. } else I(this.log, Tb(), this)
  1545. };
  1546. X.prototype.onGoogleAdsJsLoad = function(a) {
  1547. this.a = a;
  1548. G(this.log, Sb("GPT"), this);
  1549. this.a.setCookieOptions(this.D);
  1550. this.a.setTagForChildDirectedTreatment(this.n);
  1551. Oa(this.r, function(a) {
  1552. this.a.setApiExperiment(a)
  1553. }, this);
  1554. this.a.setCenterAds(this.H);
  1555. cb && (this.f = !1, this.a.setMobilePlatform());
  1556. this.G || this.a.disableFetch();
  1557. this.i && this.a.collapseEmptyDivs(this.q);
  1558. if (this.f) {
  1559. this.c ? this.a.enableAsyncSingleRequest() : this.a.enableSingleRequest();
  1560. Xd(this);
  1561. a = this.getSlots();
  1562. for (var b = 0; b < a.length; ++b) Yd(this, a[b])
  1563. } else this.c &&
  1564. this.a.enableAsyncRendering();
  1565. this.F && this.a.disableInitialLoad();
  1566. Zd(this);
  1567. $d(this);
  1568. if (0 < this.d.length)
  1569. for (b = 0; b < this.d.length; ++b) this.p(this.d[b]);
  1570. if (0 < this.l.length)
  1571. for (b = 0; b < this.l.length; ++b) Sd(this, this.l[b])
  1572. };
  1573. X.prototype.w = function(a) {
  1574. this.c || (a.m = !1);
  1575. t.prototype.w.call(this, a)
  1576. };
  1577. X.prototype.p = function(a) {
  1578. if (U().b && !this.c) I(this.log, Vb(), this);
  1579. else if (this.a) Xd(this), Yd(this, a) && this.fillSlot(a);
  1580. else if (this.c || this.g && 0 == this.d.length) {
  1581. for (var b = !1, c = 0; c < this.d.length; ++c) a === this.d[c] && (b = !0);
  1582. b || (G(this.log, Wb(a.getName(), "GPT"), this, a), this.d.push(a))
  1583. } else I(this.log, Yb(a.getName()), this, a)
  1584. };
  1585. var Yd = function(a, b) {
  1586. if (a.a && null == a.a.addSlot(b)) return I(a.log, Zb(b.getName()), a, b), !1;
  1587. for (var c = b.getAttributeKeys(), d = 0; d < c.length; ++d) c[d] in Ud ? a.a.addAdSenseSlotAttribute(b, Ud[c[d]], String(b.get(c[d]))) : H(a.log, cc(String(c[d]), String(b.get(c[d])), b.getName()), a, b);
  1588. return !0
  1589. },
  1590. Xd = function(a) {
  1591. if (!a.I) {
  1592. a.I = !0;
  1593. for (var b = a.getAttributeKeys(), c = 0; c < b.length; ++c) b[c] in Ud ? a.a.addAdSensePageAttribute(Ud[b[c]], String(a.get(b[c]))) : H(a.log, $b(String(b[c]), String(a.get(b[c]))), a);
  1594. a.a.addAdSensePageAttribute("google_tag_info",
  1595. "v2");
  1596. v(a.j, function(a, b) {
  1597. if (n(a))
  1598. for (var c = 0; c < a.length; ++c) this.a.addAttribute(b, a[c])
  1599. }, a);
  1600. Oa(a.v, function(a) {
  1601. this.a.addPageCategoryExclusion(a)
  1602. }, a);
  1603. a.a.setPublisherProvidedId(a.B);
  1604. a.u && a.a.setLocation(a.u)
  1605. }
  1606. };
  1607. e = X.prototype;
  1608. e.setCookieOptions = function(a) {
  1609. try {
  1610. if (!s(a) || !Za(a)) return H(this.log, dc(String(a)), this), this;
  1611. this.D = a;
  1612. this.a && this.a.setCookieOptions(a);
  1613. return this
  1614. } catch (b) {
  1615. Q(17, b)
  1616. }
  1617. };
  1618. e.setTagForChildDirectedTreatment = function(a) {
  1619. try {
  1620. if (0 !== a && 1 !== a) return H(this.log, Bc(String(a)), this), this;
  1621. this.n = a;
  1622. this.a && this.a.setTagForChildDirectedTreatment(a);
  1623. return this
  1624. } catch (b) {
  1625. Q(18, b)
  1626. }
  1627. };
  1628. e.clearTagForChildDirectedTreatment = function() {
  1629. try {
  1630. return this.n = -1, this.a && this.a.setTagForChildDirectedTreatment(-1), this
  1631. } catch (a) {
  1632. Q(19, a)
  1633. }
  1634. };
  1635. e.setTargeting = function(a, b) {
  1636. try {
  1637. var c = null;
  1638. p(b) ? c = [b] : n(b) ? c = b : aa(b) && (c = Sa(b));
  1639. var d = c ? c.join() : String(b);
  1640. if (!p(a) || Fa(null == a ? "" : String(a)) || !c) return H(this.log, P("PubAdsService.setTargeting", arguments), this), this;
  1641. this.j[a] = c;
  1642. G(this.log, Ac(a, d, this.getName()), this);
  1643. if (this.a)
  1644. for (this.a.clearAttribute(a), d = 0; d < c.length; ++d) this.a.addAttribute(a, c[d]);
  1645. return this
  1646. } catch (f) {
  1647. Q(1, f)
  1648. }
  1649. };
  1650. e.clearTargeting = function(a) {
  1651. try {
  1652. if (!p(a) || Fa(null == a ? "" : String(a))) return H(this.log, P("PubAdsService.clearTargeting", arguments), this), this;
  1653. if (!this.j[a]) return H(this.log, xc(a, this.getName()), this), this;
  1654. delete this.j[a];
  1655. G(this.log, wc(a, this.getName()), this);
  1656. this.a && this.a.clearAttribute(a);
  1657. return this
  1658. } catch (b) {
  1659. Q(2, b)
  1660. }
  1661. };
  1662. e.setCategoryExclusion = function(a) {
  1663. try {
  1664. if (!p(a) || Fa(null == a ? "" : String(a))) return H(this.log, P("PubAdsService.setCategoryExclusion", arguments), this), this;
  1665. Ra(this.v, a);
  1666. G(this.log, yc(a), this);
  1667. this.a && this.a.addPageCategoryExclusion(a);
  1668. return this
  1669. } catch (b) {
  1670. Q(3, b)
  1671. }
  1672. };
  1673. e.clearCategoryExclusions = function() {
  1674. try {
  1675. return this.v = [], G(this.log, zc(), this), this.a && this.a.clearPageCategoryExclusions(), this
  1676. } catch (a) {
  1677. Q(4, a)
  1678. }
  1679. };
  1680. e.noFetch = function() {
  1681. this.a ? H(this.log, fc("noFetch", "pubads"), this) : this.G = !1
  1682. };
  1683. e.disableInitialLoad = function() {
  1684. try {
  1685. this.a ? H(this.log, fc("disableInitialLoad", "pubads"), this) : this.F = !0
  1686. } catch (a) {
  1687. Q(5, a)
  1688. }
  1689. };
  1690. e.enableSingleRequest = function() {
  1691. try {
  1692. return this.b && !this.f ? H(this.log, ec("enableSingleRequest"), this) : (G(this.log, hc("single request"), this), this.f = !0), this.f
  1693. } catch (a) {
  1694. Q(6, a)
  1695. }
  1696. };
  1697. e.enableAsyncRendering = function() {
  1698. try {
  1699. return this.b && !this.c ? H(this.log, ec("enableAsyncRendering"), this) : (G(this.log, hc("asynchronous rendering"), this), this.c = !0), this.c
  1700. } catch (a) {
  1701. Q(7, a)
  1702. }
  1703. };
  1704. e.enableSyncRendering = function() {
  1705. try {
  1706. if (this.b && this.c) H(this.log, ec("enableSyncRendering"), this);
  1707. else {
  1708. G(this.log, hc("synchronous rendering"), this);
  1709. this.c = !1;
  1710. for (var a = this.getSlots(), b = 0; b < a.length; ++b) a[b].m = !1
  1711. }
  1712. return !this.c
  1713. } catch (c) {
  1714. Q(8, c)
  1715. }
  1716. };
  1717. e.setCentering = function(a) {
  1718. try {
  1719. G(this.log, ic("centering", String(a)), this), this.H = a
  1720. } catch (b) {
  1721. Q(9, b)
  1722. }
  1723. };
  1724. e.setPublisherProvidedId = function(a) {
  1725. try {
  1726. return this.b ? H(this.log, gc("setPublisherProvidedId", a), this) : (G(this.log, ic("PPID", a), this), this.B = a), this
  1727. } catch (b) {
  1728. Q(20, b)
  1729. }
  1730. };
  1731. e.definePassback = function(a, b) {
  1732. try {
  1733. return !p(a) || 0 >= a.length || !Boolean(b) ? (I(this.log, P("PubAdsService.definePassback", arguments)), null) : new Rd(a, b, this)
  1734. } catch (c) {
  1735. Q(10, c)
  1736. }
  1737. };
  1738. var Sd = function(a, b) {
  1739. Wd(a);
  1740. a.a ? a.a.passback(b) : (G(a.log, Xb(b.getName(), "GPT"), a, b), a.l.push(b))
  1741. };
  1742. e = X.prototype;
  1743. e.refresh = function(a, b) {
  1744. try {
  1745. if (a && !n(a) || b && (!ba(b) || b.changeCorrelator && !q(b.changeCorrelator))) H(this.log, P("PubAdsService.refresh", arguments), this);
  1746. else {
  1747. var c = null;
  1748. if (a && (c = ae(this, a), !c.length)) {
  1749. H(this.log, P("PubAdsService.refresh", arguments), this);
  1750. return
  1751. }
  1752. if (this.a) {
  1753. G(this.log, oc(), this);
  1754. var d = !0;
  1755. k(b) && k(b.changeCorrelator) && (d = b.changeCorrelator);
  1756. this.a.refresh(c, {
  1757. changeCorrelator: d
  1758. })
  1759. } else this.f ? (G(this.log, nc(), this), c ? Ra(this.h, new Td(c, b)) : Ra(this.h, new Td(this.getSlots(), b))) : H(this.log,
  1760. kc(), this)
  1761. }
  1762. } catch (f) {
  1763. Q(11, f)
  1764. }
  1765. };
  1766. e.O = function(a, b) {
  1767. if (a && !n(a) || b.videoStreamCorrelator && !s(b.videoStreamCorrelator) || b.videoPodNumber && !s(b.videoPodNumber) || b.videoPodPosition && !s(b.videoPodPosition) || b.persistentRoadblocksOnly && !q(b.persistentRoadblocksOnly) || b.clearUnfilledSlots && !q(b.clearUnfilledSlots)) H(this.log, P("PubAdsService.internalVideoRefresh", arguments), this);
  1768. else if (this.a) {
  1769. var c = null;
  1770. if (a && (c = ae(this, a), !c.length)) {
  1771. I(this.log, jc("internalVideoRefresh"), this);
  1772. return
  1773. }
  1774. G(this.log, oc(), this);
  1775. this.a.refresh(c, b)
  1776. } else H(this.log,
  1777. kc(), this)
  1778. };
  1779. e.enableVideoAds = function() {
  1780. try {
  1781. this.s = !0, Zd(this)
  1782. } catch (a) {
  1783. Q(12, a)
  1784. }
  1785. };
  1786. e.setVideoContent = function(a, b) {
  1787. try {
  1788. this.s = !0, this.K = a, this.J = b, Zd(this)
  1789. } catch (c) {
  1790. Q(13, c)
  1791. }
  1792. };
  1793. e.getVideoContent = function() {
  1794. return this.a ? this.a.getVideoContentInformation() : null
  1795. };
  1796. var Zd = function(a) {
  1797. a.s && a.a && a.a.setVideoContentInformation(a.K, a.J)
  1798. },
  1799. $d = function(a) {
  1800. a.a && a.a.setCorrelator(-1 == a.k ? void 0 : a.k)
  1801. };
  1802. e = X.prototype;
  1803. e.getCorrelator = function() {
  1804. return 0 == this.getSlots().length ? "not_available" : this.a ? this.a.getCorrelator() : "not_loaded"
  1805. };
  1806. e.setCorrelator = function(a) {
  1807. var b = window;
  1808. if (b.top == b) return this;
  1809. if (!Za(a) || 0 === a) return H(this.log, Fc(String(a)), this), this;
  1810. this.k = a;
  1811. $d(this);
  1812. return this
  1813. };
  1814. e.updateCorrelator = function() {
  1815. try {
  1816. return this.k = -1, $d(this), this
  1817. } catch (a) {
  1818. Q(25, a)
  1819. }
  1820. };
  1821. e.getVideoStreamCorrelator = function() {
  1822. if (!this.a) return 0;
  1823. var a = this.a.getVideoStreamCorrelator();
  1824. return isNaN(a) ? 0 : a
  1825. };
  1826. e.isAdRequestFinished = function() {
  1827. return this.a ? this.a.isAdRequestFinished() : !1
  1828. };
  1829. e.isSlotAPersistentRoadblock = function(a) {
  1830. return this.a ? this.a.isSlotAPersistentRoadblock(a) : !1
  1831. };
  1832. e.collapseEmptyDivs = function(a) {
  1833. try {
  1834. return this.i ? H(this.log, uc(), this) : this.b ? H(this.log, ec("collapseEmptyDivs"), this) : (this.q = Boolean(a), G(this.log, tc(String(this.q)), this), this.i = !0), this.i
  1835. } catch (b) {
  1836. Q(14, b)
  1837. }
  1838. };
  1839. e.clear = function(a) {
  1840. try {
  1841. if (!this.a) return H(this.log, mc(), this), !1;
  1842. var b = null;
  1843. if (a && (b = ae(this, a), 0 == b.length)) return H(this.log, P("PubAdsService.clear", arguments), this), !1;
  1844. G(this.log, pc(), this);
  1845. return this.a.clearSlotContents(b)
  1846. } catch (c) {
  1847. Q(15, c)
  1848. }
  1849. };
  1850. e.clearNoRefreshState = function() {
  1851. this.a ? (G(this.log, qc(), this), this.a.clearNoRefreshState()) : H(this.log, lc(), this)
  1852. };
  1853. e.setLocation = function(a, b, c) {
  1854. try {
  1855. var d = "role:1 producer:12";
  1856. if (k(b)) {
  1857. if (!s(a)) return H(this.log, rc("Latitude")), this;
  1858. if (!s(b)) return H(this.log, rc("Longitude")), this;
  1859. d += " latlng{ latitude_e7: " + Math.round(1E7 * a) + " longitude_e7: " + Math.round(1E7 * b) + "}";
  1860. if (k(c)) {
  1861. if (isNaN(c)) return H(this.log, rc("Radius")), this;
  1862. d += " radius:" + Math.round(c)
  1863. }
  1864. } else {
  1865. if (50 < a.length) {
  1866. var f = a.substring(0, 50);
  1867. H(this.log, sc(String(a), "50", f));
  1868. a = f
  1869. }
  1870. d += ' loc:"' + a + '"'
  1871. }
  1872. var g;
  1873. if (Pd) g = h.btoa(d);
  1874. else {
  1875. f = d;
  1876. d = [];
  1877. for (b = a = 0; b < f.length; b++) {
  1878. for (var l =
  1879. f.charCodeAt(b); 255 < l;) d[a++] = l & 255, l >>= 8;
  1880. d[a++] = l
  1881. }
  1882. if (!aa(d)) throw Error("encodeByteArray takes an array as a parameter");
  1883. if (!Od)
  1884. for (Od = {}, l = 0; 65 > l; l++) Od[l] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(l);
  1885. l = Od;
  1886. f = [];
  1887. for (a = 0; a < d.length; a += 3) {
  1888. var r = d[a],
  1889. N = a + 1 < d.length,
  1890. A = N ? d[a + 1] : 0,
  1891. C = a + 2 < d.length,
  1892. D = C ? d[a + 2] : 0;
  1893. b = r >> 2;
  1894. c = (r & 3) << 4 | A >> 4;
  1895. var ac = (A & 15) << 2 | D >> 6,
  1896. bc = D & 63;
  1897. C || (bc = 64, N || (ac = 64));
  1898. f.push(l[b], l[c], l[ac], l[bc])
  1899. }
  1900. g = f.join("")
  1901. }
  1902. this.u = "a " + g;
  1903. return this
  1904. } catch (se) {
  1905. Q(16, se)
  1906. }
  1907. };
  1908. e.getVersion = function() {
  1909. return this.a ? this.a.getVersion() : void 0
  1910. };
  1911. e.forceExperiment = function(a) {
  1912. this.b ? H(this.log, gc("forceExperiment", a), this) : this.r.push(a)
  1913. };
  1914. var Y = function() {
  1915. try {
  1916. var a = U(),
  1917. b = vd(a, "publisher_ads");
  1918. if (!b) {
  1919. var c = b = new X;
  1920. a.a[c.getName()] = c
  1921. }
  1922. return b
  1923. } catch (d) {
  1924. Q(26, d)
  1925. }
  1926. },
  1927. ae = function(a, b) {
  1928. for (var c = [], d = 0; d < b.length; ++d) {
  1929. var f = b[d];
  1930. f instanceof Gd ? c.push(f) : H(a.log, vc(String(d)), a)
  1931. }
  1932. return c
  1933. };
  1934. x("pubads", Y);
  1935. var Z = function() {
  1936. t.call(this);
  1937. this.o = !0;
  1938. this.d = this.l = !1;
  1939. this.h = 0;
  1940. this.g = this.f = void 0;
  1941. this.n = this.k = !1;
  1942. this.i = {};
  1943. this.c = {};
  1944. this.a = !1;
  1945. this.j = {}
  1946. };
  1947. ha(Z);
  1948. e = Z.prototype;
  1949. e.set = function(a, b) {
  1950. p(a) && 0 < a.length ? (this.j[a] = b, G(this.log, Hb(a, String(b), this.getName()), this, null)) : H(this.log, Ib(String(a), String(b), this.getName()), this, null);
  1951. return this
  1952. };
  1953. e.get = function(a) {
  1954. return this.j[a]
  1955. };
  1956. e.getAttributeKeys = function() {
  1957. var a = [];
  1958. v(this.j, function(b, c) {
  1959. a.push(c)
  1960. });
  1961. return a
  1962. };
  1963. e.display = function(a, b, c, d) {
  1964. this.enable();
  1965. a = c ? W(a, b, c) : W(a, b);
  1966. a.addService(this);
  1967. d && a.setClickUrl(d);
  1968. Ld(a.getSlotId().getDomId())
  1969. };
  1970. e.A = function() {
  1971. if (this.o) {
  1972. if (!this.n) {
  1973. var a = document,
  1974. b = document.createElement("script");
  1975. b.async = !0;
  1976. b.type = "text/javascript";
  1977. b.src = be();
  1978. try {
  1979. var c = a.getElementsByTagName("script")[0];
  1980. G(this.log, Qb("GPT CompanionAds"), this);
  1981. this.n = !0;
  1982. c.parentNode && c.parentNode.insertBefore(b, c)
  1983. } catch (d) {
  1984. I(this.log, Rb("GPT CompanionAds"), this)
  1985. }
  1986. }
  1987. } else this.k || (h.document.write('<script type="text/javascript" src="' + $a(be()) + '">\x3c/script>'), this.k = !0)
  1988. };
  1989. e.enableSyncLoading = function() {
  1990. try {
  1991. this.o = !1
  1992. } catch (a) {
  1993. Q(402, a)
  1994. }
  1995. };
  1996. e.setRefreshUnfilledSlots = function(a) {
  1997. try {
  1998. q(a) && (this.l = a)
  1999. } catch (b) {
  2000. Q(403, b)
  2001. }
  2002. };
  2003. e.setClearUnfilledSlots = function(a) {
  2004. q(a) && (this.d = a)
  2005. };
  2006. e.notifyUnfilledSlots = function(a) {
  2007. if (this.l) ce(this, de(this, a));
  2008. else if (this.d) {
  2009. a = de(this, a);
  2010. var b = Y();
  2011. if (b.b) {
  2012. b.clear(a);
  2013. for (var c = 0; c < a.length; ++c) {
  2014. var d = new id(a[c], !0, null, b.getName());
  2015. jd(b, d)
  2016. }
  2017. } else I(this.log, Nb("PubAds", "clear"))
  2018. }
  2019. };
  2020. e.isRoadblockingSupported = function() {
  2021. var a = Y();
  2022. if (!a.b) return !1;
  2023. var a = a.getSlots(),
  2024. b = this.getSlots();
  2025. if (a.length != b.length) return !1;
  2026. for (var c = 0; c < b.length; ++c) {
  2027. for (var d = !1, f = 0; f < a.length; ++f)
  2028. if (b[c] === a[f]) {
  2029. d = !0;
  2030. break
  2031. }
  2032. if (!d) return !1
  2033. }
  2034. return !0
  2035. };
  2036. e.refreshAllSlots = function() {
  2037. this.l && ce(this, null)
  2038. };
  2039. e.setVideoSessionInfo = function(a, b, c, d, f, g, l) {
  2040. this.a = !1;
  2041. this.h = 0;
  2042. this.g = this.f = void 0;
  2043. this.h = a;
  2044. k(f) && (this.f = f);
  2045. k(g) && (this.g = g);
  2046. k(l) && (this.a = l)
  2047. };
  2048. e.setVideoSession = function(a, b, c, d) {
  2049. this.setVideoSessionInfo(a, "", "", "", b, c, d)
  2050. };
  2051. e.getDisplayAdsCorrelator = function() {
  2052. return Y().getCorrelator()
  2053. };
  2054. e.getVideoStreamCorrelator = function() {
  2055. return Y().getVideoStreamCorrelator()
  2056. };
  2057. var ce = function(a, b) {
  2058. var c = Y();
  2059. if (c.b) {
  2060. if (a.a) {
  2061. if (!a.isRoadblockingSupported()) {
  2062. H(a.log, Mb());
  2063. return
  2064. }
  2065. c.clearNoRefreshState();
  2066. c.clear()
  2067. }
  2068. var d = {
  2069. isVideoRefresh: !0
  2070. };
  2071. k(a.h) && (d.videoStreamCorrelator = a.h);
  2072. a.f && (d.videoPodNumber = a.f);
  2073. a.g && (d.videoPodPosition = a.g);
  2074. a.a && (d.persistentRoadblocksOnly = a.a);
  2075. a.d && (d.clearUnfilledSlots = a.d);
  2076. c.O(b, d)
  2077. } else I(a.log, Nb("PubAds", "refresh"))
  2078. };
  2079. Z.prototype.isSlotAPersistentRoadblock = function(a) {
  2080. var b = Y();
  2081. if (b.b && Kd(V(), a)) return b.isSlotAPersistentRoadblock(a);
  2082. I(this.log, Ob());
  2083. return !1
  2084. };
  2085. var de = function(a, b) {
  2086. for (var c = a.getSlotIdMap(), d = [], f = 0; f < b.length; ++f) {
  2087. var g = b[f];
  2088. g in c ? d.push(c[g]) : H(a.log, Pb(), a)
  2089. }
  2090. return d
  2091. };
  2092. Z.prototype.getName = function() {
  2093. return "companion_ads"
  2094. };
  2095. var be = function() {
  2096. return ab() + "//pagead2.googlesyndication.com/pagead/show_companion_ad.js"
  2097. };
  2098. Z.prototype.onImplementationLoaded = function() {
  2099. G(this.log, Sb("GPT CompanionAds"), this);
  2100. this.k = !0
  2101. };
  2102. var ee = function(a, b) {
  2103. var c = b && b.getSlotId().getId();
  2104. if (c && c in a.i && b.hasWrapperDiv() && a.b && !a.isSlotAPersistentRoadblock(b)) {
  2105. b.h = a.i[c];
  2106. var d = null;
  2107. a.c.hasOwnProperty(c) && (d = a.c[c], delete a.c[c]);
  2108. c = new id(b, !1, d, a.getName());
  2109. return Hd(b, c)
  2110. }
  2111. return !1
  2112. };
  2113. Z.prototype.p = function(a) {
  2114. ee(this, a)
  2115. };
  2116. Z.prototype.fillSlot = function(a, b, c, d) {
  2117. return Kd(V(), a) && p(b) && 0 < b.length ? (this.i[a.getSlotId().getId()] = b, null != c && null != d && (this.c[a.getSlotId().getId()] = [c, d]), ee(this, a)) : !1
  2118. };
  2119. Z.prototype.slotRenderEnded = function(a, b, c) {
  2120. var d = null;
  2121. null != b && null != c && (d = [b, c]);
  2122. a = new id(a, !1, d, this.getName());
  2123. jd(this, a)
  2124. };
  2125. x("companionAds", function() {
  2126. try {
  2127. var a = U(),
  2128. b = vd(a, "companion_ads");
  2129. if (!b) {
  2130. var c = b = new Z;
  2131. a.a[c.getName()] = c
  2132. }
  2133. return b
  2134. } catch (d) {
  2135. Q(401, d)
  2136. }
  2137. });
  2138. var $ = function() {
  2139. t.call(this);
  2140. this.a = {};
  2141. this.c = {}
  2142. };
  2143. ha($);
  2144. e = $.prototype;
  2145. e.getName = function() {
  2146. return "content"
  2147. };
  2148. e.set = function(a, b) {
  2149. p(a) && 0 < a.length ? (this.a[a] = b, G(this.log, Hb(a, String(b), this.getName()), this, null)) : H(this.log, Ib(String(a), String(b), this.getName()), this, null);
  2150. return this
  2151. };
  2152. e.get = function(a) {
  2153. return this.a[a]
  2154. };
  2155. e.getAttributeKeys = function() {
  2156. var a = [];
  2157. v(this.a, function(b, c) {
  2158. a.push(c)
  2159. });
  2160. return a
  2161. };
  2162. e.display = function(a, b, c, d) {
  2163. this.enable();
  2164. a = c ? W(a, b, c) : W(a, b);
  2165. a.addService(this);
  2166. d && a.setClickUrl(d);
  2167. Ld(a.getSlotId().getDomId())
  2168. };
  2169. var fe = function(a, b) {
  2170. var c = b && b.getSlotId().getId();
  2171. c in a.c && a.b && b.hasWrapperDiv() && !b.g && (b.h = a.c[c], c = new id(b, !1, null, a.getName()), Hd(b, c))
  2172. };
  2173. $.prototype.A = function() {
  2174. for (var a = this.getSlots(), b = 0; b < a.length; ++b) fe(this, a[b])
  2175. };
  2176. $.prototype.p = function(a) {
  2177. fe(this, a)
  2178. };
  2179. $.prototype.setContent = function(a, b) {
  2180. try {
  2181. Kd(V(), a) && p(b) && 0 < b.length && (this.c[a.getSlotId().getId()] = b, fe(this, a))
  2182. } catch (c) {
  2183. Q(602, c)
  2184. }
  2185. };
  2186. x("content", function() {
  2187. try {
  2188. var a = U(),
  2189. b = vd(a, "content");
  2190. if (!b) {
  2191. var c = b = new $;
  2192. a.a[c.getName()] = c
  2193. }
  2194. return b
  2195. } catch (d) {
  2196. Q(601, d)
  2197. }
  2198. });
  2199. var ge = function() {
  2200. var a = window,
  2201. b = document;
  2202. if (w()._pubconsole_disable_) return !1;
  2203. var c;
  2204. c = document.cookie.split("google_pubconsole=");
  2205. if (c = 2 == c.length ? c[1].split(";")[0] : "")
  2206. if (c = c.split("|"), 0 < c.length && ("1" == c[0] || "0" == c[0])) return !0;
  2207. U();
  2208. c = !1;
  2209. try {
  2210. c = a.top.document.URL === b.URL
  2211. } catch (d) {}
  2212. a = c ? b.URL : b.referrer;
  2213. return null !== Nd(a, "google_debug") || null !== Nd(a, "google_console") || null !== Nd(a, "google_force_console") || null !== Nd(a, "googfc")
  2214. },
  2215. he = function() {
  2216. if (ge()) {
  2217. var a = document,
  2218. b = a.createElement("script");
  2219. b.type =
  2220. "text/javascript";
  2221. b.src = ab() + "//publisherconsole.appspot.com/js/loader.js";
  2222. b.async = !0;
  2223. (a = a.getElementsByTagName("script")[0]) && a.parentNode && a.parentNode.insertBefore(b, a)
  2224. }
  2225. };
  2226. "complete" === document.readyState ? he() : Ha(window, he);
  2227. x("disablePublisherConsole", function() {
  2228. try {
  2229. w()._pubconsole_disable_ = !0
  2230. } catch (a) {
  2231. Q(2001, a)
  2232. }
  2233. });
  2234. var ie = function() {
  2235. this.a = [];
  2236. this.c = !1;
  2237. this.b = J()
  2238. };
  2239. ie.prototype.addSize = function(a, b) {
  2240. try {
  2241. var c;
  2242. if (!(c = !xd(a))) {
  2243. var d = b,
  2244. f;
  2245. if (!(f = xd(d))) {
  2246. var g;
  2247. if (n(d)) t: {
  2248. for (var l = d.length, r = p(d) ? d.split("") : d, d = 0; d < l; d++)
  2249. if (d in r && !xd.call(void 0, r[d])) {
  2250. g = !1;
  2251. break t
  2252. }
  2253. g = !0
  2254. } else g = !1;
  2255. f = g
  2256. }
  2257. c = !f
  2258. }
  2259. if (c) return this.c = !0, H(this.b, P("SizeMappingBuilder.addSize", arguments)), this;
  2260. this.a.push([a, b]);
  2261. return this
  2262. } catch (N) {
  2263. Q(1601, N)
  2264. }
  2265. };
  2266. ie.prototype.build = function() {
  2267. try {
  2268. if (this.c) return H(this.b, Fb()), null;
  2269. Ya(this.a);
  2270. return this.a
  2271. } catch (a) {
  2272. Q(1602, a)
  2273. }
  2274. };
  2275. var Xa = function(a, b) {
  2276. var c;
  2277. t: {
  2278. c = b[0];
  2279. for (var d = a[0], f = Va, g = Math.min(c.length, d.length), l = 0; l < g; l++) {
  2280. var r = f(c[l], d[l]);
  2281. if (0 != r) {
  2282. c = r;
  2283. break t
  2284. }
  2285. }
  2286. c = Va(c.length, d.length)
  2287. }
  2288. return c
  2289. };
  2290. x("sizeMapping", function() {
  2291. try {
  2292. return new ie
  2293. } catch (a) {
  2294. Q(1603, a)
  2295. }
  2296. });
  2297. var ke = function() {
  2298. var a = je;
  2299. try {
  2300. for (var b = null; b != a; b = a, a = a.parent) switch (a.location.protocol) {
  2301. case "https:":
  2302. return !0;
  2303. case "http:":
  2304. case "file:":
  2305. return !1
  2306. }
  2307. } catch (c) {}
  2308. return !0
  2309. };
  2310. var le = td(),
  2311. me = w().cmd;
  2312. if (!me || n(me)) {
  2313. var ne = w().cmd = new Oc;
  2314. me && 0 < me.length && ne.push.apply(ne, me)
  2315. }(function() {
  2316. Oa(document.getElementsByTagName("script"), function(a) {
  2317. var b = a.src;
  2318. b && (0 <= b.indexOf("/tag/js/gpt.js") || 0 <= b.indexOf("/tag/js/gpt_mobile.js")) && a.innerHTML && !a.googletag_executed && (a.googletag_executed = !0, eval(a.innerHTML))
  2319. })
  2320. })();
  2321. var oe = B("#34#");
  2322. if (Math.random() < oe) {
  2323. for (var pe = document, qe = pe.createElement("iframe"), je = pe ? pe.parentWindow || pe.defaultView : window, re = "//tpc.googlesyndication.com/safeframe/1-0-0/html/container.html", te, ue = je, ve = 0; ue != ue.parent;) ve++, ue = ue.parent;
  2324. (te = ve) && (re += "?n=" + te);
  2325. qe.src = (ke() ? "https:" : "http:") + re;
  2326. qe.style.visibility = "hidden";
  2327. qe.style.display = "none";
  2328. var we = pe.getElementsByTagName("script");
  2329. if (0 < we.length) {
  2330. var xe = we[we.length - 1];
  2331. xe.parentNode && xe.parentNode.insertBefore(qe, xe.nextSibling)
  2332. }
  2333. }
  2334. le.tick("gpt_load");
  2335. })()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement