oda-framework
Version:
10 lines (9 loc) • 282 kB
JavaScript
/**
* pptxjs.js
* Ver. : 1.21.1
* last update: 16/11/2021
* Author: meshesha , https://github.com/meshesha
* LICENSE: MIT
* url:https://pptx.js.org/
*/
!function (ta) { var t; ta.fn.pptxToHtml = function (t) { var h, d = ta(this), p = d.attr("id"), c = !1, g = new Array, T = null, b = 0, e = 1, w = ["he-IL", "ar-AE", "ar-SA", "dv-MV", "fa-IR", "ur-PK"], tl = 96 / 914400, R = 1.25, f = 0, u = 0, v = !1, A = !0, rl = {}, D = ta.extend(!0, { pptxFileUrl: "", fileInputId: "", slidesScale: "", slideMode: !1, slideType: "divs2slidesjs", revealjsPath: "", keyBoardShortCut: !1, mediaProcess: !0, jsZipV2: !1, themeProcess: !0, incSlide: { width: 0, height: 0 }, slideModeConfig: { first: 1, nav: !0, navTxtColor: "black", keyBoardShortCut: !0, showSlideNum: !0, showTotalSlideNum: !0, autoSlide: !0, randomAutoSlide: !1, loop: !1, background: !1, transition: "default", transitionTime: 1 }, revealjsConfig: {} }, t), A = D.themeProcess; if (ta("#" + p).prepend(ta("<div></div>").attr({ class: "slides-loadnig-msg", style: "display:block; width:100%; color:white; background-color: #ddd;" }).html(ta("<div></div>").attr({ class: "slides-loading-progress-bar", style: "width: 1%; background-color: #4775d1;" }).html("<span style='text-align: center;'>Loading... (1%)</span>"))), D.slideMode && (jQuery().divs2slides || jQuery.getScript("./js/divs2slides.js")), !1 !== D.jsZipV2 && (jQuery.getScript(D.jsZipV2), "yes" !== localStorage.getItem("isPPTXjsReLoaded") && (localStorage.setItem("isPPTXjsReLoaded", "yes"), location.reload())), D.keyBoardShortCut && ta(document).bind("keydown", function (a) { a.preventDefault(); a = a.keyCode; console.log(a, c), 116 != a || v || (v = !0, L(p, D)) }), FileReaderJS.setSync(!1), "" != D.pptxFileUrl) try { JSZipUtils.getBinaryContent(D.pptxFileUrl, function (a, t) { var r = new Blob([t]), t = D.pptxFileUrl.split("."); t.pop(), r.name = t[0], FileReaderJS.setupBlob(r, { readAsDefault: "ArrayBuffer", on: { load: function (a, t) { s(a.target.result) } } }) }) } catch (a) { console.error("file url error (" + D.pptxFileUrl + "0)"), ta(".slides-loadnig-msg").remove() } else ta(".slides-loadnig-msg").remove(); function s(a) { if (a.byteLength < 10) return console.error("file url error (" + D.pptxFileUrl + "0)"), void ta(".slides-loadnig-msg").remove(); for (var t, r, e = function (a) { var t = [], r = new Date; null !== a.file("docProps/thumbnail.jpeg") && (c = J(a.file("docProps/thumbnail.jpeg").asArrayBuffer()), t.push({ type: "pptx-thumb", data: c, slide_num: -1 })); var e = function (a) { for (var t = G(a, "[Content_Types].xml").Types.Override, r = [], e = [], s = 0; s < t.length; s++)switch (t[s].attrs.ContentType) { case "application/vnd.openxmlformats-officedocument.presentationml.slide+xml": r.push(t[s].attrs.PartName.substr(1)); break; case "application/vnd.openxmlformats-officedocument.presentationml.slideLayout+xml": e.push(t[s].attrs.PartName.substr(1)) }return { slides: r, slideLayouts: e } }(a), s = function (a) { var t = G(a, "docProps/app.xml").Properties.AppVersion; h = parseInt(t), console.log("create by Office PowerPoint app verssion: ", t); var r = G(a, "ppt/presentation.xml"), e = r["p:presentation"]["p:sldSz"].attrs, t = parseInt(e.cx), a = parseInt(e.cy), e = e.type; return console.log("Presentation size type: ", e), T = r["p:presentation"]["p:defaultTextStyle"], f = t * tl + D.incSlide.width | 0, u = a * tl + D.incSlide.height | 0, { width: f, height: u } }(a); tableStyles = G(a, "ppt/tableStyles.xml"), t.push({ type: "slideSize", data: s, slide_num: 0 }); for (var o = e.slides.length, i = 0; i < o; i++) { var n = e.slides[i], l = ""; l = -1 != n.indexOf("/") ? n.split("/").pop() : n; var d = ""; -1 != l.indexOf(".") && (p = l.split("."), p.pop(), d = p.join(".")); var p = 1; "" != d && -1 != l.indexOf("slide") && (p = Number(d.substr(5))); n = function (a, t, r, e) { var s = t.replace("slides/slide", "slides/_rels/slide") + ".rels", o = G(a, s).Relationships.Relationship, i = "", n = "", l = {}; if (o.constructor === Array) for (var d = 0; d < o.length; d++)switch (o[d].attrs.Type) { case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/slideLayout": i = o[d].attrs.Target.replace("../", "ppt/"); break; case "http://schemas.microsoft.com/office/2007/relationships/diagramDrawing": n = o[d].attrs.Target.replace("../", "ppt/"), l[o[d].attrs.Id] = { type: o[d].attrs.Type.replace("http://schemas.openxmlformats.org/officeDocument/2006/relationships/", ""), target: o[d].attrs.Target.replace("../", "ppt/") }; break; case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/notesSlide": case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/image": case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart": case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink": default: l[o[d].attrs.Id] = { type: o[d].attrs.Type.replace("http://schemas.openxmlformats.org/officeDocument/2006/relationships/", ""), target: o[d].attrs.Target.replace("../", "ppt/") } } else i = o.attrs.Target.replace("../", "ppt/"); var p = G(a, i), c = j(p), h = ul(p, ["p:sldLayout", "p:clrMapOvr", "a:overrideClrMapping"]); void 0 !== h && (slideLayoutClrOvride = h.attrs); var f = i.replace("slideLayouts/slideLayout", "slideLayouts/_rels/slideLayout") + ".rels", u = G(a, f); o = u.Relationships.Relationship; var v = "", L = {}; if (o.constructor === Array) for (d = 0; d < o.length; d++)"http://schemas.openxmlformats.org/officeDocument/2006/relationships/slideMaster" === o[d].attrs.Type ? v = o[d].attrs.Target.replace("../", "ppt/") : L[o[d].attrs.Id] = { type: o[d].attrs.Type.replace("http://schemas.openxmlformats.org/officeDocument/2006/relationships/", ""), target: o[d].attrs.Target.replace("../", "ppt/") }; else v = o.attrs.Target.replace("../", "ppt/"); s = G(a, v), h = ul(s, ["p:sldMaster", "p:txStyles"]), f = j(s), u = v.replace("slideMasters/slideMaster", "slideMasters/_rels/slideMaster") + ".rels", u = G(a, u); o = u.Relationships.Relationship; var g = "", b = {}; if (o.constructor === Array) for (d = 0; d < o.length; d++)"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme" === o[d].attrs.Type ? g = o[d].attrs.Target.replace("../", "ppt/") : b[o[d].attrs.Id] = { type: o[d].attrs.Type.replace("http://schemas.openxmlformats.org/officeDocument/2006/relationships/", ""), target: o[d].attrs.Target.replace("../", "ppt/") }; else g = o.attrs.Target.replace("../", "ppt/"); var m = {}; if (void 0 !== g) { var y = g.split("/").pop(), k = g.replace(y, "_rels/" + y) + ".rels", M = G(a, g), x = G(a, k); if (null !== x) if (void 0 !== (w = x.Relationships.Relationship)) { g = ""; if (w.constructor === Array) for (d = 0; d < w.length; d++)m[w[d].attrs.Id] = { type: w[d].attrs.Type.replace("http://schemas.openxmlformats.org/officeDocument/2006/relationships/", ""), target: w[d].attrs.Target.replace("../", "ppt/") }; else m[w.attrs.Id] = { type: w.attrs.Type.replace("http://schemas.openxmlformats.org/officeDocument/2006/relationships/", ""), target: w.attrs.Target.replace("../", "ppt/") } } } var P = {}, y = {}; if (void 0 !== n) { k = n.split("/").pop(), x = n.replace(k, "_rels/" + k) + ".rels"; null != (y = G(a, n)) && "" != y && (k = (k = JSON.stringify(y)).replace(/dsp:/g, "p:"), y = JSON.parse(k)); x = G(a, x); if (null !== x) { var w = x.Relationships.Relationship, g = ""; if (w.constructor === Array) for (d = 0; d < w.length; d++)P[w[d].attrs.Id] = { type: w[d].attrs.Type.replace("http://schemas.openxmlformats.org/officeDocument/2006/relationships/", ""), target: w[d].attrs.Target.replace("../", "ppt/") }; else P[w.attrs.Id] = { type: w.attrs.Type.replace("http://schemas.openxmlformats.org/officeDocument/2006/relationships/", ""), target: w.attrs.Target.replace("../", "ppt/") } } } var t = G(a, t, !0), I = t["p:sld"]["p:cSld"]["p:spTree"], _ = { zip: a, slideLayoutContent: p, slideLayoutTables: c, slideMasterContent: s, slideMasterTables: f, slideContent: t, slideResObj: l, slideMasterTextStyles: h, layoutResObj: L, masterResObj: b, themeContent: M, themeResObj: m, digramFileContent: y, diagramResObj: P, defaultTextStyle: T }, M = ""; !0 === A && (M = function (a, t, r) { a.slideContent; var e = a.slideLayoutContent, s = a.slideMasterContent, o = ul(e, ["p:sldLayout", "p:cSld", "p:spTree"]), i = ul(s, ["p:sldMaster", "p:cSld", "p:spTree"]), s = ul(e, ["p:sldLayout", "attrs", "showMasterSp"]), e = O(a, r), n = "<div class='slide-background-" + r + "' style='width:" + t.width + "px; height:" + t.height + "px;" + e + "'>"; if (void 0 !== o) for (var l in o) if (o[l].constructor === Array) for (var d = 0; d < o[l].length; d++)"pic" != ul(o[l][d], ["p:nvSpPr", "p:nvPr", "p:ph", "attrs", "type"]) && (n += z(l, o[l][d], o, a, "slideLayoutBg")); else "pic" != ul(o[l], ["p:nvSpPr", "p:nvPr", "p:ph", "attrs", "type"]) && (n += z(l, o[l], o, a, "slideLayoutBg")); if (void 0 !== i && ("1" == s || void 0 === s)) for (var l in i) if (i[l].constructor === Array) for (d = 0; d < i[l].length; d++) { ul(i[l][d], ["p:nvSpPr", "p:nvPr", "p:ph", "attrs", "type"]); n += z(l, i[l][d], i, a, "slideMasterBg") } else { ul(i[l], ["p:nvSpPr", "p:nvPr", "p:ph", "attrs", "type"]); n += z(l, i[l], i, a, "slideMasterBg") } return n }(_, e, r)); var C, y = ""; "colorsAndImageOnly" == A && (y = O(_, r)); { var S; S = D.slideMode && "revealjs" == D.slideType ? "<section class='slide' style='width:" + e.width + "px; height:" + e.height + "px;" + y + "'>" : "<div class='slide' style='width:" + e.width + "px; height:" + e.height + "px;" + y + "'>" } for (C in S += M, I) if (I[C].constructor === Array) for (d = 0; d < I[C].length; d++)S += z(C, I[C][d], I, _, "slide"); else S += z(C, I[C], I, _, "slide"); return D.slideMode && "revealjs" == D.slideType ? S + "</div></section>" : S + "</div></div>" }(a, n, i, s); t.push({ type: "slide", data: n, slide_num: p, file_name: d }), t.push({ type: "progress-update", slide_num: o + i + 1, data: 100 * (i + 1) / o }) } t.sort(function (a, t) { return a.slide_num - t.slide_num }), t.push({ type: "globalCSS", data: function () { var a, t = ""; for (a in rl) t += " ." + rl[a].name + (rl[a].suffix || "") + "{" + rl[a].text + "}\n"; D.slideMode && "divs2slidesjs" == D.slideType && (t += "#all_slides_warpper{margin-right: auto;margin-left: auto;padding-top:10px;width: " + f + "px;}\n"); return t }() }); var c = new Date; return t.push({ type: "ExecutionTime", data: c - r }), t }((new JSZip).load(a)), s = 0; s < e.length; s++)switch (e[s].type) { case "slide": d.append(e[s].data); break; case "pptx-thumb": break; case "slideSize": f = e[s].data.width, u = e[s].data.height; break; case "globalCSS": d.append("<style>" + e[s].data + "</style>"); break; case "ExecutionTime": !function (a) { for (var t = 0; t < a.length; t++)!function (a) { var t = a.chartID, r = a.chartType, e = a.chartData, s = [], o = null; switch (r) { case "lineChart": s = e, (o = nv.models.lineChart().useInteractiveGuideline(!0)).xAxis.tickFormat(function (a) { return e[0].xlabels[a] || a }); break; case "barChart": s = e, (o = nv.models.multiBarChart()).xAxis.tickFormat(function (a) { return e[0].xlabels[a] || a }); break; case "pieChart": case "pie3DChart": 0 < e.length && (s = e[0].values), o = nv.models.pieChart(); break; case "areaChart": s = e, (o = nv.models.stackedAreaChart().clipEdge(!0).useInteractiveGuideline(!0)).xAxis.tickFormat(function (a) { return e[0].xlabels[a] || a }); break; case "scatterChart": for (var i = 0; i < e.length; i++) { for (var n = [], l = 0; l < e[i].length; l++)n.push({ x: l, y: e[i][l] }); s.push({ key: "data" + (i + 1), values: n }) } (o = nv.models.scatterChart().showDistX(!0).showDistY(!0).color(d3.scale.category10().range())).xAxis.axisLabel("X").tickFormat(d3.format(".02f")), o.yAxis.axisLabel("Y").tickFormat(d3.format(".02f")) }null !== o && (d3.select("#" + t).append("svg").datum(s).transition().duration(500).call(o), nv.utils.windowResize(o.update), c = !0) }(a[t].data) }(g), Y(ta(".block")), Y(ta("table td")), c = !0, D.slideMode && !v ? (v = !0, L(p, D)) : D.slideMode || ta(".slides-loadnig-msg").remove(); break; case "progress-update": t = e[s].data, r = void 0, (r = ta(".slides-loading-progress-bar")).width(t + "%"), r.html("<span style='text-align: center;'>Loading...(" + t + "%)</span>") }(!D.slideMode || D.slideMode && "revealjs" == D.slideType) && (null === document.getElementById("all_slides_warpper") && ta("#" + p + " .slide").wrapAll("<div id='all_slides_warpper' class='slides'></div>"), D.slideMode && "revealjs" == D.slideType && ta("#" + p).addClass("reveal")); var o = D.slidesScale, i = ""; "" != o && (l = parseInt(o) / 100, D.slideMode && "revealjs" != D.slideType && (i = "transform:scale(" + l + "); transform-origin:top")); var n = ta("#" + p + " .slide").height(), a = ta("#" + p + " .slide").length, l = "" != o ? l : 1; ta("#all_slides_warpper").attr({ style: i + ";height: " + a * n * l + "px" }) } function L(e, s) { var o, a; "" == s.slideType || "divs2slidesjs" == s.slideType ? (o = ta("#" + e + " .slide").height(), ta("#" + e + " .slide").hide(), setTimeout(function () { var a = s.slideModeConfig; ta(".slides-loadnig-msg").remove(), ta("#" + e).divs2slides({ first: a.first, nav: a.nav, showPlayPauseBtn: s.showPlayPauseBtn, navTxtColor: a.navTxtColor, keyBoardShortCut: a.keyBoardShortCut, showSlideNum: a.showSlideNum, showTotalSlideNum: a.showTotalSlideNum, autoSlide: a.autoSlide, randomAutoSlide: a.randomAutoSlide, loop: a.loop, background: a.background, transition: a.transition, transitionTime: a.transitionTime }); var t = s.slidesScale, a = ""; "" != t && (a = "transform:scale(" + (r = parseInt(t) / 100) + "); transform-origin:top"); var r = "" != t ? r : 1; ta("#all_slides_warpper").attr({ style: a + ";height: " + +o * r + "px" }) }, 1500)) : "revealjs" == s.slideType && (ta(".slides-loadnig-msg").remove(), a = (a = "") != s.revealjsPath ? s.revealjsPath : "./revealjs/reveal.js", ta.getScript(a, function (a, t) { "success" == t && Reveal.initialize(s.revealjsConfig) })) } function G(a, t, r) { try { var e = a.file(t).asText(); r && h <= 12 && (e = e.replace(/<!\[CDATA\[(.*?)\]\]>/g, "$1")); e = aa(e, { simplify: 1 }); return void 0 !== e["?xml"] ? e["?xml"] : e } catch (a) { return null } } function j(a) { var t, r = a[Object.keys(a)[0]]["p:cSld"]["p:spTree"], e = {}, s = {}, o = {}; for (t in r) if ("p:nvGrpSpPr" != t && "p:grpSpPr" != t) { var i = r[t]; if (i.constructor === Array) for (var n = 0; n < i.length; n++) { var l = ul(c = i[n]["p:nvSpPr"], ["p:cNvPr", "attrs", "id"]), d = ul(c, ["p:nvPr", "p:ph", "attrs", "idx"]), p = ul(c, ["p:nvPr", "p:ph", "attrs", "type"]); void 0 !== l && (e[l] = i[n]), void 0 !== d && (s[d] = i[n]), void 0 !== p && (o[p] = i[n]) } else { var c, l = ul(c = i["p:nvSpPr"], ["p:cNvPr", "attrs", "id"]), d = ul(c, ["p:nvPr", "p:ph", "attrs", "idx"]), p = ul(c, ["p:nvPr", "p:ph", "attrs", "type"]); void 0 !== l && (e[l] = i), void 0 !== d && (s[d] = i), void 0 !== p && (o[p] = i) } } return { idTable: e, idxTable: s, typeTable: o } } function z(a, t, r, e, s, o) { var i, n, l, d, p, c, h, f, u, v, L = ""; switch (a) { case "p:sp": L = y(t, r, e, s, o); break; case "p:cxnSp": n = r, l = e, d = s, p = o, c = (i = t)["p:nvCxnSpPr"]["p:cNvPr"].attrs.id, h = i["p:nvCxnSpPr"]["p:cNvPr"].attrs.name, f = void 0 === i["p:nvCxnSpPr"]["p:nvPr"]["p:ph"] ? void 0 : i["p:nvSpPr"]["p:nvPr"]["p:ph"].attrs.idx, u = void 0 === i["p:nvCxnSpPr"]["p:nvPr"]["p:ph"] ? void 0 : i["p:nvSpPr"]["p:nvPr"]["p:ph"].attrs.type, v = i.attrs.order, L = k(i, n, void 0, void 0, c, h, f, u, v, l, void 0, p, d); break; case "p:pic": L = function (a, t, r) { var e = "", s = !1, o = a.attrs.order, i = a["p:blipFill"]["a:blip"].attrs["r:embed"]; y = "slideMasterBg" == r ? t.masterResObj : "slideLayoutBg" == r ? t.layoutResObj : t.slideResObj; var n = y[i].target, l = K(n).toLowerCase(), d = t.zip, p = d.file(n).asArrayBuffer(), c = "", h = a["p:spPr"]["a:xfrm"]; void 0 === h && (L = ul(a, ["p:nvPicPr", "p:nvPr", "p:ph", "attrs", "idx"]), ul(a, ["p:nvPicPr", "p:nvPr", "p:ph", "attrs", "type"]), void 0 !== L && (h = ul(t.slideLayoutTables, ["idxTable", L, "p:spPr", "a:xfrm"]))); var f = 0, r = ul(a, ["p:spPr", "a:xfrm", "attrs", "rot"]); void 0 !== r && (f = vl(r)); var u, v, i = ul(a, ["p:nvPicPr", "p:nvPr", "a:videoFile"]), n = !1, t = !1, L = D.mediaProcess; void 0 !== i & L && (r = i.attrs["r:link"], function (a) { return /^(https?|ftp):\/\/([a-zA-Z0-9.-]+(:[a-zA-Z0-9.&%$-]+)*@)*((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]?)(\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}|([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(:[0-9]+)*(\/($|[a-zA-Z0-9.,?'\\+&%$#=~_-]+))*$/.test(a) }(u = y[r].target) ? (u = Ll(u), s = n = t = !0) : "mp4" != (r = K(u).toLowerCase()) && "webm" != r && "ogg" != r || (b = d.file(u).asArrayBuffer(), m = X(r), k = new Blob([b], { type: m }), v = URL.createObjectURL(k), s = n = !0)); var g, b = ul(a, ["p:nvPicPr", "p:nvPr", "a:audioFile"]), m = !1; { var y, k, M; void 0 !== b & L && (k = b.attrs["r:link"], y = y[k].target, "mp3" != (k = K(y).toLowerCase()) && "wav" != k && "ogg" != k || (k = d.file(y).asArrayBuffer(), M = new Blob([k]), g = URL.createObjectURL(M), d = 20 * parseInt(h["a:ext"].attrs.cx), y = h["a:ext"].attrs.cy, k = parseInt(h["a:off"].attrs.x) / 2.5, M = h["a:off"].attrs.y, M = { "a:ext": { attrs: { cx: d, cy: y } }, "a:off": { attrs: { x: k, y: M } } }, s = n = m = !0)) } c = X(l), e = "<div class='block content' style='" + il(L && m ? M : h, a, void 0, void 0) + nl(L && m ? M : h, void 0, void 0) + " z-index: " + o + ";transform: rotate(" + f + "deg);'>", void 0 === i && void 0 === b || !L || !n ? e += "<img src='data:" + c + ";base64," + J(p) + "' style='width: 100%; height: 100%'/>" : (void 0 !== i || void 0 !== b) && L && n && (void 0 === i || t ? void 0 !== i && t && (e += "<iframe src='" + u + "' controls style='width: 100%; height: 100%'></iframe >") : e += "<video src='" + v + "' controls style='width: 100%; height: 100%'>Your browser does not support the video tag.</video>", void 0 !== b && (e += '<audio id="audio_player" controls ><source src="' + g + '"></audio>')); !n && s && (e += "<span style='color:red;font-size:40px;position: absolute;'>This media file Not supported by HTML5</span>"); void 0 === i && void 0 === b || L || !n || console.log("Founded supported media file but media process disabled (mediaProcess=false)"); return e += "</div>" }(t, e, s); break; case "p:graphicFrame": L = function (a, t, r, e) { var s = ""; switch (ul(a, ["a:graphic", "a:graphicData", "attrs", "uri"])) { case "http://schemas.openxmlformats.org/drawingml/2006/table": s = function (a, t) { var r = a.attrs.order, e = ul(a, ["a:graphic", "a:graphicData", "a:tbl"]), s = ul(a, ["p:xfrm"]), o = ul(a, ["a:graphic", "a:graphicData", "a:tbl", "a:tblPr"]), i = ul(a, ["a:graphic", "a:graphicData", "a:tbl", "a:tblGrid", "a:gridCol"]), n = ""; void 0 !== o && (u = o.attrs.rtl, n = 1 == u ? "dir=rtl" : "dir=ltr"); var l, d = o.attrs.firstRow, p = o.attrs.firstCol, c = o.attrs.lastRow, h = o.attrs.lastCol, f = o.attrs.bandRow, u = o.attrs.bandCol, v = { isFrstRowAttr: void 0 !== d && "1" == d ? 1 : 0, isFrstColAttr: void 0 !== p && "1" == p ? 1 : 0, isLstRowAttr: void 0 !== c && "1" == c ? 1 : 0, isLstColAttr: void 0 !== h && "1" == h ? 1 : 0, isBandRowAttr: void 0 !== f && "1" == f ? 1 : 0, isBandColAttr: void 0 !== u && "1" == u ? 1 : 0 }, L = o["a:tableStyleId"]; if (void 0 !== L) { var g = tableStyles["a:tblStyleLst"]["a:tblStyle"]; if (void 0 !== g) if (g.constructor === Array) for (var b = 0; b < g.length; b++)g[b].attrs.styleId == L && (l = g[b]); else g.attrs.styleId == L && (l = g) } void 0 !== l && (l.tblStylAttrObj = v, t.thisTbiStyle = l); f = ul(l, ["a:wholeTbl", "a:tcStyle"]), u = ul(f, ["a:tcBdr"]), o = ""; void 0 !== u && (o = Q(u, t)); f = "", u = ul(l, ["a:tblBg", "a:fillRef"]); void 0 !== u && (f = fl(u, void 0, void 0, t)); void 0 === u && (u = ul(l, ["a:wholeTbl", "a:tcStyle", "a:fill", "a:solidFill"]), f = fl(u, void 0, void 0, t)); "" !== f && (f = "background-color: #" + f + ";"); var m = "<table " + n + " style='border-collapse: collapse;" + il(s, a, void 0, void 0) + nl(s, void 0, void 0) + " z-index: " + r + ";" + o + ";" + f + "'>", y = e["a:tr"]; y.constructor !== Array && (y = [y]); for (var k, M = [], x = 0; x < y.length; x++) { var P = y[x].attrs.h, w = 0, I = ""; void 0 !== P && (w = parseInt(P) * tl, I += "height:" + w + "px;"); var _, C, S, T, A, D, G, j = "", R = "", P = "", w = ""; void 0 !== l && void 0 !== l["a:wholeTbl"] && (void 0 !== (_ = ul(l, ["a:wholeTbl", "a:tcStyle", "a:fill", "a:solidFill"])) && void 0 !== (C = fl(_, void 0, void 0, t)) && (j = C), void 0 !== (A = ul(l, ["a:wholeTbl", "a:tcTxStyle"])) && (void 0 !== (G = fl(A, void 0, void 0, t)) && (P = G), "" != (G = "on" == ul(A, ["attrs", "b"]) ? "bold" : "") && (w = G))), 0 == x && 1 == v.isFrstRowAttr && void 0 !== l ? (void 0 !== (_ = ul(l, ["a:firstRow", "a:tcStyle", "a:fill", "a:solidFill"])) && void 0 !== (C = fl(_, void 0, void 0, t)) && (j = C), void 0 !== (S = ul(l, ["a:firstRow", "a:tcStyle", "a:tcBdr"])) && "" != (T = Q(S, t)) && (R = T), void 0 !== (A = ul(l, ["a:firstRow", "a:tcTxStyle"])) && (void 0 !== (D = fl(A, void 0, void 0, t)) && (P = D), "" !== (G = "on" == ul(A, ["attrs", "b"]) ? "bold" : "") && (w = G))) : 0 < x && 1 == v.isBandRowAttr && void 0 !== l && (j = "", R = void 0, x % 2 == 0 && void 0 !== l["a:band2H"] && (void 0 !== (_ = ul(l, ["a:band2H", "a:tcStyle", "a:fill", "a:solidFill"])) && "" !== (C = fl(_, void 0, void 0, t)) && (j = C), void 0 !== (S = ul(l, ["a:band2H", "a:tcStyle", "a:tcBdr"])) && "" != (T = Q(S, t)) && (R = T), void 0 !== (A = ul(l, ["a:band2H", "a:tcTxStyle"])) && void 0 !== (D = fl(A, void 0, void 0, t)) && (P = D), "" !== (G = "on" == ul(A, ["attrs", "b"]) ? "bold" : "") && (w = G)), x % 2 != 0 && void 0 !== l["a:band1H"] && (void 0 !== (_ = ul(l, ["a:band1H", "a:tcStyle", "a:fill", "a:solidFill"])) && void 0 !== (C = fl(_, void 0, void 0, t)) && (j = C), void 0 !== (S = ul(l, ["a:band1H", "a:tcStyle", "a:tcBdr"])) && "" != (T = Q(S, t)) && (R = T), void 0 !== (A = ul(l, ["a:band1H", "a:tcTxStyle"])) && (void 0 !== (D = fl(A, void 0, void 0, t)) && (P = D), "" != (G = "on" == ul(A, ["attrs", "b"]) ? "bold" : "") && (w = G)))), x == y.length - 1 && 1 == v.isLstRowAttr && void 0 !== l && (void 0 !== (_ = ul(l, ["a:lastRow", "a:tcStyle", "a:fill", "a:solidFill"])) && void 0 !== (C = fl(_, void 0, void 0, t)) && (j = C), void 0 !== (S = ul(l, ["a:lastRow", "a:tcStyle", "a:tcBdr"])) && "" != (T = Q(S, t)) && (R = T), void 0 !== (A = ul(l, ["a:lastRow", "a:tcTxStyle"])) && (void 0 !== (D = fl(A, void 0, void 0, t)) && (P = D), "" !== (G = "on" == ul(A, ["attrs", "b"]) ? "bold" : "") && (w = G))), I += void 0 !== R ? R : "", I += void 0 !== P ? " color: #" + P + ";" : "", I += "" != w ? " font-weight:" + w + ";" : "", void 0 !== j && "" != j && (I += "background-color: #" + j + ";"), m += "<tr style='" + I + "'>"; var z = y[x]["a:tc"]; if (void 0 !== z) if (z.constructor === Array) { var B = 0; 0 == M.length && (M = Array.apply(null, Array(z.length)).map(function () { return 0 })); for (var F, N = 0; B < z.length;)0 == M[B] && 0 == N ? (0 == B && 1 == v.isFrstColAttr ? (k = "a:firstCol", 1 == v.isLstRowAttr && x == y.length - 1 && void 0 !== ul(l, ["a:seCell"]) ? k = "a:seCell" : 1 == v.isFrstRowAttr && 0 == x && void 0 !== ul(l, ["a:neCell"]) && (k = "a:neCell")) : !(0 < B && 1 == v.isBandColAttr) || 1 == v.isFrstColAttr && 0 == x || 1 == v.isLstRowAttr && x == y.length - 1 || B == z.length - 1 || B % 2 == 0 || void 0 === ul(l, ["a:band2V"]) && void 0 === ul(l, ["a:band1V"]) || (k = "a:band2V"), B == z.length - 1 && 1 == v.isLstColAttr && (k = "a:lastCol", 1 == v.isLstRowAttr && x == y.length - 1 && void 0 !== ul(l, ["a:swCell"]) ? k = "a:swCell" : 1 == v.isFrstRowAttr && 0 == x && void 0 !== ul(l, ["a:nwCell"]) && (k = "a:nwCell")), E = (O = V(z[B], i, 0, B, l, k, t))[0], H = O[1], q = O[2], U = O[3], F = O[4], void 0 !== U ? (M[B] = parseInt(U) - 1, m += "<td class='" + q + "' data-row='" + x + "," + B + "' rowspan ='" + parseInt(U) + "' style='" + H + "'>" + E + "</td>") : void 0 !== F ? (m += "<td class='" + q + "' data-row='" + x + "," + B + "' colspan = '" + parseInt(F) + "' style='" + H + "'>" + E + "</td>", N = parseInt(F) - 1) : m += "<td class='" + q + "' data-row='" + x + "," + B + "' style = '" + H + "'>" + E + "</td>") : (0 != M[B] && --M[B], 0 != N && N--), B++ } else { 1 == v.isFrstColAttr && 1 != v.isLstRowAttr ? k = "a:firstCol" : 1 != v.isBandColAttr || 1 == v.isLstRowAttr || void 0 === ul(l, ["a:band2V"]) && void 0 === ul(l, ["a:band1V"]) || (k = "a:band2V"), 1 == v.isLstColAttr && 1 != v.isLstRowAttr && (k = "a:lastCol"); var O, E = (O = V(z, i, 0, void 0, l, k, t))[0], H = O[1], q = O[2], U = O[3]; m += void 0 !== U ? "<td class='" + q + "' rowspan='" + parseInt(U) + "' style = '" + H + "'>" + E + "</td>" : "<td class='" + q + "' style='" + H + "'>" + E + "</td>" } m += "</tr>" } return m }(a, t); break; case "http://schemas.openxmlformats.org/drawingml/2006/chart": s = function (a, t) { var r, e = a.attrs.order, s = ul(a, ["p:xfrm"]), e = "<div id='chart" + b + "' class='block content' style='" + il(s, a, void 0, void 0) + nl(s, void 0, void 0) + " z-index: " + e + ";'></div>", a = a["a:graphic"]["a:graphicData"]["c:chart"].attrs["r:id"], a = t.slideResObj[a].target, o = ul(G(t.zip, a), ["c:chartSpace", "c:chart", "c:plotArea"]), i = null; for (r in o) switch (r) { case "c:lineChart": i = { type: "createChart", data: { chartID: "chart" + b, chartType: "lineChart", chartData: U(o[r]["c:ser"]) } }; break; case "c:barChart": i = { type: "createChart", data: { chartID: "chart" + b, chartType: "barChart", chartData: U(o[r]["c:ser"]) } }; break; case "c:pieChart": i = { type: "createChart", data: { chartID: "chart" + b, chartType: "pieChart", chartData: U(o[r]["c:ser"]) } }; break; case "c:pie3DChart": i = { type: "createChart", data: { chartID: "chart" + b, chartType: "pie3DChart", chartData: U(o[r]["c:ser"]) } }; break; case "c:areaChart": i = { type: "createChart", data: { chartID: "chart" + b, chartType: "areaChart", chartData: U(o[r]["c:ser"]) } }; break; case "c:scatterChart": i = { type: "createChart", data: { chartID: "chart" + b, chartType: "scatterChart", chartData: U(o[r]["c:ser"]) } } }null !== i && g.push(i); return b++, e }(a, t); break; case "http://schemas.openxmlformats.org/drawingml/2006/diagram": s = function (a, t, r) { a.attrs.order; var e = t.zip, s = ul(a, ["p:xfrm"]), o = ul(a, ["a:graphic", "a:graphicData", "dgm:relIds", "attrs"]), i = o["r:cs"], n = o["r:dm"], l = o["r:lo"], o = o["r:qs"], i = t.slideResObj[i].target, n = t.slideResObj[n].target, l = t.slideResObj[l].target; dgmQuickStyleFileName = t.slideResObj[o].target; G(e, i), G(e, n), G(e, l), G(e, dgmQuickStyleFileName); var d = ul(t.digramFileContent, ["p:drawing", "p:spTree", "p:sp"]), p = ""; if (void 0 !== d) for (var c = d.length, h = 0; h < c; h++) { var f = d[h]; p += y(f, a, t, "diagramBg", r) } return "<div class='block diagram-content' style='" + il(s, a, void 0, void 0, r) + nl(s, void 0, void 0) + "'>" + p + "</div>" }(a, t, e); break; case "http://schemas.openxmlformats.org/presentationml/2006/ole": var o = ul(a, ["a:graphic", "a:graphicData", "mc:AlternateContent", "mc:Fallback", "p:oleObj"]); void 0 === o && (o = ul(a, ["a:graphic", "a:graphicData", "p:oleObj"])), void 0 !== o && (s = m(o, t, r)) }return s }(t, e, s, o); break; case "p:grpSp": L = m(t, e, s); break; case "mc:AlternateContent": L = m(ul(t, ["mc:Fallback"]), e, s) }return L } function m(a, t, r) { var e, s, o, i, n, l, d, p, c, h = ul(a, ["p:grpSpPr", "a:xfrm"]); void 0 !== h && (e = parseInt(h["a:off"].attrs.x) * tl, s = parseInt(h["a:off"].attrs.y) * tl, l = parseInt(h["a:chOff"].attrs.x) * tl, n = parseInt(h["a:chOff"].attrs.y) * tl, o = parseInt(h["a:ext"].attrs.cx) * tl, f = parseInt(h["a:ext"].attrs.cy) * tl, d = parseInt(h["a:chExt"].attrs.cx) * tl, p = parseInt(h["a:chExt"].attrs.cy) * tl, h = parseInt(h.attrs.rot), i = "", n = s - n, l = e - l, d = o - d, p = f - p, c = "group", isNaN(h) || (i += "transform: rotate(" + (h = vl(h)) + "deg) ; transform-origin: center;", 0 != h && (n = s, l = e, d = o, p = f, c = "group-rotate"))); var f = ""; void 0 !== i && "" != i && (f += i), void 0 !== n && (f += "top: " + n + "px;"), void 0 !== l && (f += "left: " + l + "px;"), void 0 !== d && (f += "width:" + d + "px;"), void 0 !== p && (f += "height: " + p + "px;"); var u, v = "<div class='block group' style='z-index: " + a.attrs.order + ";" + f + " border:1px solid red;'>"; for (u in a) if (a[u].constructor === Array) for (var L = 0; L < a[u].length; L++)v += z(u, a[u][L], a, t, r, c); else v += z(u, a[u], a, t, r, c); return v += "</div>" } function y(a, t, r, e, s) { var o, i = ul(a, ["p:nvSpPr", "p:cNvPr", "attrs", "id"]), n = ul(a, ["p:nvSpPr", "p:cNvPr", "attrs", "name"]), l = void 0 === ul(a, ["p:nvSpPr", "p:nvPr", "p:ph", "attrs", "idx"]) ? void 0 : ul(a, ["p:nvSpPr", "p:nvPr", "p:ph", "attrs", "idx"]), d = void 0 === ul(a, ["p:nvSpPr", "p:nvPr", "p:ph", "attrs", "type"]) ? void 0 : ul(a, ["p:nvSpPr", "p:nvPr", "p:ph", "attrs", "type"]), p = ul(a, ["attrs", "order"]); "slideLayoutBg" != e && "slideMasterBg" != e || (o = "1" == ul(a, ["p:nvSpPr", "p:nvPr", "attrs", "userDrawn"])); var c = void 0, h = void 0; return void 0 !== l ? (c = r.slideLayoutTables.idxTable[l], h = void 0 !== d ? r.slideMasterTables.typeTable[d] : r.slideMasterTables.idxTable[l]) : void 0 !== d && (c = r.slideLayoutTables.typeTable[d], h = r.slideMasterTables.typeTable[d]), void 0 === d && (txBoxVal = ul(a, ["p:nvSpPr", "p:cNvSpPr", "attrs", "txBox"]), "1" == txBoxVal && (d = "textBox")), void 0 === d && void 0 === (d = ul(c, ["p:nvSpPr", "p:nvPr", "p:ph", "attrs", "type"])) && (d = "diagramBg" == e ? "diagram" : "obj"), k(a, t, c, h, i, n, l, d, p, r, o, s, e) } function k(a, t, r, e, s, o, i, n, l, d, p, c, h) { var f = ["p:spPr", "a:xfrm"], u = ul(a, f), v = ul(r, f), L = ul(e, f), g = "", b = ul(a, ["attrs", "order"]), m = ul(a, ["p:spPr", "a:prstGeom", "attrs", "prst"]), y = ul(a, ["p:spPr", "a:custGeom"]), k = !1, M = !1, f = ""; "1" === ul(u, ["attrs", "flipV"]) && (k = !0), "1" === ul(u, ["attrs", "flipH"]) && (M = !0), M && !k ? f = " scale(-1,1)" : !M && k ? f = " scale(1,-1)" : M && k && (f = " scale(-1,-1)"); var x, P, w, I, _, C, S, T, A, D, G, j, M = vl(ul(u, ["attrs", "rot"])), k = ul(a, ["p:txXfrm"]); if (void 0 !== k ? void 0 !== (k = ul(k, ["attrs", "rot"])) && (x = vl(k) + 90) : x = M, void 0 === m && void 0 === y || (Fn = ul(u, ["a:off", "attrs"]), parseInt(Fn.x), parseInt(Fn.y), Nn = ul(u, ["a:ext", "attrs"]), P = parseInt(Nn.cx) * tl, w = parseInt(Nn.cy) * tl, g += "<svg class='drawing " + (Fn = "_svg_css_" + (Object.keys(rl).length + 1) + "_" + Math.floor(1001 * Math.random())) + " " + (Nn = Fn + "_effects") + " ' _id='" + s + "' _idx='" + i + "' _type='" + n + "' _name='" + o + "'' style='" + il(u, t, void 0, void 0, c) + nl(u, void 0, void 0) + " z-index: " + l + ";transform: rotate(" + (void 0 !== M ? M : 0) + "deg)" + f + ";'>", g += "<defs>", I = cl(a, t, !0, d, h), C = _ = !1, "GROUP_FILL" == (M = hl(ul(a, ["p:spPr"]))) && (M = hl(ul(t, ["p:grpSpPr"]))), "GRADIENT_FILL" == M ? (_ = !0, j = I.color, g += function (a, t, r, e, s) { var o = function (a) { var t = ["0%", "100%"]; { if (0 == a) return t; for (var r = a; r--;) { var e = 100 - 100 / (a + 1) * (r + 1) + "%"; t.splice(-1, 0, e) } } return t }(e - 2), i = "", n = function (a, t, r) { var e = parseFloat(r), s = parseFloat(t), o = parseFloat(a), i = 2, n = 2, l = e / 2, d = s / 2, p = 2, c = 2, h = 2, r = 2, t = (o % 360 + 360) % 360, a = (360 - t) * Math.PI / 180, o = Math.tan(a), a = d - o * l; 0 == t ? (p = e, h = 0, r = c = d) : t < 90 ? (n = e, i = 0) : 90 == t ? (c = 0, h = p = l, r = s) : t < 180 ? i = n = 0 : 180 == t ? (p = 0, h = e, r = c = d) : t < 270 ? (n = 0, i = s) : 270 == t ? (c = s, h = p = l, r = 0) : (n = e, i = s); n = i + n / o, p = 2 == p ? o * (n - a) / (Math.pow(o, 2) + 1) : p, c = 2 == c ? o * p + a : c, h = 2 == h ? e - p : h, r = 2 == r ? s - c : r, h = Math.round(h / e * 100 * 100) / 100, r = Math.round(r / s * 100 * 100) / 100, e = Math.round(p / e * 100 * 100) / 100, s = Math.round(c / s * 100 * 100) / 100; return [h, r, e, s] }(r, t, a), r = n[0], t = n[1], a = n[2], n = n[3], l = o.length, d = l < 20 ? 100 : 1e3; i += '<linearGradient id="linGrd_' + s + '"' + (' gradientUnits="userSpaceOnUse" x1="' + r + '%" y1="' + t + '%" x2="' + a + '%" y2="' + n + '%"') + ">\n"; for (var p = 0; p < l; p++) { var c = tinycolor("#" + e[p]), h = c.getAlpha(); i += '<stop offset="' + Math.round(parseFloat(o[p]) / 100 * d) / d + '" style="stop-color:' + c.toHexString() + "; stop-opacity:" + h + ';"', i += "/>\n" } return i += "</linearGradient>\n" }(P, w, I.rot + 90, j, b)) : "PIC_FILL" == M ? (C = !0, g += function (a, t, r, e) { var s = function (a) { var t = new Image; t.onload = function () { t.width, t.height }, t.src = a; do { if (void 0 !== t.width) return [t.width, t.height] } while (void 0 === t.width) }(t), o = s[0], i = s[1], s = ul(a["p:spPr"]["a:blipFill"], ["a:tile", "attrs"]); { var n, l; void 0 !== s && void 0 !== s.sx && (n = parseInt(s.sx) / 1e5 * o, l = parseInt(s.sy) / 1e5 * i) } s = a["p:spPr"]["a:blipFill"]["a:blip"], i = ul(s, ["a:alphaModFix", "attrs"]), a = ""; void 0 !== i && void 0 !== i.amt && "" != i.amt && (a = "opacity='" + parseInt(i.amt) / 1e5 + "'"); i = void 0 !== n && 0 != n ? '<pattern id="imgPtrn_' + r + '" x="0" y="0" width="' + n + '" height="' + l + '" patternUnits="userSpaceOnUse">' : '<pattern id="imgPtrn_' + r + '" patternContentUnits="objectBoundingBox" width="1" height="1">'; var d = ul(s, ["a:duotone"]), r = "", s = ""; { var p; void 0 !== d && (p = [], Object.keys(d).forEach(function (a) { var t; "attrs" != a && ((t = {})[a] = d[a], t = fl(t, void 0, void 0, e), t = tinycolor("#" + t), p.push(t.toRgb())) }), 2 == p.length && (r = '<filter id="svg_image_duotone"> <feColorMatrix type="matrix" values=".33 .33 .33 0 0.33 .33 .33 0 0.33 .33 .33 0 00 0 0 1 0"></feColorMatrix><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="table" tableValues="' + p[0].r / 255 + " " + p[1].r / 255 + '"></feFuncR><feFuncG type="table" tableValues="' + p[0].g / 255 + " " + p[1].g / 255 + '"></feFuncG><feFuncB type="table" tableValues="' + p[0].b / 255 + " " + p[1].b / 255 + '"></feFuncB></feComponentTransfer> </filter>'), s = 'filter="url(#svg_image_duotone)"', i += r) } t = Ll(t), i += void 0 !== n && 0 != n ? '<image xlink:href="' + t + '" x="0" y="0" width="' + n + '" height="' + l + '" ' + a + " " + s + "></image>" : '<image xlink:href="' + t + '" preserveAspectRatio="none" width="1" height="1" ' + a + " " + s + "></image>"; return i += "</pattern>" }(a, I, b, d)) : "PATTERN_FILL" == M ? ((G = I) in rl && (G += "do-nothing: " + Fn + ";"), rl[G] = { name: Fn, text: G }, I = "none") : "SOLID_FILL" == M || "PATTERN_FILL" == M || "arc" != m && "bracketPair" != m && "bracePair" != m && "leftBracket" != m && "leftBrace" != m && "rightBrace" != m && "rightBracket" != m || (I = "none"), S = pl(a, 0, !0, "shape", d), T = ul(a, ["p:spPr", "a:ln", "a:headEnd", "attrs"]), A = ul(a, ["p:spPr", "a:ln", "a:tailEnd", "attrs"]), D = "", void 0 !== (f = ul(a, ["p:spPr", "a:effectLst", "a:outerShdw"])) && (Vn = fl(f, void 0, void 0, d), G = (j = f.attrs).dir ? parseInt(j.dir) / 6e4 : 0, M = parseInt(j.dist) * tl, f = j.blurRad ? parseInt(j.blurRad) * tl : "", j = M * Math.sin(G * Math.PI / 180), (Vn = "filter:drop-shadow(" + M * Math.cos(G * Math.PI / 180) + "px " + j + "px " + f + "px #" + Vn + ");") in rl && (Vn += "do-nothing: " + Fn + ";"), rl[Vn] = { name: Nn, text: Vn }), (void 0 === T || "triangle" !== T.type && "arrow" !== T.type) && (void 0 === A || "triangle" !== A.type && "arrow" !== A.type) || (g += "<marker id='markerTriangle_" + b + "' viewBox='0 0 10 10' refX='1' refY='5' markerWidth='5' markerHeight='5' stroke='" + S.color + "' fill='" + S.color + "' orient='auto-start-reverse' markerUnits='strokeWidth'><path d='M 0 0 L 10 5 L 0 10 z' /></marker>"), g += "</defs>"), void 0 !== m && void 0 === y) { switch (m) { case "rect": case "flowChartProcess": case "flowChartPredefinedProcess": case "flowChartInternalStorage": case "actionButtonBlank": g += "<rect x='0' y='0' width='" + P + "' height='" + w + "' fill='" + (C ? "url(#imgPtrn_" + b + ")" : _ ? "url(#linGrd_" + b + ")" : I) + "' stroke='" + S.color + "' stroke-width='" + S.width + "' stroke-dasharray='" + S.strokeDasharray + "' " + D + " />", "flowChartPredefinedProcess" == m ? g += "<rect x='" + P * (1 / 8) + "' y='0' width='" + .75 * P + "' height='" + w + "' fill='none' stroke='" + S.color + "' stroke-width='" + S.width + "' stroke-dasharray='" + S.strokeDasharray + "' />" : "flowChartInternalStorage" == m && (g += " <polyline points='" + P * (1 / 8) + " 0," + P * (1 / 8) + " " + w + "' fill='none' stroke='" + S.color + "' stroke-width='" + S.width + "' stroke-dasharray='" + S.strokeDasharray + "' />", g += " <polyline points='0 " + w * (1 / 8) + "," + P + " " + w * (1 / 8) + "' fill='none' stroke='" + S.color + "' stroke-width='" + S.width + "' stroke-dasharray='" + S.strokeDasharray + "' />"); break; case "flowChartCollate": g += "<path d='" + (ga = "M 0,0 L" + P + ",0 L0," + w + " L" + P + "," + w + " z") + "' fill='" + (C ? "url(#imgPtrn_" + b + ")" : _ ? "url(#linGrd_" + b + ")" : I) + "' stroke='" + S.color + "' stroke-width='" + S.width + "' stroke-dasharray='" + S.strokeDasharray + "' />"; break; case "flowChartDocument": g += "<path d='" + (ga = "M0,0 L" + P + ",0 L" + P + "," + (Rs = 17322 * w / 21600) + " C" + (Ds = 10800 * P / 21600) + "," + Rs + " " + Ds + "," + (Bs = 23922 * w / 21600) + " 0," + (zs = 20172 * w / 21600) + " z") + "' fill='" + (C ? "url(#imgPtrn_" + b + ")" : _ ? "url(#linGrd_" + b + ")" : I) + "' stroke='" + S.color + "' stroke-width='" + S.width + "' stroke-dasharray='" + S.strokeDasharray + "' />"; break; case "flowChartMultidocument": g += "<path d='" + (ga = "M0," + (zs = 3675 * w / 21600) + " L" + (xs = 18595 * P / 21600) + "," + zs + " L" + xs + "," + (Rs = 18022 * w / 21600) + " C" + (js = 9298 * P / 21600) + "," + Rs + " " + js + "," + (Bs = 23542 * w / 21600) + " 0," + (er = 20782 * w / 21600) + " zM" + (Ds = 1532 * P / 21600) + "," + zs + " L" + Ds + "," + (pr = 1815 * w / 21600) + " L" + (Gs = 2e4 * P / 21600) + "," + pr + " L" + Gs + "," + (Is = 16252 * w / 21600) + " C" + (dr = 19298 * P / 21600) + "," + Is + " " + xs + "," + (ts = 16352 * w / 21600) + " " + xs + "," + ts + "M" + (Ls = 2972 * P / 21600) + "," + pr + " L" + Ls + ",0 L" + P + ",0 L" + P + "," + (as = 14392 * w / 21600) + " C" + (vs = 20800 * P / 21600) + "," + as + " " + Gs + "," + (sr = 14467 * w / 21600) + " " + Gs + "," + sr) + "' fill='" + (C ? "url(#imgPtrn_" + b + ")" : _ ? "url(#linGrd_" + b + ")" : I) + "' stroke='" + S.color + "' stroke-width='" + S.width + "' stroke-dasharray='" + S.strokeDasharray + "' />"; break; case "actionButtonBackPrevious": var R = w / 2; g += "<path d='" + (ga = "M0,0 L" + P + ",0 L" + P + "," + w + " L0," + w + " zM" + (Sr = (z = P / 2) - (As = 3 * (Hr = Math.min(P, w)) / 8)) + "," + R + " L" + (Yr = z + As) + "," + (_r = R - As) + " L" + Yr + "," + (Cr = R + As) + " z") + "' fill='" + (C ? "url(#imgPtrn_" + b + ")" : _ ? "url(#linGrd_" + b + ")" : I) + "' stroke='" + S.color + "' stroke-width='" + S.width + "' stroke-dasharray='" + S.strokeDasharray + "' />"; break; case "actionButtonBeginning": var R = w / 2; g += "<path d='" + (ga = "M0,0 L" + P + ",0 L" + P + "," + w + " L0," + w + " zM" + (Gr = (Sr = (z = P / 2) - (As = 3 * (Hr = Math.min(P, w)) / 8)) + (Dr = (Tr = 3 * Hr / 4) / 4)) + "," + R + " L" + (Yr = z + As) + "," + (_r = R - As) + " L" + Yr + "," + (Cr = R + As) + " zM" + (Or = Sr + (Ar = Tr / 8)) + "," + _r + " L" + Sr + "," + _r + " L" + Sr + "," + Cr + " L" + Or + "," + Cr + " z") + "' fill='" + (C ? "url(#imgPtrn_" + b + ")" : _ ? "url(#linGrd_" + b + ")" : I) + "' stroke='" + S.color + "' stroke-width='" + S.width + "' stroke-dasharray='" + S.strokeDasharray + "' />"; break; case "actionButtonDocument": var z = P / 2, R = w / 2; As = 3 * (Hr = Math.min(P, w)) / 8, g += "<path d='" + (ga = "M0,0 L" + P + ",0 L" + P + "," + w + " L0," + w + " zM" + (Sr = z - (Ns = 9 * Hr / 32)) + "," + (_r = R - As) + " L" + (Ar = (Yr = z + Ns) - (Tr = 3 * Hr / 16)) + "," + _r + " L" + Yr + "," + (Dr = _r + Tr) + " L" + Yr + "," + (Cr = R + As) + " L" + Sr + "," + Cr + " zM" + Ar + "," + _r + " L" + Ar + "," + Dr + " L" + Yr + "," + Dr + " z") + "' fill='" + (C ? "url(#imgPtrn_" + b + ")" : _ ? "url(#linGrd_" + b + ")" : I) + "' stroke='" + S.color + "' stroke-width='" + S.width + "' stroke-dasharray='" + S.strokeDasharray + "' />"; break; case "actionButtonEnd": R = w / 2; g += "<path d='" + (ga = "M0," + w + " L" + P + "," + w + " L" + P + ",0 L0,0 z M" + (Gr = (Sr = (z = P / 2) - (As = 3 * (Hr = Math.min(P, w)) / 8)) + (Dr = 7 * (Tr = 3 * Hr / 4) / 8)) + "," + (_r = R - As) + " L" + (Yr = z + As) + "," + _r + " L" + Yr + "," + (Cr = R + As) + " L" + Gr + "," + Cr + " z M" + (Or = Sr + (Ar = 3 * Tr / 4)) + "," + R + " L" + Sr + "," + _r + " L" + Sr + "," + Cr + " z") + "' fill='" + (C ? "url(#imgPtrn_" + b + ")" : _ ? "url(#linGrd_" + b + ")" : I) + "' stroke='" + S.color + "' stroke-width='" + S.width + "' stroke-dasharray='" + S.strokeDasharray + "' />"; break; case "actionButtonForwardNext": R = w / 2; g += "<path d='" + (ga = "M0," + w + " L" + P + "," + w + " L" + P + ",0 L0,0 z M" + (Yr = (z = P / 2) + (As = 3 * (Hr = Math.min(P, w)) / 8)) + "," + R + " L" + (Sr = z - As) + "," + (_r = R - As) + " L" + Sr + "," + (Cr = R + As) + " z") + "' fill='" + (C ? "url(#imgPtrn_" + b + ")" : _ ? "url(#linGrd_" + b + ")" : I) + "' stroke='" + S.color + "' stroke-width='" + S.width + "' stroke-dasharray='" + S.strokeDasharray + "' />"; break; case "actionButtonHelp": var z = P / 2; aa = (_r = (R = w / 2) - (As = 3 * (Hr = Math.min(P, w)) / 8)) + (Er = 17 * (Tr = 3 * Hr / 4) / 28), ta = _r + 21 * Tr / 28, Z = Tr / 14; var B = (V = (Sr = z - As) + (Rr = 3 * Tr / 7)) + (Ar = Tr / 7), F = (E = _r + (Vr = 11 * Tr / 14)) + ($ = 3 * Tr / 28), N = ((Q = Sr + (zr = 4 * Tr / 7)) + V + (Or = 2 * Tr / 7)) / 2; g += "<path d='" + (ga = "M0,0 L" + P + ",0 L" + P + "," + w + " L0," + w + " zM" + (q = Sr + (Dr = 3 * Tr / 14)) + "," + (la = _r + Or) + sl(qr = q + Or, la, Or, Or, 180, 360, !1).replace("M", "L") + sl(N, la, Ar, Dr, 0, 90, !1).replace("M", "L") + sl(N, aa, Z, $, 270, 180, !1).replace("M", "L") + " L" + Q + "," + ta + " L" + V + "," + ta + " L" + V + "," + aa + sl(B, aa, Ar, Dr, 180, 270, !1).replace("M", "L") + sl(Q, la, Z, $, 90, 0, !1).replace("M", "L") + sl(qr, la, Ar, Ar, 0, -180, !1).replace("M", "L") + " zM" + z + "," + E + sl(z, F, $, $, 270, 630, !1).replace("M", "L") + " z") + "' fill='" + (C ? "url(#imgPtrn_" + b + ")" : _ ? "url(#linGrd_" + b + ")" : I) + "' stroke='" + S.color + "' stroke-width='" + S.width + "' stroke-dasharray='" + S.strokeDasharray + "' />"; break; case "actionButtonHome": g += "<path d='" + (ga = "M0,0 L" + P + ",0 L" + P + "," + w + " L0," + w + " z M" + (z = P / 2) + "," + (_r = (R = w / 2) - (As = 3 * (Hr = Math.min(P, w)) / 8)) + " L" + (Sr = z - As) + "," + R + " L" + (K = Sr + (Dr = (Tr = 3 * Hr / 4) / 8)) + "," + R + " L" + K + "," + (Cr = R + As) + " L" + (q = Sr + 7 * Tr / 8) + "," + Cr + " L" + q + "," + R + " L" + (Yr = z + As) + "," + R + " L" + (H = Sr + (Br = 13 * Tr / 16)) + "," + (Nr = _r + (Gr = 5 * Tr / 16)) + " L" + H + "," + (Vr = _r + (Ar = Tr / 16)) + " L" + (E = Sr + (zr = 11 * Tr / 16)) + "," + Vr + " L" + E + "," + (Fr = _r + (Or = 3 * Tr / 16)) + " z M" + (aa = Sr + (jr = 7 * Tr / 16)) + "," + (la = _r + (Er = 3 * Tr / 4)) + " L" + (ta = Sr + (Rr = 9 * Tr / 16)) + "," + la + " L" + ta + "," + Cr + " L" + aa + "," + Cr + " z") + "' fill='" + (C ? "url(#imgPtrn_" + b + ")" : _ ? "url(#linGrd_" + b + ")" : I) + "' stroke='" + S.color + "' stroke-width='" + S.width + "' stroke-dasharray='" + S.strokeDasharray + "' />"; break; case "actionButtonInformation": z = P / 2; K = (_r = (R = w / 2) - (As = 3 * (Hr = Math.min(P, w)) / 8)) + (Gr = 5 * (Tr = 3 * Hr / 4) / 16), aa = _r + (jr = 3 * Tr / 8), ta = _r + 13 * Tr / 16, E = _r + (Vr = 7 * Tr / 8), H = (Sr = z - As) + Gr, W = Sr + (Rr = 13 * Tr / 32), U = Sr + (zr = 19 * Tr / 32), Q = Sr + (Br = 11 * Tr / 16); var O = (Fr = _r + (Ar = Tr / 32)) + (X = 3 * Tr / 32); g += "<path d='" + (ga = "M0,0 L" + P + ",0 L" + P + "," + w + " L0," + w + " zM" + z + "," + _r + sl(z, Ur = _r + As, As, As, 270, 630, !1).replace("M", "L") + " zM" + z + "," + Fr + sl(z, O, X, X, 270, 630, !1).replace("M", "L") + "M" + H + "," + K + " L" + U + "," + K + " L" + U + "," + ta + " L" + Q + "," + ta + " L" + Q + "," + E + " L" + H + "," + E + " L" + H + "," + ta + " L" + W + "," + ta + " L" + W + "," + aa + " L" + H + "," + aa + " z") + "' fill='" + (C ? "url(#imgPtrn_" + b + ")" : _ ? "url(#linGrd_" + b + ")" : I) + "' stroke='" + S.color + "' stroke-width='" + S.width + "' stroke-dasharray='" + S.strokeDasharray + "' />"; break; case "actionButtonMovie": var E, H, q, U, V, Q, X, Y, W, Z, $, J, K, aa, ta, z = P / 2; Cr = (R = w / 2) + (As = 3 * (Hr = Math.min(P, w)) / 8), _r = R - As, E = (Sr = z - As) + (Ar = 1455 * (Tr = 3 * Hr / 4) / 21600), g += "<path d='" + (ga = "M0," + w + " L" + P + "," + w + " L" + P + ",0 L0,0 zM" + Sr + "," + (Y = _r + (Br = 5280 * Tr / 21600)) + " L" + Sr + "," + (J = _r + (la = 9555 * Tr / 21600)) + " L" + E + "," + J + " L" + (H = Sr + (Dr = 1905 * Tr / 21600)) + "," + (J = _r + (Nr = 9067 * Tr / 21600)) + " L" + (q = Sr + (Or = 2325 * Tr / 21600)) + "," + J + " L" + q + "," + (ta = _r + (ta = 15592 * Tr / 21600)) + " L" + (U = Sr + (jr = 17010 * Tr / 21600)) + "," + ta + " L" + U + "," + (K = _r + (K = 13342 * Tr / 21600)) + " L" + (V = Sr + (Rr = 19335 * Tr / 21600)) + "," + K + " L" + (X = Sr + (Er = 20595 * Tr / 21600)) + "," + (aa = _r + (aa = 14580 * Tr / 21600)) + " L" + (Yr = z + As) + "," + aa + " L" + Yr + "," + (Z = _r + (Vr = 6630 * Tr / 21600)) + " L" + X + "," + Z + " L" + (Q = Sr + (zr = 19725 * Tr / 21600)) + "," + ($ = _r + (Fr = 7492 * Tr / 21600)) + " L" + U + "," + $ + " L" + U + "," + Z + " L" + (W = Sr + (Gr = 16155 * Tr / 21600)) + "," + (W = _r + 5730 * Tr / 21600) + " L" + H + "," + W + " L" + E + "," + Y + " z") + "' fill='" + (C ? "url(#imgPtrn_" + b + ")" : _ ? "url(#linGrd_" + b + ")" : I) + "' stroke='" + S.color + "' stroke-width='" + S.width + "' stroke-dasharray='" + S.strokeDasharray + "' />"; break; case "actionButtonReturn": R = w / 2; Br = (Sr = (z = P / 2) - (As = 3 * (Hr = Math.min(P, w)) / 8)) + (Ar = 7 * (Tr = 3 * Hr / 4) / 8), Nr = Sr + (jr = Tr / 4); var O = (Rr = (_r = R - As) + (Dr = 3 * Tr / 4)) - (la = Tr / 8), ra = Fr = Sr + (Gr = 3 * Tr / 8), ea = (Cr = R + As) - Gr; g += "<path d='" + (ga = "M0," + w + " L" + P + "," + w + " L" + P + ",0 L0,0 z M" + (Yr = z + As) + "," + (Er = _r + jr) + " L" + (Sr + Dr) + "," + _r + " L" + z + "," + Er + " L" + (Vr = Sr + (Or = 5 * Tr / 8)) + "," + Er + " L" + Vr + "," + (zr = _r + Or) + sl(qr = Vr - la, zr, la, la, 0, 90, !1).replace("M", "L") + " L" + Fr + "," + Rr + sl(Fr, O, la, la, 90, 180, !1).replace("M", "L") + " L" + Nr + "," + Er + " L" + Sr + "," + Er + " L" + Sr + "," + zr + sl(ra, zr, Gr, Gr, 180, 90, !1).replace("M", "L") + " L" + z + "," + Cr + sl(z, ea, Gr, Gr, 90, 0, !1).replace("M", "L") + " L" + Br + "," + Er + " z") + "' fill='" + (C ? "url(#imgPtrn_" + b + ")" : _ ? "url(#linGrd_" + b + ")" : I) + "' stroke='" + S.color + "' stroke-width='" + S.width + "' stroke-dasharray='" + S.strokeDasharray + "' />"; break; case "actionButtonSound": R = w / 2; g += "<path d='" + (ga = "M0,0 L" + P + ",0 L" + P + "," + w + " L0," + w + " z M" + (Sr = (z = P / 2) - (As = 3 * (Hr = Math.min(P, w)) / 8)) + "," + (Er = (_r = R - As) + (Dr = 5 * (Tr = 3 * Hr / 4) / 16)) + " L" + (Vr = Sr + Dr) + "," + Er + " L" + (Fr = Sr + (Or = 5 * Tr / 8)) + "," + _r + " L" + Fr + "," + (Cr = R + As) + " L" + Vr + "," + (Br = _r + (Gr = 11 * Tr / 16)) + " L" + Sr + "," + Br + " z M" + (Nr = Sr + (jr = 3 * Tr / 4)) + "," + Er + " L" + (Yr = z + As) + "," + (zr = _r + (Ar = Tr / 8)) + " M" + Nr + "," + R + " L" + Yr + "," + R + " M" + Nr + "," + Br + " L" + Yr + "," + (_r + (Rr = 7 * Tr / 8))) + "' fill='" + (C ? "url(#imgPtrn_" + b + ")" : _ ? "url(#linGrd_" + b + ")" : I) + "' stroke='" + S.color + "' stroke-width='" + S.width + "' stroke-dasharray='" + S.strokeDasharray + "' />"; break; case "irregularSeal1": case "irregularSeal2": "irregularSeal1" == m ? ga = "M" + 10800 * P / 21600 + "," + 5800 * w / 21600 + " L" + 14522 * P / 21600 + ",0 L" + 14155 * P / 21600 + "," + 5325 * w / 21600 + " L" + 18380 * P / 21600 + "," + 4457 * w / 21600 + " L" + 16702 * P / 21600 + "," + 7315 * w / 21600 + " L" + 21097 * P / 21600 + "," + 8137 * w / 21600 + " L" + 17607 * P / 21600 + "," + 10475 * w / 21600 + " L" + P + "," + 13290 * w / 21600 + " L" + 16837 * P / 21600 + "," + 12942 * w / 21600 + " L" + 18145 * P / 21600 + "," + 18095 * w / 21600 + " L" + 14020 * P / 21600 + "," + 14457 * w / 21600 + " L" + 13247 * P / 21600 + "," + 19737 * w / 21600 + " L" + 10532 * P / 21600 + "," + 14935 * w / 21600 + " L" + 8485 * P / 21600 + "," + w + " L" + 7715 * P / 21600 + "," + 15627 * w / 21600 + " L" + 4762 * P / 21600 + "," + 17617 * w / 21600 + " L" + 5667 * P / 21600 + "," + 13937 * w / 21600 + " L" + 135 * P / 21600 + "," + 14587 * w / 21600 + " L" + 3722 * P / 21600 + "," + 11775 * w / 21600 + " L0," + 8615 * w / 21600 + " L" + 4627 * P / 21600 + "," + 7617 * w / 21600 + " L" + 370 * P / 21600 + "," + 2295 * w / 21600 + " L" + 7312 * P / 21600 + "," + 6320 * w / 21600 + " L" + 83