/*! bpmn-js - bpmn-viewer v0.17.0 | (c) 2014, 2015 camunda Services GmbH | bpmn.io/license */
!
function(e) {
if ("object" == typeof exports && "undefined" != typeof module) module.exports = e();
else if ("function" == typeof define && define.amd) define([], e);
else {
var t;
t = "undefined" != typeof window ? window: "undefined" != typeof global ? global: "undefined" != typeof self ? self: this,
t.BpmnJS = e()
}
} (function() {
var e;
return function e(t, n, r) {
function i(a, s) {
if (!n[a]) {
if (!t[a]) {
var c = "function" == typeof require && require;
if (!s && c) return c(a, !0);
if (o) return o(a, !0);
var l = new Error("Cannot find module '" + a + "'");
throw l.code = "MODULE_NOT_FOUND",
l
}
var u = n[a] = {
exports: {}
};
t[a][0].call(u.exports,
function(e) {
var n = t[a][1][e];
return i(n ? n: e)
},
u, u.exports, e, t, n, r)
}
return n[a].exports
}
for (var o = "function" == typeof require && require,
a = 0; a < r.length; a++) i(r[a]);
return i
} ({
1 : [function(e, t, n) {
"use strict";
function r(e) {
var t = /unparsable content <([^>]+)> detected([\s\S]*)$/,
n = t.exec(e.message);
return n && (e.message = "unparsable content <" + n[1] + "> detected; this may indicate an invalid BPMN 2.0 diagram file" + n[2]),
e
}
function i(e) {
return e + (u(e) ? "px": "")
}
function o(e) {
e = s({},
v, e),
this.moddle = this._createModdle(e),
this.container = this._createContainer(e),
a(this.container),
this._init(this.container, this.moddle, e)
}
function a(e) {
var t = x.BPMNIO_LOGO,
n = '',
r = p(n);
e.appendChild(r),
b.bind(r, "click",
function(e) {
x.open(),
e.preventDefault()
})
}
var s = e(197),
c = e(201),
l = e(194),
u = e(191),
p = e(212),
f = e(214),
h = e(215),
d = e(36),
m = e(15),
y = e(77),
g = e(8),
v = {
width: "100%",
height: "100%",
position: "relative",
container: "body"
};
y(o, d),
t.exports = o,
o.prototype.importXML = function(e, t) {
t = t ||
function() {};
var n = this;
e = this._emit("import.parse.start", {
xml: e
}) || e,
this.moddle.fromXML(e, "bpmn:Definitions",
function(e, i, o) {
if (i = n._emit("import.parse.complete", {
error: e,
definitions: i,
context: o
}) || i, e) return e = r(e),
n._emit("import.done", {
error: e
}),
t(e);
var a = o.warnings;
n.importDefinitions(i,
function(e, r) {
var i = [].concat(a, r || []);
n._emit("import.done", {
error: e,
warnings: i
}),
t(e, i)
})
})
},
o.prototype.saveXML = function(e, t) {
t || (t = e, e = {});
var n = this.definitions;
return n ? void this.moddle.toXML(n, e, t) : t(new Error("no definitions loaded"))
},
o.prototype.saveSVG = function(e, t) {
t || (t = e, e = {});
var n = this.get("canvas"),
r = n.getDefaultLayer(),
i = n._svg.select("defs"),
o = r.innerSVG(),
a = i && i.outerSVG() || "",
s = r.getBBox(),
c = '\n\n\n";
t(null, c)
},
o.prototype.importDefinitions = function(e, t) {
try {
this.definitions && this.clear(),
this.definitions = e,
g.importBpmnDiagram(this, e, t)
} catch(e) {
t(e)
}
},
o.prototype.getModules = function() {
return this._modules
},
o.prototype.destroy = function() {
d.prototype.destroy.call(this),
h(this.container)
},
o.prototype.on = function(e, t, n, r) {
return this.get("eventBus").on(e, t, n, r)
},
o.prototype.off = function(e, t) {
this.get("eventBus").off(e, t)
},
o.prototype._init = function(e, t, n) {
var r = n.modules || this.getModules(),
i = n.additionalModules || [],
o = [{
bpmnjs: ["value", this],
moddle: ["value", t]
}],
a = [].concat(o, r, i),
l = s(c(n, "additionalModules"), {
canvas: s({},
n.canvas, {
container: e
}),
modules: a
});
d.call(this, l)
},
o.prototype._emit = function(e, t) {
return this.get("eventBus").fire(e, t)
},
o.prototype._createContainer = function(e) {
var t, n = e.container;
return n.get && (n = n.get(0)),
l(n) && (n = f(n)),
t = p('
'),
s(t.style, {
width: i(e.width),
height: i(e.height),
position: e.position
}),
n.appendChild(t),
t
},
o.prototype._createModdle = function(e) {
var t = s({},
this._moddleExtensions, e.moddleExtensions);
return new m(t)
},
o.prototype._modules = [e(2), e(58), e(57), e(53)],
o.prototype._moddleExtensions = {};
var x = e(14),
b = e(213)
},
{
14 : 14,
15 : 15,
191 : 191,
194 : 194,
197 : 197,
2 : 2,
201 : 201,
212 : 212,
213 : 213,
214 : 214,
215 : 215,
36 : 36,
53 : 53,
57 : 57,
58 : 58,
77 : 77,
8 : 8
}],
2 : [function(e, t, n) {
t.exports = {
__depends__: [e(5), e(10)]
}
},
{
10 : 10,
5 : 5
}],
3 : [function(e, t, n) {
"use strict";
function r(e, t, n, r) {
function l(e, t) {
V[e] = t
}
function u(e) {
return V[e]
}
function p(e) {
function t(e, t) {
var n = m({
fill: "black",
strokeWidth: 1,
strokeLinecap: "round",
strokeDasharray: "none"
},
t.attrs),
r = t.ref || {
x: 0,
y: 0
},
i = t.scale || 1;
"none" === n.strokeDasharray && (n.strokeDasharray = [1e4, 1]);
var o = t.element.attr(n).marker(0, 0, 20, 20, r.x, r.y).attr({
markerWidth: 20 * i,
markerHeight: 20 * i
});
return l(e, o)
}
t("sequenceflow-end", {
element: e.path("M 1 5 L 11 10 L 1 15 Z"),
ref: {
x: 11,
y: 10
},
scale: .5
}),
t("messageflow-start", {
element: e.circle(6, 6, 3.5),
attrs: {
fill: "white",
stroke: "black"
},
ref: {
x: 6,
y: 6
}
}),
t("messageflow-end", {
element: e.path("m 1 5 l 0 -3 l 7 3 l -7 3 z"),
attrs: {
fill: "white",
stroke: "black",
strokeLinecap: "butt"
},
ref: {
x: 8.5,
y: 5
}
}),
t("association-start", {
element: e.path("M 11 5 L 1 10 L 11 15"),
attrs: {
fill: "none",
stroke: "black",
strokeWidth: 1.5
},
ref: {
x: 1,
y: 10
},
scale: .5
}),
t("association-end", {
element: e.path("M 1 5 L 11 10 L 1 15"),
attrs: {
fill: "none",
stroke: "black",
strokeWidth: 1.5
},
ref: {
x: 12,
y: 10
},
scale: .5
}),
t("conditional-flow-marker", {
element: e.path("M 0 10 L 8 6 L 16 10 L 8 14 Z"),
attrs: {
fill: "white",
stroke: "black"
},
ref: {
x: -1,
y: 10
},
scale: .5
}),
t("conditional-default-flow-marker", {
element: e.path("M 1 4 L 5 16"),
attrs: {
stroke: "black"
},
ref: {
x: -5,
y: 10
},
scale: .5
})
}
function f(e, t, n, r, i) {
d(r) && (i = r, r = 0),
r = r || 0,
i = G(i, {
stroke: "black",
strokeWidth: 2,
fill: "white"
});
var o = t / 2,
a = n / 2;
return e.circle(o, a, Math.round((t + n) / 4 - r)).attr(i)
}
function h(e, t, n, r, i, o) {
return d(i) && (o = i, i = 0),
i = i || 0,
o = G(o, {
stroke: "black",
strokeWidth: 2,
fill: "white"
}),
e.rect(i, i, t - 2 * i, n - 2 * i, r).attr(o)
}
function g(e, t, n, r) {
var i = t / 2,
o = n / 2,
a = [i, 0, t, o, i, n, 0, o];
return r = G(r, {
stroke: "black",
strokeWidth: 2,
fill: "white"
}),
e.polygon(a).attr(r)
}
function x(e, t, n) {
return n = G(n, ["no-fill"], {
stroke: "black",
strokeWidth: 2,
fill: "none"
}),
T(t, n).appendTo(e)
}
function A(e, t, n) {
return n = G(n, ["no-fill"], {
strokeWidth: 2,
stroke: "black"
}),
e.path(t).attr(n)
}
function _(e, t, n, r) {
return A(t, n, m({
"data-marker": e
},
r))
}
function S(e) {
return function(t, n) {
return U[e](t, n)
}
}
function M(e) {
return U[e]
}
function P(e, t) {
var n = c(e),
r = o(n);
return i(n, "bpmn:MessageEventDefinition") ? M("bpmn:MessageEventDefinition")(t, e, r) : i(n, "bpmn:TimerEventDefinition") ? M("bpmn:TimerEventDefinition")(t, e, r) : i(n, "bpmn:ConditionalEventDefinition") ? M("bpmn:ConditionalEventDefinition")(t, e) : i(n, "bpmn:SignalEventDefinition") ? M("bpmn:SignalEventDefinition")(t, e, r) : i(n, "bpmn:CancelEventDefinition") && i(n, "bpmn:TerminateEventDefinition", {
parallelMultiple: !1
}) ? M("bpmn:MultipleEventDefinition")(t, e, r) : i(n, "bpmn:CancelEventDefinition") && i(n, "bpmn:TerminateEventDefinition", {
parallelMultiple: !0
}) ? M("bpmn:ParallelMultipleEventDefinition")(t, e, r) : i(n, "bpmn:EscalationEventDefinition") ? M("bpmn:EscalationEventDefinition")(t, e, r) : i(n, "bpmn:LinkEventDefinition") ? M("bpmn:LinkEventDefinition")(t, e, r) : i(n, "bpmn:ErrorEventDefinition") ? M("bpmn:ErrorEventDefinition")(t, e, r) : i(n, "bpmn:CancelEventDefinition") ? M("bpmn:CancelEventDefinition")(t, e, r) : i(n, "bpmn:CompensateEventDefinition") ? M("bpmn:CompensateEventDefinition")(t, e, r) : i(n, "bpmn:TerminateEventDefinition") ? M("bpmn:TerminateEventDefinition")(t, e, r) : null
}
function D(e, t, n) {
return j.createText(e, t || "", n).addClass("djs-label")
}
function k(e, t, n) {
var r = c(t);
return D(e, r.name, {
box: t,
align: n,
padding: 5
})
}
function O(e, t) {
var n = c(t),
r = {
width: 90,
height: 30,
x: t.width / 2 + t.x,
y: t.height / 2 + t.y
};
return D(e, n.name, {
box: r,
style: {
fontSize: "11px"
}
})
}
function B(e, t, n) {
var r = D(e, t, {
box: {
height: 30,
width: n.height
},
align: "center-middle"
}),
i = -1 * n.height;
r.transform("rotate(270) translate(" + i + ",0)")
}
function I(e) {
for (var t = e.waypoints,
n = "m " + t[0].x + "," + t[0].y, r = 1; r < t.length; r++) n += "L" + t[r].x + "," + t[r].y + " ";
return n
}
function L(e, t, n) {
var r, i = c(t),
o = v(n, "SubProcessMarker");
r = o ? {
seq: -21,
parallel: -22,
compensation: -42,
loop: -18,
adhoc: 10
}: {
seq: -3,
parallel: -6,
compensation: -27,
loop: 0,
adhoc: 10
},
y(n,
function(n) {
M(n)(e, t, r)
}),
i.isForCompensation && M("CompensationMarker")(e, t, r),
"bpmn:AdHocSubProcess" === i.$type && M("AdhocMarker")(e, t, r);
var a = i.loopCharacteristics,
s = a && a.isSequential;
a && (void 0 === s && M("LoopMarker")(e, t, r), s === !1 && M("ParallelMarker")(e, t, r), s === !0 && M("SequentialMarker")(e, t, r))
}
function F(e, t) {
var r = (t.height - 16) / t.height,
i = n.getScaledPath("DATA_OBJECT_COLLECTION_PATH", {
xScaleFactor: 1,
yScaleFactor: 1,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: .451,
my: r
}
});
A(e, i, {
strokeWidth: 2
})
}
b.call(this, e, r);
var j = new E({
style: N,
size: {
width: 100
}
}),
V = {},
G = t.computeStyle,
U = this.handlers = {
"bpmn:Event": function(e, t, n) {
return f(e, t.width, t.height, n)
},
"bpmn:StartEvent": function(e, t) {
var n = {},
r = c(t);
r.isInterrupting || (n = {
strokeDasharray: "6",
strokeLinecap: "round"
});
var i = M("bpmn:Event")(e, t, n);
return P(t, e),
i
},
"bpmn:MessageEventDefinition": function(e, t, r) {
var i = n.getScaledPath("EVENT_MESSAGE", {
xScaleFactor: .9,
yScaleFactor: .9,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: .235,
my: .315
}
}),
o = r ? "black": "white",
a = r ? "white": "black",
s = A(e, i, {
strokeWidth: 1,
fill: o,
stroke: a
});
return s
},
"bpmn:TimerEventDefinition": function(e, t) {
var r = f(e, t.width, t.height, .2 * t.height, {
strokeWidth: 2
}),
i = n.getScaledPath("EVENT_TIMER_WH", {
xScaleFactor: .75,
yScaleFactor: .75,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: .5,
my: .5
}
});
A(e, i, {
strokeWidth: 2,
strokeLinecap: "square"
});
for (var o = 0; o < 12; o++) {
var a = n.getScaledPath("EVENT_TIMER_LINE", {
xScaleFactor: .75,
yScaleFactor: .75,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: .5,
my: .5
}
}),
s = t.width / 2,
c = t.height / 2;
A(e, a, {
strokeWidth: 1,
strokeLinecap: "square",
transform: "rotate(" + 30 * o + "," + c + "," + s + ")"
})
}
return r
},
"bpmn:EscalationEventDefinition": function(e, t, r) {
var i = n.getScaledPath("EVENT_ESCALATION", {
xScaleFactor: 1,
yScaleFactor: 1,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: .5,
my: .2
}
}),
o = r ? "black": "none";
return A(e, i, {
strokeWidth: 1,
fill: o
})
},
"bpmn:ConditionalEventDefinition": function(e, t) {
var r = n.getScaledPath("EVENT_CONDITIONAL", {
xScaleFactor: 1,
yScaleFactor: 1,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: .5,
my: .222
}
});
return A(e, r, {
strokeWidth: 1
})
},
"bpmn:LinkEventDefinition": function(e, t, r) {
var i = n.getScaledPath("EVENT_LINK", {
xScaleFactor: 1,
yScaleFactor: 1,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: .57,
my: .263
}
}),
o = r ? "black": "none";
return A(e, i, {
strokeWidth: 1,
fill: o
})
},
"bpmn:ErrorEventDefinition": function(e, t, r) {
var i = n.getScaledPath("EVENT_ERROR", {
xScaleFactor: 1.1,
yScaleFactor: 1.1,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: .2,
my: .722
}
}),
o = r ? "black": "none";
return A(e, i, {
strokeWidth: 1,
fill: o
})
},
"bpmn:CancelEventDefinition": function(e, t, r) {
var i = n.getScaledPath("EVENT_CANCEL_45", {
xScaleFactor: 1,
yScaleFactor: 1,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: .638,
my: -.055
}
}),
o = r ? "black": "none";
return A(e, i, {
strokeWidth: 1,
fill: o
}).transform("rotate(45)")
},
"bpmn:CompensateEventDefinition": function(e, t, r) {
var i = n.getScaledPath("EVENT_COMPENSATION", {
xScaleFactor: 1,
yScaleFactor: 1,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: .22,
my: .5
}
}),
o = r ? "black": "none";
return A(e, i, {
strokeWidth: 1,
fill: o
})
},
"bpmn:SignalEventDefinition": function(e, t, r) {
var i = n.getScaledPath("EVENT_SIGNAL", {
xScaleFactor: .9,
yScaleFactor: .9,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: .5,
my: .2
}
}),
o = r ? "black": "none";
return A(e, i, {
strokeWidth: 1,
fill: o
})
},
"bpmn:MultipleEventDefinition": function(e, t, r) {
var i = n.getScaledPath("EVENT_MULTIPLE", {
xScaleFactor: 1.1,
yScaleFactor: 1.1,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: .222,
my: .36
}
}),
o = r ? "black": "none";
return A(e, i, {
strokeWidth: 1,
fill: o
})
},
"bpmn:ParallelMultipleEventDefinition": function(e, t) {
var r = n.getScaledPath("EVENT_PARALLEL_MULTIPLE", {
xScaleFactor: 1.2,
yScaleFactor: 1.2,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: .458,
my: .194
}
});
return A(e, r, {
strokeWidth: 1
})
},
"bpmn:EndEvent": function(e, t) {
var n = M("bpmn:Event")(e, t, {
strokeWidth: 4
});
return P(t, e, !0),
n
},
"bpmn:TerminateEventDefinition": function(e, t) {
var n = f(e, t.width, t.height, 8, {
strokeWidth: 4,
fill: "black"
});
return n
},
"bpmn:IntermediateEvent": function(e, t) {
var n = M("bpmn:Event")(e, t, {
strokeWidth: 1
});
return f(e, t.width, t.height, R, {
strokeWidth: 1,
fill: "none"
}),
P(t, e),
n
},
"bpmn:IntermediateCatchEvent": S("bpmn:IntermediateEvent"),
"bpmn:IntermediateThrowEvent": S("bpmn:IntermediateEvent"),
"bpmn:Activity": function(e, t, n) {
return h(e, t.width, t.height, C, n)
},
"bpmn:Task": function(e, t, n) {
var r = M("bpmn:Activity")(e, t, n);
return k(e, t, "center-middle"),
L(e, t),
r
},
"bpmn:ServiceTask": function(e, t) {
var r = M("bpmn:Task")(e, t),
i = n.getScaledPath("TASK_TYPE_SERVICE", {
abspos: {
x: 12,
y: 18
}
});
A(e, i, {
strokeWidth: 1,
fill: "none"
});
var o = n.getScaledPath("TASK_TYPE_SERVICE_FILL", {
abspos: {
x: 17.2,
y: 18
}
});
A(e, o, {
strokeWidth: 0,
stroke: "none",
fill: "white"
});
var a = n.getScaledPath("TASK_TYPE_SERVICE", {
abspos: {
x: 17,
y: 22
}
});
return A(e, a, {
strokeWidth: 1,
fill: "white"
}),
r
},
"bpmn:UserTask": function(e, t) {
var r = M("bpmn:Task")(e, t),
i = 15,
o = 12,
a = n.getScaledPath("TASK_TYPE_USER_1", {
abspos: {
x: i,
y: o
}
});
A(e, a, {
strokeWidth: .5,
fill: "none"
});
var s = n.getScaledPath("TASK_TYPE_USER_2", {
abspos: {
x: i,
y: o
}
});
A(e, s, {
strokeWidth: .5,
fill: "none"
});
var c = n.getScaledPath("TASK_TYPE_USER_3", {
abspos: {
x: i,
y: o
}
});
return A(e, c, {
strokeWidth: .5,
fill: "black"
}),
r
},
"bpmn:ManualTask": function(e, t) {
var r = M("bpmn:Task")(e, t),
i = n.getScaledPath("TASK_TYPE_MANUAL", {
abspos: {
x: 17,
y: 15
}
});
return A(e, i, {
strokeWidth: .25,
fill: "white",
stroke: "black"
}),
r
},
"bpmn:SendTask": function(e, t) {
var r = M("bpmn:Task")(e, t),
i = n.getScaledPath("TASK_TYPE_SEND", {
xScaleFactor: 1,
yScaleFactor: 1,
containerWidth: 21,
containerHeight: 14,
position: {
mx: .285,
my: .357
}
});
return A(e, i, {
strokeWidth: 1,
fill: "black",
stroke: "white"
}),
r
},
"bpmn:ReceiveTask": function(e, t) {
var r, i = c(t),
o = M("bpmn:Task")(e, t);
return i.instantiate ? (f(e, 28, 28, 4.4, {
strokeWidth: 1
}), r = n.getScaledPath("TASK_TYPE_INSTANTIATING_SEND", {
abspos: {
x: 7.77,
y: 9.52
}
})) : r = n.getScaledPath("TASK_TYPE_SEND", {
xScaleFactor: .9,
yScaleFactor: .9,
containerWidth: 21,
containerHeight: 14,
position: {
mx: .3,
my: .4
}
}),
A(e, r, {
strokeWidth: 1
}),
o
},
"bpmn:ScriptTask": function(e, t) {
var r = M("bpmn:Task")(e, t),
i = n.getScaledPath("TASK_TYPE_SCRIPT", {
abspos: {
x: 15,
y: 20
}
});
return A(e, i, {
strokeWidth: 1
}),
r
},
"bpmn:BusinessRuleTask": function(e, t) {
var r = M("bpmn:Task")(e, t),
i = n.getScaledPath("TASK_TYPE_BUSINESS_RULE_HEADER", {
abspos: {
x: 8,
y: 8
}
}),
o = A(e, i);
o.attr({
strokeWidth: 1,
fill: "AAA"
});
var a = n.getScaledPath("TASK_TYPE_BUSINESS_RULE_MAIN", {
abspos: {
x: 8,
y: 8
}
}),
s = A(e, a);
return s.attr({
strokeWidth: 1
}),
r
},
"bpmn:SubProcess": function(e, t, n) {
n = m({
fillOpacity: .95
},
n);
var r = M("bpmn:Activity")(e, t, n),
i = w.isExpanded(t),
o = w.isEventSubProcess(t);
return o && r.attr({
strokeDasharray: "1,2"
}),
k(e, t, i ? "center-top": "center-middle"),
i ? L(e, t) : L(e, t, ["SubProcessMarker"]),
r
},
"bpmn:AdHocSubProcess": function(e, t) {
return M("bpmn:SubProcess")(e, t)
},
"bpmn:Transaction": function(e, n) {
var r = M("bpmn:SubProcess")(e, n),
i = t.style(["no-fill", "no-events"]);
return h(e, n.width, n.height, C - 2, R, i),
r
},
"bpmn:CallActivity": function(e, t) {
return M("bpmn:SubProcess")(e, t, {
strokeWidth: 5
})
},
"bpmn:Participant": function(e, t) {
var n = M("bpmn:Lane")(e, t, {
fillOpacity: .95,
fill: "White"
}),
r = w.isExpanded(t);
if (r) {
x(e, [{
x: 30,
y: 0
},
{
x: 30,
y: t.height
}]);
var i = c(t).name;
B(e, i, t)
} else {
var o = c(t).name;
D(e, o, {
box: t,
align: "center-middle"
})
}
var a = !!c(t).participantMultiplicity;
return a && M("ParticipantMultiplicityMarker")(e, t),
n
},
"bpmn:Lane": function(e, t, n) {
var r = h(e, t.width, t.height, 0, n || {
fill: "none"
}),
i = c(t);
if ("bpmn:Lane" === i.$type) {
var o = i.name;
B(e, o, t)
}
return r
},
"bpmn:InclusiveGateway": function(e, t) {
var n = g(e, t.width, t.height);
return f(e, t.width, t.height, .24 * t.height, {
strokeWidth: 2.5,
fill: "none"
}),
n
},
"bpmn:ExclusiveGateway": function(e, t) {
var r = g(e, t.width, t.height),
i = n.getScaledPath("GATEWAY_EXCLUSIVE", {
xScaleFactor: .4,
yScaleFactor: .4,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: .32,
my: .3
}
});
return s(t).isMarkerVisible && A(e, i, {
strokeWidth: 1,
fill: "black"
}),
r
},
"bpmn:ComplexGateway": function(e, t) {
var r = g(e, t.width, t.height),
i = n.getScaledPath("GATEWAY_COMPLEX", {
xScaleFactor: .5,
yScaleFactor: .5,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: .46,
my: .26
}
});
return A(e, i, {
strokeWidth: 1,
fill: "black"
}),
r
},
"bpmn:ParallelGateway": function(e, t) {
var r = g(e, t.width, t.height),
i = n.getScaledPath("GATEWAY_PARALLEL", {
xScaleFactor: .6,
yScaleFactor: .6,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: .46,
my: .2
}
});
return A(e, i, {
strokeWidth: 1,
fill: "black"
}),
r
},
"bpmn:EventBasedGateway": function(e, t) {
function r() {
var r = n.getScaledPath("GATEWAY_EVENT_BASED", {
xScaleFactor: .18,
yScaleFactor: .18,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: .36,
my: .44
}
});
A(e, r, {
strokeWidth: 2,
fill: "none"
})
}
var i = c(t),
o = g(e, t.width, t.height);
f(e, t.width, t.height, .2 * t.height, {
strokeWidth: 1,
fill: "none"
});
var a = i.eventGatewayType,
s = !!i.instantiate;
if ("Parallel" === a) {
var l = n.getScaledPath("GATEWAY_PARALLEL", {
xScaleFactor: .4,
yScaleFactor: .4,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: .474,
my: .296
}
}),
u = A(e, l);
u.attr({
strokeWidth: 1,
fill: "none"
})
} else if ("Exclusive" === a) {
if (!s) {
var p = f(e, t.width, t.height, .26 * t.height);
p.attr({
strokeWidth: 1,
fill: "none"
})
}
r()
}
return o
},
"bpmn:Gateway": function(e, t) {
return g(e, t.width, t.height)
},
"bpmn:SequenceFlow": function(e, t) {
var n = I(t),
r = A(e, n, {
strokeLinejoin: "round",
markerEnd: u("sequenceflow-end")
}),
i = c(t),
o = t.source.businessObject;
return i.conditionExpression && o.$instanceOf("bpmn:Activity") && r.attr({
markerStart: u("conditional-flow-marker")
}),
o.
default && (o.$instanceOf("bpmn:Gateway") || o.$instanceOf("bpmn:Activity")) && o.
default === i && r.attr({
markerStart: u("conditional-default-flow-marker")
}),
r
},
"bpmn:Association": function(e, t, n) {
var r = c(t);
return n = m({
strokeDasharray: "0.5, 5",
strokeLinecap: "round",
strokeLinejoin: "round"
},
n || {}),
"One" !== r.associationDirection && "Both" !== r.associationDirection || (n.markerEnd = u("association-end")),
"Both" === r.associationDirection && (n.markerStart = u("association-start")),
x(e, t.waypoints, n)
},
"bpmn:DataInputAssociation": function(e, t) {
return M("bpmn:Association")(e, t, {
markerEnd: u("association-end")
})
},
"bpmn:DataOutputAssociation": function(e, t) {
return M("bpmn:Association")(e, t, {
markerEnd: u("association-end")
})
},
"bpmn:MessageFlow": function(e, t) {
var r = c(t),
i = s(t),
o = I(t),
a = A(e, o, {
markerEnd: u("messageflow-end"),
markerStart: u("messageflow-start"),
strokeDasharray: "10, 12",
strokeLinecap: "round",
strokeLinejoin: "round",
strokeWidth: "1.5px"
});
if (r.messageRef) {
var l = a.getPointAtLength(a.getTotalLength() / 2),
p = n.getScaledPath("MESSAGE_FLOW_MARKER", {
abspos: {
x: l.x,
y: l.y
}
}),
f = {
strokeWidth: 1
};
"initiating" === i.messageVisibleKind ? (f.fill = "white", f.stroke = "black") : (f.fill = "#888", f.stroke = "white"),
A(e, p, f)
}
return a
},
"bpmn:DataObject": function(e, t) {
var r = n.getScaledPath("DATA_OBJECT_PATH", {
xScaleFactor: 1,
yScaleFactor: 1,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: .474,
my: .296
}
}),
i = A(e, r, {
fill: "white"
}),
o = c(t);
return a(o) && F(e, t),
i
},
"bpmn:DataObjectReference": S("bpmn:DataObject"),
"bpmn:DataInput": function(e, t) {
var r = n.getRawPath("DATA_ARROW"),
i = M("bpmn:DataObject")(e, t);
return A(e, r, {
strokeWidth: 1
}),
i
},
"bpmn:DataOutput": function(e, t) {
var r = n.getRawPath("DATA_ARROW"),
i = M("bpmn:DataObject")(e, t);
return A(e, r, {
strokeWidth: 1,
fill: "black"
}),
i
},
"bpmn:DataStoreReference": function(e, t) {
var r = n.getScaledPath("DATA_STORE", {
xScaleFactor: 1,
yScaleFactor: 1,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: 0,
my: .133
}
}),
i = A(e, r, {
strokeWidth: 2,
fill: "white"
});
return i
},
"bpmn:BoundaryEvent": function(e, t) {
var n = c(t),
r = n.cancelActivity,
i = {
strokeWidth: 1
};
r || (i.strokeDasharray = "6", i.strokeLinecap = "round");
var o = M("bpmn:Event")(e, t, i);
return f(e, t.width, t.height, R, m(i, {
fill: "none"
})),
P(t, e),
o
},
"bpmn:Group": function(e, t) {
return h(e, t.width, t.height, C, {
strokeWidth: 1,
strokeDasharray: "8,3,1,3",
fill: "none",
pointerEvents: "none"
})
},
label: function(e, t) {
var n = O(e, t),
r = n.getBBox();
return t.x = Math.round(t.x + t.width / 2) - Math.round(r.width / 2),
t.width = Math.ceil(r.width),
t.height = Math.ceil(r.height),
n.attr({
transform: "translate(" + -1 * r.x + ",0)"
}),
n
},
"bpmn:TextAnnotation": function(e, t) {
var r = {
fill: "none",
stroke: "none"
},
i = h(e, t.width, t.height, 0, 0, r),
o = n.getScaledPath("TEXT_ANNOTATION", {
xScaleFactor: 1,
yScaleFactor: 1,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: 0,
my: 0
}
});
A(e, o);
var a = c(t).text || "";
return D(e, a, {
box: t,
align: "left-middle",
padding: 5
}),
i
},
ParticipantMultiplicityMarker: function(e, t) {
var r = n.getScaledPath("MARKER_PARALLEL", {
xScaleFactor: 1,
yScaleFactor: 1,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: t.width / 2 / t.width,
my: (t.height - 15) / t.height
}
});
_("participant-multiplicity", e, r)
},
SubProcessMarker: function(e, t) {
var r = h(e, 14, 14, 0, {
strokeWidth: 1
});
r.transform("translate(" + (t.width / 2 - 7.5) + "," + (t.height - 20) + ")");
var i = n.getScaledPath("MARKER_SUB_PROCESS", {
xScaleFactor: 1.5,
yScaleFactor: 1.5,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: (t.width / 2 - 7.5) / t.width,
my: (t.height - 20) / t.height
}
});
_("sub-process", e, i)
},
ParallelMarker: function(e, t, r) {
var i = n.getScaledPath("MARKER_PARALLEL", {
xScaleFactor: 1,
yScaleFactor: 1,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: (t.width / 2 + r.parallel) / t.width,
my: (t.height - 20) / t.height
}
});
_("parallel", e, i)
},
SequentialMarker: function(e, t, r) {
var i = n.getScaledPath("MARKER_SEQUENTIAL", {
xScaleFactor: 1,
yScaleFactor: 1,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: (t.width / 2 + r.seq) / t.width,
my: (t.height - 19) / t.height
}
});
_("sequential", e, i)
},
CompensationMarker: function(e, t, r) {
var i = n.getScaledPath("MARKER_COMPENSATION", {
xScaleFactor: 1,
yScaleFactor: 1,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: (t.width / 2 + r.compensation) / t.width,
my: (t.height - 13) / t.height
}
});
_("compensation", e, i, {
strokeWidth: 1
})
},
LoopMarker: function(e, t, r) {
var i = n.getScaledPath("MARKER_LOOP", {
xScaleFactor: 1,
yScaleFactor: 1,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: (t.width / 2 + r.loop) / t.width,
my: (t.height - 7) / t.height
}
});
_("loop", e, i, {
strokeWidth: 1,
fill: "none",
strokeLinecap: "round",
strokeMiterlimit: .5
})
},
AdhocMarker: function(e, t, r) {
var i = n.getScaledPath("MARKER_ADHOC", {
xScaleFactor: 1,
yScaleFactor: 1,
containerWidth: t.width,
containerHeight: t.height,
position: {
mx: (t.width / 2 + r.adhoc) / t.width,
my: (t.height - 15) / t.height
}
});
_("adhoc", e, i, {
strokeWidth: 1,
fill: "black"
})
}
};
e.on("canvas.init",
function(e) {
p(e.svg)
})
}
function i(e, t, n) {
function r(e, t) {
return g(t,
function(t, n) {
return e[n] == t
})
}
return x(e.eventDefinitions,
function(i) {
return i.$type === t && r(e, n)
})
}
function o(e) {
return "bpmn:IntermediateThrowEvent" === e.$type || "bpmn:EndEvent" === e.$type
}
function a(e) {
return e.isCollection || e.elementObjectRef && e.elementObjectRef.isCollection
}
function s(e) {
return e.businessObject.di
}
function c(e) {
return e.businessObject
}
function l(e) {
var t = e.x + e.width / 2,
n = e.y + e.height / 2,
r = e.width / 2,
i = [["M", t, n], ["m", 0, -r], ["a", r, r, 0, 1, 1, 0, 2 * r], ["a", r, r, 0, 1, 1, 0, -2 * r], ["z"]];
return S(i)
}
function u(e, t) {
var n = e.x,
r = e.y,
i = e.width,
o = e.height,
a = [["M", n + t, r], ["l", i - 2 * t, 0], ["a", t, t, 0, 0, 1, t, t], ["l", 0, o - 2 * t], ["a", t, t, 0, 0, 1, -t, t], ["l", 2 * t - i, 0], ["a", t, t, 0, 0, 1, -t, -t], ["l", 0, 2 * t - o], ["a", t, t, 0, 0, 1, t, -t], ["z"]];
return S(a)
}
function p(e) {
var t = e.width,
n = e.height,
r = e.x,
i = e.y,
o = t / 2,
a = n / 2,
s = [["M", r + o, i], ["l", o, a], ["l", -o, a], ["l", -o, -a], ["z"]];
return S(s)
}
function f(e) {
var t = e.x,
n = e.y,
r = e.width,
i = e.height,
o = [["M", t, n], ["l", r, 0], ["l", 0, i], ["l", -r, 0], ["z"]];
return S(o)
}
var h = e(77),
d = e(192),
m = e(197),
y = e(83),
g = e(80),
v = e(85),
x = e(88),
b = e(44),
E = e(69),
w = e(11),
A = e(13).is,
_ = e(68),
S = _.componentsToPath,
T = _.createLine,
C = 10,
R = 3,
N = {
fontFamily: "Arial, sans-serif",
fontSize: "12px"
};
h(r, b),
r.$inject = ["eventBus", "styles", "pathMap"],
t.exports = r,
r.prototype.canRender = function(e) {
return A(e, "bpmn:BaseElement")
},
r.prototype.drawShape = function(e, t) {
var n = t.type,
r = this.handlers[n];
return r(e, t)
},
r.prototype.drawConnection = function(e, t) {
var n = t.type,
r = this.handlers[n];
return r(e, t)
},
r.prototype.getShapePath = function(e) {
return A(e, "bpmn:Event") ? l(e) : A(e, "bpmn:Activity") ? u(e, C) : A(e, "bpmn:Gateway") ? p(e) : f(e)
}
},
{
11 : 11,
13 : 13,
192 : 192,
197 : 197,
44 : 44,
68 : 68,
69 : 69,
77 : 77,
80 : 80,
83 : 83,
85 : 85,
88 : 88
}],
4 : [function(e, t, n) {
"use strict";
function r() {
this.pathMap = {
EVENT_MESSAGE: {
d: "m {mx},{my} l 0,{e.y1} l {e.x1},0 l 0,-{e.y1} z l {e.x0},{e.y0} l {e.x0},-{e.y0}",
height: 36,
width: 36,
heightElements: [6, 14],
widthElements: [10.5, 21]
},
EVENT_SIGNAL: {
d: "M {mx},{my} l {e.x0},{e.y0} l -{e.x1},0 Z",
height: 36,
width: 36,
heightElements: [18],
widthElements: [10, 20]
},
EVENT_ESCALATION: {
d: "M {mx},{my} l {e.x0},{e.y0} l -{e.x0},-{e.y1} l -{e.x0},{e.y1} Z",
height: 36,
width: 36,
heightElements: [20, 7],
widthElements: [8]
},
EVENT_CONDITIONAL: {
d: "M {e.x0},{e.y0} l {e.x1},0 l 0,{e.y2} l -{e.x1},0 Z M {e.x2},{e.y3} l {e.x0},0 M {e.x2},{e.y4} l {e.x0},0 M {e.x2},{e.y5} l {e.x0},0 M {e.x2},{e.y6} l {e.x0},0 M {e.x2},{e.y7} l {e.x0},0 M {e.x2},{e.y8} l {e.x0},0 ",
height: 36,
width: 36,
heightElements: [8.5, 14.5, 18, 11.5, 14.5, 17.5, 20.5, 23.5, 26.5],
widthElements: [10.5, 14.5, 12.5]
},
EVENT_LINK: {
d: "m {mx},{my} 0,{e.y0} -{e.x1},0 0,{e.y1} {e.x1},0 0,{e.y0} {e.x0},-{e.y2} -{e.x0},-{e.y2} z",
height: 36,
width: 36,
heightElements: [4.4375, 6.75, 7.8125],
widthElements: [9.84375, 13.5]
},
EVENT_ERROR: {
d: "m {mx},{my} {e.x0},-{e.y0} {e.x1},-{e.y1} {e.x2},{e.y2} {e.x3},-{e.y3} -{e.x4},{e.y4} -{e.x5},-{e.y5} z",
height: 36,
width: 36,
heightElements: [.023, 8.737, 8.151, 16.564, 10.591, 8.714],
widthElements: [.085, 6.672, 6.97, 4.273, 5.337, 6.636]
},
EVENT_CANCEL_45: {
d: "m {mx},{my} -{e.x1},0 0,{e.x0} {e.x1},0 0,{e.y1} {e.x0},0 0,-{e.y1} {e.x1},0 0,-{e.y0} -{e.x1},0 0,-{e.y1} -{e.x0},0 z",
height: 36,
width: 36,
heightElements: [4.75, 8.5],
widthElements: [4.75, 8.5]
},
EVENT_COMPENSATION: {
d: "m {mx},{my} {e.x0},-{e.y0} 0,{e.y1} z m {e.x1},-{e.y2} {e.x2},-{e.y3} 0,{e.y1} -{e.x2},-{e.y3} z",
height: 36,
width: 36,
heightElements: [6.5, 13, .4, 6.1],
widthElements: [9, 9.3, 8.7]
},
EVENT_TIMER_WH: {
d: "M {mx},{my} l {e.x0},-{e.y0} m -{e.x0},{e.y0} l {e.x1},{e.y1} ",
height: 36,
width: 36,
heightElements: [10, 2],
widthElements: [3, 7]
},
EVENT_TIMER_LINE: {
d: "M {mx},{my} m {e.x0},{e.y0} l -{e.x1},{e.y1} ",
height: 36,
width: 36,
heightElements: [10, 3],
widthElements: [0, 0]
},
EVENT_MULTIPLE: {
d: "m {mx},{my} {e.x1},-{e.y0} {e.x1},{e.y0} -{e.x0},{e.y1} -{e.x2},0 z",
height: 36,
width: 36,
heightElements: [6.28099, 12.56199],
widthElements: [3.1405, 9.42149, 12.56198]
},
EVENT_PARALLEL_MULTIPLE: {
d: "m {mx},{my} {e.x0},0 0,{e.y1} {e.x1},0 0,{e.y0} -{e.x1},0 0,{e.y1} -{e.x0},0 0,-{e.y1} -{e.x1},0 0,-{e.y0} {e.x1},0 z",
height: 36,
width: 36,
heightElements: [2.56228, 7.68683],
widthElements: [2.56228, 7.68683]
},
GATEWAY_EXCLUSIVE: {
d: "m {mx},{my} {e.x0},{e.y0} {e.x1},{e.y0} {e.x2},0 {e.x4},{e.y2} {e.x4},{e.y1} {e.x2},0 {e.x1},{e.y3} {e.x0},{e.y3} {e.x3},0 {e.x5},{e.y1} {e.x5},{e.y2} {e.x3},0 z",
height: 17.5,
width: 17.5,
heightElements: [8.5, 6.5312, -6.5312, -8.5],
widthElements: [6.5, -6.5, 3, -3, 5, -5]
},
GATEWAY_PARALLEL: {
d: "m {mx},{my} 0,{e.y1} -{e.x1},0 0,{e.y0} {e.x1},0 0,{e.y1} {e.x0},0 0,-{e.y1} {e.x1},0 0,-{e.y0} -{e.x1},0 0,-{e.y1} -{e.x0},0 z",
height: 30,
width: 30,
heightElements: [5, 12.5],
widthElements: [5, 12.5]
},
GATEWAY_EVENT_BASED: {
d: "m {mx},{my} {e.x0},{e.y0} {e.x0},{e.y1} {e.x1},{e.y2} {e.x2},0 z",
height: 11,
width: 11,
heightElements: [ - 6, 6, 12, -12],
widthElements: [9, -3, -12]
},
GATEWAY_COMPLEX: {
d: "m {mx},{my} 0,{e.y0} -{e.x0},-{e.y1} -{e.x1},{e.y2} {e.x0},{e.y1} -{e.x2},0 0,{e.y3} {e.x2},0 -{e.x0},{e.y1} l {e.x1},{e.y2} {e.x0},-{e.y1} 0,{e.y0} {e.x3},0 0,-{e.y0} {e.x0},{e.y1} {e.x1},-{e.y2} -{e.x0},-{e.y1} {e.x2},0 0,-{e.y3} -{e.x2},0 {e.x0},-{e.y1} -{e.x1},-{e.y2} -{e.x0},{e.y1} 0,-{e.y0} -{e.x3},0 z",
height: 17.125,
width: 17.125,
heightElements: [4.875, 3.4375, 2.125, 3],
widthElements: [3.4375, 2.125, 4.875, 3]
},
DATA_OBJECT_PATH: {
d: "m 0,0 {e.x1},0 {e.x0},{e.y0} 0,{e.y1} -{e.x2},0 0,-{e.y2} {e.x1},0 0,{e.y0} {e.x0},0",
height: 61,
width: 51,
heightElements: [10, 50, 60],
widthElements: [10, 40, 50, 60]
},
DATA_OBJECT_COLLECTION_PATH: {
d: "m {mx}, {my} m 0 15 l 0 -15 m 4 15 l 0 -15 m 4 15 l 0 -15 ",
height: 61,
width: 51,
heightElements: [12],
widthElements: [1, 6, 12, 15]
},
DATA_ARROW: {
d: "m 5,9 9,0 0,-3 5,5 -5,5 0,-3 -9,0 z",
height: 61,
width: 51,
heightElements: [],
widthElements: []
},
DATA_STORE: {
d: "m {mx},{my} l 0,{e.y2} c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0 l 0,-{e.y2} c -{e.x0},-{e.y1} -{e.x1},-{e.y1} -{e.x2},0c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0 m -{e.x2},{e.y0}c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0m -{e.x2},{e.y0}c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0",
height: 61,
width: 61,
heightElements: [7, 10, 45],
widthElements: [2, 58, 60]
},
TEXT_ANNOTATION: {
d: "m {mx}, {my} m 10,0 l -10,0 l 0,{e.y0} l 10,0",
height: 30,
width: 10,
heightElements: [30],
widthElements: [10]
},
MARKER_SUB_PROCESS: {
d: "m{mx},{my} m 7,2 l 0,10 m -5,-5 l 10,0",
height: 10,
width: 10,
heightElements: [],
widthElements: []
},
MARKER_PARALLEL: {
d: "m{mx},{my} m 3,2 l 0,10 m 3,-10 l 0,10 m 3,-10 l 0,10",
height: 10,
width: 10,
heightElements: [],
widthElements: []
},
MARKER_SEQUENTIAL: {
d: "m{mx},{my} m 0,3 l 10,0 m -10,3 l 10,0 m -10,3 l 10,0",
height: 10,
width: 10,
heightElements: [],
widthElements: []
},
MARKER_COMPENSATION: {
d: "m {mx},{my} 7,-5 0,10 z m 7.1,-0.3 6.9,-4.7 0,10 -6.9,-4.7 z",
height: 10,
width: 21,
heightElements: [],
widthElements: []
},
MARKER_LOOP: {
d: "m {mx},{my} c 3.526979,0 6.386161,-2.829858 6.386161,-6.320661 0,-3.490806 -2.859182,-6.320661 -6.386161,-6.320661 -3.526978,0 -6.38616,2.829855 -6.38616,6.320661 0,1.745402 0.714797,3.325567 1.870463,4.469381 0.577834,0.571908 1.265885,1.034728 2.029916,1.35457 l -0.718163,-3.909793 m 0.718163,3.909793 -3.885211,0.802902",
height: 13.9,
width: 13.7,
heightElements: [],
widthElements: []
},
MARKER_ADHOC: {
d: "m {mx},{my} m 0.84461,2.64411 c 1.05533,-1.23780996 2.64337,-2.07882 4.29653,-1.97997996 2.05163,0.0805 3.85579,1.15803 5.76082,1.79107 1.06385,0.34139996 2.24454,0.1438 3.18759,-0.43767 0.61743,-0.33642 1.2775,-0.64078 1.7542,-1.17511 0,0.56023 0,1.12046 0,1.6807 -0.98706,0.96237996 -2.29792,1.62393996 -3.6918,1.66181996 -1.24459,0.0927 -2.46671,-0.2491 -3.59505,-0.74812 -1.35789,-0.55965 -2.75133,-1.33436996 -4.27027,-1.18121996 -1.37741,0.14601 -2.41842,1.13685996 -3.44288,1.96782996 z",
height: 4,
width: 15,
heightElements: [],
widthElements: []
},
TASK_TYPE_SEND: {
d: "m {mx},{my} l 0,{e.y1} l {e.x1},0 l 0,-{e.y1} z l {e.x0},{e.y0} l {e.x0},-{e.y0}",
height: 14,
width: 21,
heightElements: [6, 14],
widthElements: [10.5, 21]
},
TASK_TYPE_SCRIPT: {
d: "m {mx},{my} c 9.966553,-6.27276 -8.000926,-7.91932 2.968968,-14.938 l -8.802728,0 c -10.969894,7.01868 6.997585,8.66524 -2.968967,14.938 z m -7,-12 l 5,0 m -4.5,3 l 4.5,0 m -3,3 l 5,0m -4,3 l 5,0",
height: 15,
width: 12.6,
heightElements: [6, 14],
widthElements: [10.5, 21]
},
TASK_TYPE_USER_1: {
d: "m {mx},{my} c 0.909,-0.845 1.594,-2.049 1.594,-3.385 0,-2.554 -1.805,-4.62199999 -4.357,-4.62199999 -2.55199998,0 -4.28799998,2.06799999 -4.28799998,4.62199999 0,1.348 0.974,2.562 1.89599998,3.405 -0.52899998,0.187 -5.669,2.097 -5.794,4.7560005 v 6.718 h 17 v -6.718 c 0,-2.2980005 -5.5279996,-4.5950005 -6.0509996,-4.7760005 zm -8,6 l 0,5.5 m 11,0 l 0,-5"
},
TASK_TYPE_USER_2: {
d: "m {mx},{my} m 2.162,1.009 c 0,2.4470005 -2.158,4.4310005 -4.821,4.4310005 -2.66499998,0 -4.822,-1.981 -4.822,-4.4310005 "
},
TASK_TYPE_USER_3: {
d: "m {mx},{my} m -6.9,-3.80 c 0,0 2.25099998,-2.358 4.27399998,-1.177 2.024,1.181 4.221,1.537 4.124,0.965 -0.098,-0.57 -0.117,-3.79099999 -4.191,-4.13599999 -3.57499998,0.001 -4.20799998,3.36699999 -4.20699998,4.34799999 z"
},
TASK_TYPE_MANUAL: {
d: "m {mx},{my} c 0.234,-0.01 5.604,0.008 8.029,0.004 0.808,0 1.271,-0.172 1.417,-0.752 0.227,-0.898 -0.334,-1.314 -1.338,-1.316 -2.467,-0.01 -7.886,-0.004 -8.108,-0.004 -0.014,-0.079 0.016,-0.533 0,-0.61 0.195,-0.042 8.507,0.006 9.616,0.002 0.877,-0.007 1.35,-0.438 1.353,-1.208 0.003,-0.768 -0.479,-1.09 -1.35,-1.091 -2.968,-0.002 -9.619,-0.013 -9.619,-0.013 v -0.591 c 0,0 5.052,-0.016 7.225,-0.016 0.888,-0.002 1.354,-0.416 1.351,-1.193 -0.006,-0.761 -0.492,-1.196 -1.361,-1.196 -3.473,-0.005 -10.86,-0.003 -11.0829995,-0.003 -0.022,-0.047 -0.045,-0.094 -0.069,-0.139 0.3939995,-0.319 2.0409995,-1.626 2.4149995,-2.017 0.469,-0.4870005 0.519,-1.1650005 0.162,-1.6040005 -0.414,-0.511 -0.973,-0.5 -1.48,-0.236 -1.4609995,0.764 -6.5999995,3.6430005 -7.7329995,4.2710005 -0.9,0.499 -1.516,1.253 -1.882,2.19 -0.37000002,0.95 -0.17,2.01 -0.166,2.979 0.004,0.718 -0.27300002,1.345 -0.055,2.063 0.629,2.087 2.425,3.312 4.859,3.318 4.6179995,0.014 9.2379995,-0.139 13.8569995,-0.158 0.755,-0.004 1.171,-0.301 1.182,-1.033 0.012,-0.754 -0.423,-0.969 -1.183,-0.973 -1.778,-0.01 -5.824,-0.004 -6.04,-0.004 10e-4,-0.084 0.003,-0.586 10e-4,-0.67 z"
},
TASK_TYPE_INSTANTIATING_SEND: {
d: "m {mx},{my} l 0,8.4 l 12.6,0 l 0,-8.4 z l 6.3,3.6 l 6.3,-3.6"
},
TASK_TYPE_SERVICE: {
d: "m {mx},{my} v -1.71335 c 0.352326,-0.0705 0.703932,-0.17838 1.047628,-0.32133 0.344416,-0.14465 0.665822,-0.32133 0.966377,-0.52145 l 1.19431,1.18005 1.567487,-1.57688 -1.195028,-1.18014 c 0.403376,-0.61394 0.683079,-1.29908 0.825447,-2.01824 l 1.622133,-0.01 v -2.2196 l -1.636514,0.01 c -0.07333,-0.35153 -0.178319,-0.70024 -0.323564,-1.04372 -0.145244,-0.34406 -0.321407,-0.6644 -0.522735,-0.96217 l 1.131035,-1.13631 -1.583305,-1.56293 -1.129598,1.13589 c -0.614052,-0.40108 -1.302883,-0.68093 -2.022633,-0.82247 l 0.0093,-1.61852 h -2.241173 l 0.0042,1.63124 c -0.353763,0.0736 -0.705369,0.17977 -1.049785,0.32371 -0.344415,0.14437 -0.665102,0.32092 -0.9635006,0.52046 l -1.1698628,-1.15823 -1.5667691,1.5792 1.1684265,1.15669 c -0.4026573,0.61283 -0.68308,1.29797 -0.8247287,2.01713 l -1.6588041,0.003 v 2.22174 l 1.6724648,-0.006 c 0.073327,0.35077 0.1797598,0.70243 0.3242851,1.04472 0.1452428,0.34448 0.3214064,0.6644 0.5227339,0.96066 l -1.1993431,1.19723 1.5840256,1.56011 1.1964668,-1.19348 c 0.6140517,0.40346 1.3028827,0.68232 2.0233517,0.82331 l 7.19e-4,1.69892 h 2.226848 z m 0.221462,-3.9957 c -1.788948,0.7502 -3.8576,-0.0928 -4.6097055,-1.87438 -0.7521065,-1.78321 0.090598,-3.84627 1.8802645,-4.59604 1.78823,-0.74936 3.856881,0.0929 4.608987,1.87437 0.752106,1.78165 -0.0906,3.84612 -1.879546,4.59605 z"
},
TASK_TYPE_SERVICE_FILL: {
d: "m {mx},{my} c -1.788948,0.7502 -3.8576,-0.0928 -4.6097055,-1.87438 -0.7521065,-1.78321 0.090598,-3.84627 1.8802645,-4.59604 1.78823,-0.74936 3.856881,0.0929 4.608987,1.87437 0.752106,1.78165 -0.0906,3.84612 -1.879546,4.59605 z"
},
TASK_TYPE_BUSINESS_RULE_HEADER: {
d: "m {mx},{my} 0,4 20,0 0,-4 z"
},
TASK_TYPE_BUSINESS_RULE_MAIN: {
d: "m {mx},{my} 0,12 20,0 0,-12 zm 0,8 l 20,0 m -13,-4 l 0,8"
},
MESSAGE_FLOW_MARKER: {
d: "m {mx},{my} m -10.5 ,-7 l 0,14 l 21,0 l 0,-14 z l 10.5,6 l 10.5,-6"
}
},
this.getRawPath = function(e) {
return this.pathMap[e].d
},
this.getScaledPath = function(e, t) {
var n, r, o = this.pathMap[e];
t.abspos ? (n = t.abspos.x, r = t.abspos.y) : (n = t.containerWidth * t.position.mx, r = t.containerHeight * t.position.my);
var a = {};
if (t.position) {
for (var s = t.containerHeight / o.height * t.yScaleFactor,
c = t.containerWidth / o.width * t.xScaleFactor,
l = 0; l < o.heightElements.length; l++) a["y" + l] = o.heightElements[l] * s;
for (var u = 0; u < o.widthElements.length; u++) a["x" + u] = o.widthElements[u] * c
}
var p = i.format(o.d, {
mx: n,
my: r,
e: a
});
return p
}
}
var i = e(76);
t.exports = r
},
{
76 : 76
}],
5 : [function(e, t, n) {
t.exports = {
__init__: ["bpmnRenderer"],
bpmnRenderer: ["type", e(3)],
pathMap: ["type", e(4)]
}
},
{
3 : 3,
4 : 4
}],
6 : [function(e, t, n) {
"use strict";
function r(e, t) {
return s({
id: e.id,
type: e.$type,
businessObject: e
},
t)
}
function i(e) {
return c(e,
function(e) {
return {
x: e.x,
y: e.y
}
})
}
function o(e, t, n, r) {
return new Error(e("element {element} referenced by {referenced}#{property} not yet drawn", {
element: d(n),
referenced: d(t),
property: r
}))
}
function a(e, t, n, r, i) {
this._eventBus = e,
this._canvas = t,
this._elementFactory = n,
this._elementRegistry = r,
this._translate = i
}
var s = e(197),
c = e(86),
l = e(12),
u = e(13).is,
p = l.hasExternalLabel,
f = l.getExternalLabelBounds,
h = e(11).isExpanded,
d = e(9).elementToString;
a.$inject = ["eventBus", "canvas", "elementFactory", "elementRegistry", "translate"],
t.exports = a,
a.prototype.add = function(e, t) {
var n, o, a = e.di,
s = this._translate;
if (u(a, "bpmndi:BPMNPlane")) n = this._elementFactory.createRoot(r(e)),
this._canvas.setRootElement(n);
else if (u(a, "bpmndi:BPMNShape")) {
var c = !h(e);
o = t && (t.hidden || t.collapsed);
var l = e.di.bounds;
n = this._elementFactory.createShape(r(e, {
collapsed: c,
hidden: o,
x: Math.round(l.x),
y: Math.round(l.y),
width: Math.round(l.width),
height: Math.round(l.height)
})),
u(e, "bpmn:BoundaryEvent") && this._attachBoundary(e, n),
this._canvas.addShape(n, t)
} else {
if (!u(a, "bpmndi:BPMNEdge")) throw new Error(s("unknown di {di} for element {semantic}", {
di: d(a),
semantic: d(e)
}));
var f = this._getSource(e),
m = this._getTarget(e);
o = t && (t.hidden || t.collapsed),
n = this._elementFactory.createConnection(r(e, {
hidden: o,
source: f,
target: m,
waypoints: i(e.di.waypoint)
})),
(u(e, "bpmn:DataInputAssociation") || u(e, "bpmn:DataOutputAssociation")) && (t = null),
this._canvas.addConnection(n, t)
}
return p(e) && this.addLabel(e, n),
this._eventBus.fire("bpmnElement.added", {
element: n
}),
n
},
a.prototype._attachBoundary = function(e, t) {
var n = this._translate,
r = e.attachedToRef;
if (!r) throw new Error(n("missing {semantic}#attachedToRef", {
semantic: d(e)
}));
var i = this._elementRegistry.get(r.id),
a = i && i.attachers;
if (!i) throw o(n, e, r, "attachedToRef");
t.host = i,
a || (i.attachers = a = []),
a.indexOf(t) === -1 && a.push(t)
},
a.prototype.addLabel = function(e, t) {
var n = f(e, t),
i = this._elementFactory.createLabel(r(e, {
id: e.id + "_label",
labelTarget: t,
type: "label",
hidden: t.hidden || !e.name,
x: Math.round(n.x),
y: Math.round(n.y),
width: Math.round(n.width),
height: Math.round(n.height)
}));
return this._canvas.addShape(i, t.parent)
},
a.prototype._getEnd = function(e, t) {
var n, r, i = e.$type,
a = this._translate;
if (r = e[t + "Ref"], "source" === t && "bpmn:DataInputAssociation" === i && (r = r && r[0]), ("source" === t && "bpmn:DataOutputAssociation" === i || "target" === t && "bpmn:DataInputAssociation" === i) && (r = e.$parent), n = r && this._getElement(r)) return n;
throw r ? o(a, e, r, t + "Ref") : new Error(a("{semantic}#{side} Ref not specified", {
semantic: d(e),
side: t
}))
},
a.prototype._getSource = function(e) {
return this._getEnd(e, "source")
},
a.prototype._getTarget = function(e) {
return this._getEnd(e, "target")
},
a.prototype._getElement = function(e) {
return this._elementRegistry.get(e.id)
}
},
{
11 : 11,
12 : 12,
13 : 13,
197 : 197,
86 : 86,
9 : 9
}],
7 : [function(e, t, n) {
"use strict";
function r(e, t) {
return e.$instanceOf(t)
}
function i(e) {
return s(e.rootElements,
function(e) {
return r(e, "bpmn:Process") || r(e, "bpmn:Collaboration")
})
}
function o(e, t) {
function n(e, t) {
return function(n) {
e(n, t)
}
}
function o(e) {
z[e.id] = e
}
function s(e) {
return z[e.id]
}
function l(n, r) {
var i = n.gfx;
if (i) throw new Error(t("already rendered {element}", {
element: u(n)
}));
return e.element(n, r)
}
function f(t, n) {
return e.root(t, n)
}
function h(e, n) {
try {
var r = e.di && l(e, n);
return o(e),
r
} catch(n) {
d(n.message, {
element: e,
error: n
}),
console.error(t("failed to import {element}", {
element: u(e)
})),
console.error(n)
}
}
function d(t, n) {
e.error(t, n)
}
function m(e) {
var n = e.bpmnElement;
n ? n.di ? d(t("multiple DI elements defined for {element}", {
element: u(n)
}), {
element: n
}) : (p.bind(n, "di"), n.di = e) : d(t("no bpmnElement referenced in {element}", {
element: u(e)
}), {
element: e
})
}
function y(e) {
g(e.plane)
}
function g(e) {
m(e),
c(e.planeElement, v)
}
function v(e) {
m(e)
}
function x(e, n) {
var o = e.diagrams;
if (n && o.indexOf(n) === -1) throw new Error(t("diagram not part of bpmn:Definitions"));
if (!n && o && o.length && (n = o[0]), !n) throw new Error(t("no diagram to display"));
y(n);
var a = n.plane;
if (!a) throw new Error(t("no plane for {element}", {
element: u(n)
}));
var s = a.bpmnElement;
if (!s) {
if (s = i(e), !s) throw new Error(t("no process or collaboration to display"));
d(t("correcting missing bpmnElement on {plane} to {rootElement}", {
plane: u(a),
rootElement: u(s)
})),
a.bpmnElement = s,
m(a)
}
var c = f(s, a);
if (r(s, "bpmn:Process")) E(s, c);
else {
if (!r(s, "bpmn:Collaboration")) throw new Error(t("unsupported bpmnElement for {plane}: {rootElement}", {
plane: u(a),
rootElement: u(s)
}));
U(s, c),
w(e.rootElements, c)
}
b(q)
}
function b(e) {
c(e,
function(e) {
e()
})
}
function E(e, t) {
j(e, t),
M(e.ioSpecification, t),
N(e.artifacts, t),
o(e)
}
function w(e) {
var t = a(e,
function(e) {
return ! s(e) && r(e, "bpmn:Process") && e.laneSets
});
t.forEach(n(E))
}
function A(e, t) {
h(e, t)
}
function _(e, t) {
c(e, n(A, t))
}
function S(e, t) {
h(e, t)
}
function T(e, t) {
h(e, t)
}
function C(e, t) {
h(e, t)
}
function R(e, t) {
h(e, t)
}
function N(e, t) {
c(e,
function(e) {
r(e, "bpmn:Association") ? q.push(function() {
R(e, t)
}) : R(e, t)
})
}
function M(e, t) {
e && (c(e.dataInputs, n(T, t)), c(e.dataOutputs, n(C, t)))
}
function P(e, t) {
j(e, t),
N(e.artifacts, t)
}
function D(e, t) {
var i = h(e, t);
r(e, "bpmn:SubProcess") && P(e, i || t),
r(e, "bpmn:Activity") && M(e.ioSpecification, t),
q.push(function() {
c(e.dataInputAssociations, n(S, t)),
c(e.dataOutputAssociations, n(S, t))
})
}
function k(e, t) {
h(e, t)
}
function O(e, t) {
h(e, t)
}
function B(e, t) {
h(e, t)
}
function I(e, t) {
var n = h(e, t);
e.childLaneSet && L(e.childLaneSet, n || t),
W(e)
}
function L(e, t) {
c(e.lanes, n(I, t))
}
function F(e, t) {
c(e, n(L, t))
}
function j(e, t) {
e.laneSets && F(e.laneSets, t),
V(e.flowElements, t)
}
function V(e, n) {
c(e,
function(e) {
r(e, "bpmn:SequenceFlow") ? q.push(function() {
k(e, n)
}) : r(e, "bpmn:BoundaryEvent") ? q.unshift(function() {
B(e, n)
}) : r(e, "bpmn:FlowNode") ? D(e, n) : r(e, "bpmn:DataObject") || (r(e, "bpmn:DataStoreReference") ? O(e, n) : r(e, "bpmn:DataObjectReference") ? O(e, n) : d(t("unrecognized flowElement {element} in context {context}", {
element: u(e),
context: n ? u(n.businessObject) : "null"
}), {
element: e,
context: n
}))
})
}
function G(e, t) {
var n = h(e, t),
r = e.processRef;
r && E(r, n || t)
}
function U(e) {
c(e.participants, n(G)),
N(e.artifacts),
q.push(function() {
_(e.messageFlows)
})
}
function W(e) {
c(e.flowNodeRef,
function(t) {
var n = t.get("lanes");
n && n.push(e)
})
}
var z = {},
q = [];
return {
handleDefinitions: x
}
}
var a = e(81),
s = e(82),
c = e(83),
l = e(224),
u = e(9).elementToString,
p = new l({
name: "bpmnElement",
enumerable: !0
},
{
name: "di"
});
t.exports = o
},
{
224 : 224,
81 : 81,
82 : 82,
83 : 83,
9 : 9
}],
8 : [function(e, t, n) {
"use strict";
function r(e, t, n) {
function r(e) {
var t = {
root: function(e) {
return a.add(e)
},
element: function(e, t) {
return a.add(e, t)
},
error: function(e, t) {
l.push({
message: e,
context: t
})
}
},
n = new i(t, c);
n.handleDefinitions(e)
}
var o, a = e.get("bpmnImporter"),
s = e.get("eventBus"),
c = e.get("translate"),
l = [];
s.fire("import.render.start", {
definitions: t
});
try {
r(t)
} catch(e) {
o = e
}
s.fire("import.render.complete", {
error: o,
warnings: l
}),
n(o, l)
}
var i = e(7);
t.exports.importBpmnDiagram = r
},
{
7 : 7
}],
9 : [function(e, t, n) {
"use strict";
t.exports.elementToString = function(e) {
return e ? "<" + e.$type + (e.id ? ' id="' + e.id: "") + '" />': ""
}
},
{}],
10 : [function(e, t, n) {
t.exports = {
__depends__: [e(58)],
bpmnImporter: ["type", e(6)]
}
},
{
58 : 58,
6 : 6
}],
11 : [function(e, t, n) {
"use strict";
var r = e(13).is,
i = e(13).getBusinessObject;
t.exports.isExpanded = function(e) {
return ! r(e, "bpmn:CallActivity") && (r(e, "bpmn:SubProcess") ? !!i(e).di.isExpanded: !r(e, "bpmn:Participant") || !!i(e).processRef)
},
t.exports.isInterrupting = function(e) {
return e && i(e).isInterrupting !== !1
},
t.exports.isEventSubProcess = function(e) {
return e && !!i(e).triggeredByEvent
}
},
{
13 : 13
}],
12 : [function(e, t, n) {
"use strict";
function r(e) {
var t = e.length / 2 - 1,
n = e[Math.floor(t)],
r = e[Math.ceil(t + .01)],
o = i(e),
a = Math.atan((r.y - n.y) / (r.x - n.x)),
s = o.x,
c = o.y;
return Math.abs(a) < Math.PI / 2 ? c -= l: s += l,
{
x: s,
y: c
}
}
function i(e) {
var t = e.length / 2 - 1,
n = e[Math.floor(t)],
r = e[Math.ceil(t + .01)];
return {
x: n.x + (r.x - n.x) / 2,
y: n.y + (r.y - n.y) / 2
}
}
function o(e) {
return e.waypoints ? r(e.waypoints) : {
x: e.x + e.width / 2,
y: e.y + e.height + c.height / 2
}
}
var a = e(197),
s = e(13).is,
c = t.exports.DEFAULT_LABEL_SIZE = {
width: 90,
height: 20
},
l = t.exports.FLOW_LABEL_INDENT = 15;
t.exports.hasExternalLabel = function(e) {
return s(e, "bpmn:Event") || s(e, "bpmn:Gateway") || s(e, "bpmn:DataStoreReference") || s(e, "bpmn:DataObjectReference") || s(e, "bpmn:SequenceFlow") || s(e, "bpmn:MessageFlow")
},
t.exports.getFlowLabelPosition = r,
t.exports.getWaypointsMid = i,
t.exports.getExternalLabelMid = o,
t.exports.getExternalLabelBounds = function(e, t) {
var n, r, i, s = e.di,
l = s.label;
return l && l.bounds ? (i = l.bounds, r = {
width: Math.max(c.width, i.width),
height: i.height
},
n = {
x: i.x + i.width / 2,
y: i.y + i.height / 2
}) : (n = o(t), r = c),
a({
x: n.x - r.width / 2,
y: n.y - r.height / 2
},
r)
}
},
{
13 : 13,
197 : 197
}],
13 : [function(e, t, n) {
"use strict";
function r(e, t) {
var n = i(e);
return n && "function" == typeof n.$instanceOf && n.$instanceOf(t)
}
function i(e) {
return e && e.businessObject || e
}
t.exports.is = r,
t.exports.getBusinessObject = i
},
{}],
14 : [function(e, t, n) {
"use strict";
function r(e) {
return e.join(";")
}
function i() {
o || (o = a(f), s.bind(o, ".backdrop", "click",
function(e) {
document.body.removeChild(o)
})),
document.body.appendChild(o)
}
var o, a = e(212),
s = e(211),
c = t.exports.BPMNIO_LOGO = "iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAMAAADypuvZAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAADBQTFRFiMte9PrwldFwfcZPqtqN0+zEyOe1XLgjvuKncsJAZ70y6fXh3vDT////UrQV////G2zN+AAAABB0Uk5T////////////////////AOAjXRkAAAHDSURBVHjavJZJkoUgDEBJmAX8979tM8u3E6x20VlYJfFFMoL4vBDxATxZcakIOJTWSmxvKWVIkJ8jHvlRv1F2LFrVISCZI+tCtQx+XfewgVTfyY3plPiQEAzI3zWy+kR6NBhFBYeBuscJLOUuA2WVLpCjVIaFzrNQZArxAZKUQm6gsj37L9Cb7dnIBUKxENaaMJQqMpDXvSL+ktxdGRm2IsKgJGGPg7atwUG5CcFUEuSv+CwQqizTrvDTNXdMU2bMiDWZd8d7QIySWVRsb2vBBioxOFt4OinPBapL+neAb5KL5IJ8szOza2/DYoipUCx+CjO0Bpsv0V6mktNZ+k8rlABlWG0FrOpKYVo8DT3dBeLEjUBAj7moDogVii7nSS9QzZnFcOVBp1g2PyBQ3Vr5aIapN91VJy33HTJLC1iX2FY6F8gRdaAeIEfVONgtFCzZTmoLEdOjBDfsIOA6128gw3eu1shAajdZNAORxuQDJN5A5PbEG6gNIu24QJD5iNyRMZIr6bsHbCtCU/OaOaSvgkUyDMdDa1BXGf5HJ1To+/Ym6mCKT02Y+/Sa126ZKyd3jxhzpc1r8zVL6YM1Qy/kR4ABAFJ6iQUnivhAAAAAAElFTkSuQmCC",
l = r(["z-index: 1001", "position: fixed", "top: 0", "left: 0", "right: 0", "bottom: 0"]),
u = r(["width: 100%", "height: 100%", "background: rgba(0,0,0,0.2)"]),
p = r(["position: absolute", "left: 50%", "top: 40%", "margin: 0 -130px", "width: 260px", "padding: 10px", "background: white", "border: solid 1px #AAA", "border-radius: 3px", "font-family: Helvetica, Arial, sans-serif", "font-size: 14px", "line-height: 1.2em"]),
f = '
Web-based tooling for BPMN, DMN and CMMN diagrams powered by bpmn.io.
';
t.exports.open = i
},
{
211 : 211,
212 : 212
}],
15 : [function(e, t, n) {
t.exports = e(17)
},
{
17 : 17
}],
16 : [function(e, t, n) {
"use strict";
function r(e, t) {
s.call(this, e, t)
}
var i = e(194),
o = e(189),
a = e(197),
s = e(23),
c = e(19),
l = e(20);
r.prototype = Object.create(s.prototype),
t.exports = r,
r.prototype.fromXML = function(e, t, n, r) {
i(t) || (r = n, n = t, t = "bpmn:Definitions"),
o(n) && (r = n, n = {});
var s = new c(a({
model: this,
lax: !0
},
n)),
l = s.handler(t);
s.fromXML(e, l, r)
},
r.prototype.toXML = function(e, t, n) {
o(t) && (n = t, t = {});
var r = new l(t);
try {
var i = r.toXML(e);
n(null, i)
} catch(e) {
n(e)
}
}
},
{
189 : 189,
19 : 19,
194 : 194,
197 : 197,
20 : 20,
23 : 23
}],
17 : [function(e, t, n) {
"use strict";
var r = e(197),
i = e(16),
o = {
bpmn: e(32),
bpmndi: e(33),
dc: e(34),
di: e(35)
};
t.exports = function(e, t) {
return new i(r({},
o, e), t)
}
},
{
16 : 16,
197 : 197,
32 : 32,
33 : 33,
34 : 34,
35 : 35
}],
18 : [function(e, t, n) {
"use strict";
function r(e) {
return e.charAt(0).toUpperCase() + e.slice(1)
}
function i(e) {
return e.charAt(0).toLowerCase() + e.slice(1)
}
function o(e) {
return e.xml && "lowerCase" === e.xml.tagAlias
}
function a(e) {
return e.xml && e.xml.serialize
}
t.exports.aliasToName = function(e, t) {
return o(t) ? r(e) : e
},
t.exports.nameToAlias = function(e, t) {
return o(t) ? i(e) : e
},
t.exports.DEFAULT_NS_MAP = {
xsi: "http://www.w3.org/2001/XMLSchema-instance"
};
var s = t.exports.XSI_TYPE = "xsi:type";
t.exports.serializeAsType = function(e) {
return a(e) === s
},
t.exports.serializeAsProperty = function(e) {
return "property" === a(e)
}
},
{}],
19 : [function(e, t, n) {
"use strict";
function r(e) {
var t = e.attributes;
return v(t,
function(e, t, n) {
var r, i;
return t.local ? (i = T(t.name, t.prefix), r = i.name) : r = t.prefix,
e[r] = t.value,
e
},
{})
}
function i(e, t, n) {
var r, i = T(t.value),
o = e.ns[i.prefix || ""],
a = i.localName,
s = o && n.getPackage(o);
s && (r = s.xml && s.xml.typePrefix, r && 0 === a.indexOf(r) && (a = a.slice(r.length)), t.value = s.prefix + ":" + a)
}
function o(e, t, n) {
var r, a;
if (r = e.uri || n) {
var s = t.getPackage(r);
a = s ? s.prefix: e.prefix,
e.prefix = a,
e.uri = r
}
x(e.attributes,
function(n) {
n.uri === D && "type" === n.local && i(e, n, t),
o(n, t, null)
})
}
function a(e) {
return new Error(e)
}
function s(e) {
return e.$descriptor
}
function c(e) {
E(this, e),
this.elementsById = {},
this.references = [],
this.warnings = [],
this.addReference = function(e) {
this.references.push(e)
},
this.addElement = function(e) {
if (!e) throw a("expected element");
var t, n = this.elementsById,
r = s(e),
i = r.idProperty;
if (i && (t = e.get(i.name))) {
if (n[t]) throw a("duplicate ID <" + t + ">");
n[t] = e
}
},
this.addWarning = function(e) {
this.warnings.push(e)
}
}
function l() {}
function u() {}
function p() {}
function f(e, t) {
this.property = e,
this.context = t
}
function h(e, t) {
this.element = t,
this.propertyDesc = e
}
function d() {}
function m(e, t, n) {
this.model = e,
this.type = e.getType(t),
this.context = n
}
function y(e, t, n) {
this.model = e,
this.context = n
}
function g(e) {
e instanceof S && (e = {
model: e
}),
E(this, {
lax: !1
},
e)
}
var v = e(87),
x = e(83),
b = e(82),
E = e(197),
w = e(92),
A = e(22),
_ = e(21).parser,
S = e(23),
T = e(28).parseName,
C = e(31),
R = C.coerceType,
N = C.isSimple,
M = e(18),
P = M.XSI_TYPE,
D = M.DEFAULT_NS_MAP.xsi,
k = M.serializeAsType,
O = M.aliasToName;
l.prototype.handleEnd = function() {},
l.prototype.handleText = function() {},
l.prototype.handleNode = function() {},
u.prototype = new l,
u.prototype.handleNode = function() {
return this
},
p.prototype = new l,
p.prototype.handleText = function(e) {
this.body = (this.body || "") + e
},
f.prototype = new p,
f.prototype.handleNode = function(e) {
if (this.element) throw a("expected no sub nodes");
return this.element = this.createReference(e),
this
},
f.prototype.handleEnd = function() {
this.element.id = this.body
},
f.prototype.createReference = function(e) {
return {
property: this.property.ns.name,
id: ""
}
},
h.prototype = new p,
h.prototype.handleEnd = function() {
var e = this.body,
t = this.element,
n = this.propertyDesc;
e = R(n.type, e),
n.isMany ? t.get(n.name).push(e) : t.set(n.name, e)
},
d.prototype = Object.create(p.prototype),
d.prototype.handleNode = function(e) {
var t = this,
n = this.element;
return n ? t = this.handleChild(e) : (n = this.element = this.createElement(e), this.context.addElement(n)),
t
},
m.prototype = new d,
m.prototype.addReference = function(e) {
this.context.addReference(e)
},
m.prototype.handleEnd = function() {
var e = this.body,
t = this.element,
n = s(t),
r = n.bodyProperty;
r && void 0 !== e && (e = R(r.type, e), t.set(r.name, e))
},
m.prototype.createElement = function(e) {
var t = r(e),
n = this.type,
i = s(n),
o = this.context,
a = new n({});
return x(t,
function(e, t) {
var n, r = i.propertiesByName[t];
r && r.isReference ? r.isMany ? (n = e.split(" "), x(n,
function(e) {
o.addReference({
element: a,
property: r.ns.name,
id: e
})
})) : o.addReference({
element: a,
property: r.ns.name,
id: e
}) : (r && (e = R(r.type, e)), a.set(t, e))
}),
a
},
m.prototype.getPropertyForNode = function(e) {
var t, n, r, i = T(e.local, e.prefix),
o = this.type,
c = this.model,
l = s(o),
u = i.name,
p = l.propertiesByName[u];
if (p) return k(p) && (r = e.attributes[P]) ? (t = r.value, n = c.getType(t), E({},
p, {
effectiveType: s(n).name
})) : p;
var f = c.getPackage(i.prefix);
if (f) {
if (t = i.prefix + ":" + O(i.localName, l.$pkg), n = c.getType(t), p = b(l.properties,
function(e) {
return ! e.isVirtual && !e.isReference && !e.isAttribute && n.hasType(e.type)
})) return E({},
p, {
effectiveType: s(n).name
})
} else if (p = b(l.properties,
function(e) {
return ! e.isReference && !e.isAttribute && "Element" === e.type
})) return p;
throw a("unrecognized element <" + i.name + ">")
},
m.prototype.toString = function() {
return "ElementDescriptor[" + s(this.type).name + "]"
},
m.prototype.valueHandler = function(e, t) {
return new h(e, t)
},
m.prototype.referenceHandler = function(e) {
return new f(e, this.context)
},
m.prototype.handler = function(e) {
return "Element" === e ? new y(this.model, e, this.context) : new m(this.model, e, this.context)
},
m.prototype.handleChild = function(e) {
var t, n, r, i;
if (t = this.getPropertyForNode(e), r = this.element, n = t.effectiveType || t.type, N(n)) return this.valueHandler(t, r);
i = t.isReference ? this.referenceHandler(t).handleNode(e) : this.handler(n).handleNode(e);
var o = i.element;
return void 0 !== o && (t.isMany ? r.get(t.name).push(o) : r.set(t.name, o), t.isReference ? (E(o, {
element: r
}), this.context.addReference(o)) : o.$parent = r),
i
},
y.prototype = Object.create(d.prototype),
y.prototype.createElement = function(e) {
var t = e.name,
n = e.prefix,
r = e.ns[n],
i = e.attributes;
return this.model.createAny(t, r, i)
},
y.prototype.handleChild = function(e) {
var t, n = new y(this.model, "Element", this.context).handleNode(e),
r = this.element,
i = n.element;
return void 0 !== i && (t = r.$children = r.$children || [], t.push(i), i.$parent = r),
n
},
y.prototype.handleText = function(e) {
this.body = this.body || "" + e
},
y.prototype.handleEnd = function() {
this.body && (this.element.$body = this.body)
},
g.prototype.fromXML = function(e, t, n) {
function r() {
var e, t, n = y.elementsById,
r = y.references;
for (e = 0; t = r[e]; e++) {
var i = t.element,
o = n[t.id],
a = s(i).propertiesByName[t.property];
if (o || y.addWarning({
message: "unresolved reference <" + t.id + ">",
element: t.element,
property: t.property,
value: t.id
}), a.isMany) {
var c = i.get(a.name),
l = c.indexOf(t);
l === -1 && (l = c.length),
o ? c[l] = o: c.splice(l, 1)
} else i.set(a.name, o)
}
}
function i(e) {
v.pop().handleEnd()
}
function l(e) {
var t = v.peek();
o(e, h);
try {
v.push(t.handleNode(e))
} catch(t) {
var n = this.line,
r = this.column,
i = "unparsable content <" + e.name + "> detected\n\tline: " + n + "\n\tcolumn: " + r + "\n\tnested error: " + t.message;
if (!d) throw console.error("could not parse document"),
console.error(t),
a(i);
y.addWarning({
message: i,
error: t
}),
console.warn("could not parse node"),
console.warn(t),
v.push(new u)
}
}
function p(e) {
v.peek().handleText(e)
}
var f = t.rootHandler;
t instanceof m ? (f = t, t = {}) : "string" == typeof t ? (f = this.handler(t), t = {}) : "string" == typeof f && (f = this.handler(f));
var h = this.model,
d = this.lax,
y = new c(E({},
t, {
rootHandler: f
})),
g = new _(!0, {
xmlns: !0,
trim: !0
}),
v = new A;
f.context = y,
v.push(f),
g.onopentag = l,
g.oncdata = g.ontext = p,
g.onclosetag = i,
g.onend = r,
w(function() {
var t;
try {
g.write(e).close()
} catch(e) {
t = e
}
n(t, t ? void 0 : f.element, y)
})
},
g.prototype.handler = function(e) {
return new m(this.model, e)
},
t.exports = g,
t.exports.ElementHandler = m
},
{
18 : 18,
197 : 197,
21 : 21,
22 : 22,
23 : 23,
28 : 28,
31 : 31,
82 : 82,
83 : 83,
87 : 87,
92 : 92
}],
20 : [function(e, t, n) {
"use strict";
function r(e) {
return E(e) ? e: (e.prefix ? e.prefix + ":": "") + e.localName
}
function i(e) {
function t(t) {
return e.used[t.uri]
}
function n(e) {
var t = "xmlns" + (e.prefix ? ":" + e.prefix: "");
return {
name: t,
value: e.uri
}
}
var r = [].concat(e.wellknown, e.custom);
return x(w(r, t), n)
}
function o(e, t) {
return t.isGeneric ? t.name: A({
localName: C(t.ns.localName, t.$pkg)
},
e)
}
function a(e, t) {
return A({
localName: t.ns.localName
},
e)
}
function s(e) {
var t = e.$descriptor;
return w(t.properties,
function(t) {
var n = t.name;
if (t.isVirtual) return ! 1;
if (!e.hasOwnProperty(n)) return ! 1;
var r = e[n];
return r !== t.
default && (null !== r && (!t.isMany || r.length))
})
}
function c(e) {
return e = E(e) ? e: "" + e,
e.replace(P,
function(e) {
return "" + O[e] + ";"
})
}
function l(e) {
return w(e,
function(e) {
return e.isAttr
})
}
function u(e) {
return w(e,
function(e) {
return ! e.isAttr
})
}
function p(e, t) {
this.ns = t
}
function f() {}
function h(e) {
this.ns = e
}
function d(e, t) {
this.body = [],
this.attrs = [],
this.parent = e,
this.ns = t
}
function m(e, t) {
d.call(this, e, t)
}
function y() {
this.value = "",
this.write = function(e) {
this.value += e
}
}
function g(e, t) {
var n = [""];
this.append = function(t) {
return e.write(t),
this
},
this.appendNewLine = function() {
return t && e.write("\n"),
this
},
this.appendIndent = function() {
return t && e.write(n.join(" ")),
this
},
this.indent = function() {
return n.push(""),
this
},
this.unindent = function() {
return n.pop(),
this
}
}
function v(e) {
function t(t, n) {
var r = n || new y,
i = new g(r, e.format);
if (e.preamble && i.append(M), (new d).build(t).serializeTo(i), !n) return r.value
}
return e = A({
format: !1,
preamble: !0
},
e || {}),
{
toXML: t
}
}
var x = e(86),
b = e(83),
E = e(194),
w = e(81),
A = e(197),
_ = e(31),
S = e(28).parseName,
T = e(18),
C = T.nameToAlias,
R = T.serializeAsType,
N = T.serializeAsProperty,
M = '\n',
P = /(<|>|'|"|&|\n\r|\n)/g,
D = T.DEFAULT_NS_MAP,
k = T.XSI_TYPE,
O = {
"\n": "10",
"\n\r": "10",
'"': "34",
"'": "39",
"<": "60",
">": "62",
"&": "38"
};
p.prototype.build = function(e) {
return this.element = e,
this
},
p.prototype.serializeTo = function(e) {
e.appendIndent().append("<" + r(this.ns) + ">" + this.element.id + "" + r(this.ns) + ">").appendNewLine()
},
f.prototype.serializeValue = f.prototype.serializeTo = function(e) {
var t = this.escape;
t && e.append("")
},
f.prototype.build = function(e, t) {
return this.value = t,
"String" === e.type && t.search(P) !== -1 && (this.escape = !0),
this
},
h.prototype = new f,
h.prototype.serializeTo = function(e) {
e.appendIndent().append("<" + r(this.ns) + ">"),
this.serializeValue(e),
e.append("" + r(this.ns) + ">").appendNewLine()
},
d.prototype.build = function(e) {
this.element = e;
var t = this.parseNsAttributes(e);
if (this.ns || (this.ns = this.nsTagName(e.$descriptor)), e.$descriptor.isGeneric) this.parseGeneric(e);
else {
var n = s(e);
this.parseAttributes(l(n)),
this.parseContainments(u(n)),
this.parseGenericAttributes(e, t)
}
return this
},
d.prototype.nsTagName = function(e) {
var t = this.logNamespaceUsed(e.ns);
return o(t, e)
},
d.prototype.nsPropertyTagName = function(e) {
var t = this.logNamespaceUsed(e.ns);
return a(t, e)
},
d.prototype.isLocalNs = function(e) {
return e.uri === this.ns.uri
},
d.prototype.nsAttributeName = function(e) {
var t;
if (t = E(e) ? S(e) : e.ns, e.inherited) return {
localName: t.localName
};
var n = this.logNamespaceUsed(t);
return this.isLocalNs(n) ? {
localName: t.localName
}: A({
localName: t.localName
},
n)
},
d.prototype.parseGeneric = function(e) {
var t = this,
n = this.body,
r = this.attrs;
b(e,
function(e, i) {
"$body" === i ? n.push((new f).build({
type: "String"
},
e)) : "$children" === i ? b(e,
function(e) {
n.push(new d(t).build(e))
}) : 0 !== i.indexOf("$") && r.push({
name: i,
value: c(e)
})
})
},
d.prototype.parseNsAttributes = function(e) {
var t = this,
n = e.$attrs,
r = e.$model,
i = [];
return b(n,
function(e, n) {
var o, a = S(n);
"xmlns" === a.prefix && (o = {
prefix: a.localName,
uri: e
}),
a.prefix || "xmlns" !== a.localName || (o = {
uri: e
}),
o ? r.getPackage(e) ? t.logNamespace(o, !0) : t.logNamespaceUsed(o) : i.push({
name: n,
value: e
})
}),
i
},
d.prototype.parseGenericAttributes = function(e, t) {
var n = this;
b(t,
function(t) {
if (t.name !== k) try {
n.addAttribute(n.nsAttributeName(t.name), t.value)
} catch(n) {
console.warn("missing namespace information for ", t.name, "=", t.value, "on", e, n)
}
})
},
d.prototype.parseContainments = function(e) {
var t = this,
n = this.body,
r = this.element;
b(e,
function(e) {
var i = r.get(e.name),
o = e.isReference,
a = e.isMany,
s = t.nsPropertyTagName(e);
if (a || (i = [i]), e.isBody) n.push((new f).build(e, i[0]));
else if (_.isSimple(e.type)) b(i,
function(t) {
n.push(new h(s).build(e, t))
});
else if (o) b(i,
function(e) {
n.push(new p(t, s).build(e))
});
else {
var c = R(e),
l = N(e);
b(i,
function(e) {
var r;
r = c ? new m(t, s) : l ? new d(t, s) : new d(t),
n.push(r.build(e))
})
}
})
},
d.prototype.getNamespaces = function() {
var e = this.namespaces,
t = this.parent;
return e || (e = this.namespaces = t ? t.getNamespaces() : {
prefixMap: {},
uriMap: {},
used: {},
wellknown: [],
custom: []
}),
e
},
d.prototype.logNamespace = function(e, t) {
var n = this.getNamespaces(),
r = e.uri,
i = n.uriMap[r];
return i || (n.uriMap[r] = e, t ? n.wellknown.push(e) : n.custom.push(e)),
n.prefixMap[e.prefix] = r,
e
},
d.prototype.logNamespaceUsed = function(e) {
var t = this.element,
n = t.$model,
r = this.getNamespaces(),
i = e.prefix,
o = D[i] || n && (n.getPackage(i) || {}).uri,
a = e.uri || r.prefixMap[i] || o;
if (!a) throw new Error("no namespace uri given for prefix <" + e.prefix + ">");
return e = r.uriMap[a],
e || (e = this.logNamespace({
prefix: i,
uri: a
},
o)),
r.used[e.uri] || (r.used[e.uri] = e),
e
},
d.prototype.parseAttributes = function(e) {
var t = this,
n = this.element;
b(e,
function(e) {
var r = n.get(e.name);
if (e.isReference) if (e.isMany) {
var i = [];
b(r,
function(e) {
i.push(e.id)
}),
r = i.join(" ")
} else r = r.id;
t.addAttribute(t.nsAttributeName(e), r)
})
},
d.prototype.addAttribute = function(e, t) {
var n = this.attrs;
E(t) && (t = c(t)),
n.push({
name: e,
value: t
})
},
d.prototype.serializeAttributes = function(e) {
var t = this.attrs,
n = !this.parent;
n && (t = i(this.namespaces).concat(t)),
b(t,
function(t) {
e.append(" ").append(r(t.name)).append('="').append(t.value).append('"')
})
},
d.prototype.serializeTo = function(e) {
var t = this.body.length,
n = !(1 === this.body.length && this.body[0] instanceof f);
e.appendIndent().append("<" + r(this.ns)),
this.serializeAttributes(e),
e.append(t ? ">": " />"),
t && (n && e.appendNewLine().indent(), b(this.body,
function(t) {
t.serializeTo(e)
}), n && e.unindent().appendIndent(), e.append("" + r(this.ns) + ">")),
e.appendNewLine()
},
m.prototype = new d,
m.prototype.build = function(e) {
var t = e.$descriptor;
this.element = e,
this.typeNs = this.nsTagName(t);
var n = this.typeNs,
r = e.$model.getPackage(n.uri),
i = r.xml && r.xml.typePrefix || "";
return this.addAttribute(this.nsAttributeName(k), (n.prefix ? n.prefix + ":": "") + i + t.ns.localName),
d.prototype.build.call(this, e)
},
m.prototype.isLocalNs = function(e) {
return e.uri === this.typeNs.uri
},
t.exports = v
},
{
18 : 18,
194 : 194,
197 : 197,
28 : 28,
31 : 31,
81 : 81,
83 : 83,
86 : 86
}],
21 : [function(e, t, n) { (function(t) { !
function(n) {
function r(e, t) {
if (! (this instanceof r)) return new r(e, t);
var i = this;
o(i),
i.q = i.c = "",
i.bufferCheckPosition = n.MAX_BUFFER_LENGTH,
i.opt = t || {},
i.opt.lowercase = i.opt.lowercase || i.opt.lowercasetags,
i.looseCase = i.opt.lowercase ? "toLowerCase": "toUpperCase",
i.tags = [],
i.closed = i.closedRoot = i.sawRoot = !1,
i.tag = i.error = null,
i.strict = !!e,
i.noscript = !(!e && !i.opt.noscript),
i.state = W.BEGIN,
i.ENTITIES = Object.create(n.ENTITIES),
i.attribList = [],
i.opt.xmlns && (i.ns = Object.create(V)),
i.trackPosition = i.opt.position !== !1,
i.trackPosition && (i.position = i.line = i.column = 0),
h(i, "onready")
}
function i(e) {
for (var t = Math.max(n.MAX_BUFFER_LENGTH, 10), r = 0, i = 0, o = C.length; i < o; i++) {
var a = e[C[i]].length;
if (a > t) switch (C[i]) {
case "textNode":
m(e);
break;
case "cdata":
d(e, "oncdata", e.cdata),
e.cdata = "";
break;
case "script":
d(e, "onscript", e.script),
e.script = "";
break;
default:
g(e, "Max buffer length exceeded: " + C[i])
}
r = Math.max(r, a)
}
e.bufferCheckPosition = n.MAX_BUFFER_LENGTH - r + e.position
}
function o(e) {
for (var t = 0,
n = C.length; t < n; t++) e[C[t]] = ""
}
function a(e) {
m(e),
"" !== e.cdata && (d(e, "oncdata", e.cdata), e.cdata = ""),
"" !== e.script && (d(e, "onscript", e.script), e.script = "")
}
function s(e, t) {
return new c(e, t)
}
function c(e, t) {
if (! (this instanceof c)) return new c(e, t);
R.apply(this),
this._parser = new r(e, t),
this.writable = !0,
this.readable = !0;
var n = this;
this._parser.onend = function() {
n.emit("end")
},
this._parser.onerror = function(e) {
n.emit("error", e),
n._parser.error = null
},
this._decoder = null,
N.forEach(function(e) {
Object.defineProperty(n, "on" + e, {
get: function() {
return n._parser["on" + e]
},
set: function(t) {
return t ? void n.on(e, t) : (n.removeAllListeners(e), n._parser["on" + e] = t)
},
enumerable: !0,
configurable: !1
})
})
}
function l(e) {
return e.split("").reduce(function(e, t) {
return e[t] = !0,
e
},
{})
}
function u(e) {
return "[object RegExp]" === Object.prototype.toString.call(e)
}
function p(e, t) {
return u(e) ? !!t.match(e) : e[t]
}
function f(e, t) {
return ! p(e, t)
}
function h(e, t, n) {
e[t] && e[t](n)
}
function d(e, t, n) {
e.textNode && m(e),
h(e, t, n)
}
function m(e) {
e.textNode = y(e.opt, e.textNode),
e.textNode && h(e, "ontext", e.textNode),
e.textNode = ""
}
function y(e, t) {
return e.trim && (t = t.trim()),
e.normalize && (t = t.replace(/\s+/g, " ")),
t
}
function g(e, t) {
return m(e),
e.trackPosition && (t += "\nLine: " + e.line + "\nColumn: " + e.column + "\nChar: " + e.c),
t = new Error(t),
e.error = t,
h(e, "onerror", t),
e
}
function v(e) {
return e.closedRoot || x(e, "Unclosed root tag"),
e.state !== W.BEGIN && e.state !== W.TEXT && g(e, "Unexpected end"),
m(e),
e.c = "",
e.closed = !0,
h(e, "onend"),
r.call(e, e.strict, e.opt),
e
}
function x(e, t) {
if ("object" != typeof e || !(e instanceof r)) throw new Error("bad call to strictFail");
e.strict && g(e, t)
}
function b(e) {
e.strict || (e.tagName = e.tagName[e.looseCase]());
var t = e.tags[e.tags.length - 1] || e,
n = e.tag = {
name: e.tagName,
attributes: {}
};
e.opt.xmlns && (n.ns = t.ns),
e.attribList.length = 0
}
function E(e, t) {
var n = e.indexOf(":"),
r = n < 0 ? ["", e] : e.split(":"),
i = r[0],
o = r[1];
return t && "xmlns" === e && (i = "xmlns", o = ""),
{
prefix: i,
local: o
}
}
function w(e) {
if (e.strict || (e.attribName = e.attribName[e.looseCase]()), e.attribList.indexOf(e.attribName) !== -1 || e.tag.attributes.hasOwnProperty(e.attribName)) return e.attribName = e.attribValue = "";
if (e.opt.xmlns) {
var t = E(e.attribName, !0),
n = t.prefix,
r = t.local;
if ("xmlns" === n) if ("xml" === r && e.attribValue !== F) x(e, "xml: prefix must be bound to " + F + "\nActual: " + e.attribValue);
else if ("xmlns" === r && e.attribValue !== j) x(e, "xmlns: prefix must be bound to " + j + "\nActual: " + e.attribValue);
else {
var i = e.tag,
o = e.tags[e.tags.length - 1] || e;
i.ns === o.ns && (i.ns = Object.create(o.ns)),
i.ns[r] = e.attribValue
}
e.attribList.push([e.attribName, e.attribValue])
} else e.tag.attributes[e.attribName] = e.attribValue,
d(e, "onattribute", {
name: e.attribName,
value: e.attribValue
});
e.attribName = e.attribValue = ""
}
function A(e, t) {
if (e.opt.xmlns) {
var n = e.tag,
r = E(e.tagName);
n.prefix = r.prefix,
n.local = r.local,
n.uri = n.ns[r.prefix] || "",
n.prefix && !n.uri && (x(e, "Unbound namespace prefix: " + JSON.stringify(e.tagName)), n.uri = r.prefix);
var i = e.tags[e.tags.length - 1] || e;
n.ns && i.ns !== n.ns && Object.keys(n.ns).forEach(function(t) {
d(e, "onopennamespace", {
prefix: t,
uri: n.ns[t]
})
});
for (var o = 0,
a = e.attribList.length; o < a; o++) {
var s = e.attribList[o],
c = s[0],
l = s[1],
u = E(c, !0),
p = u.prefix,
f = u.local,
h = "" == p ? "": n.ns[p] || "",
m = {
name: c,
value: l,
prefix: p,
local: f,
uri: h
};
p && "xmlns" != p && !h && (x(e, "Unbound namespace prefix: " + JSON.stringify(p)), m.uri = p),
e.tag.attributes[c] = m,
d(e, "onattribute", m)
}
e.attribList.length = 0
}
e.tag.isSelfClosing = !!t,
e.sawRoot = !0,
e.tags.push(e.tag),
d(e, "onopentag", e.tag),
t || (e.noscript || "script" !== e.tagName.toLowerCase() ? e.state = W.TEXT: e.state = W.SCRIPT, e.tag = null, e.tagName = ""),
e.attribName = e.attribValue = "",
e.attribList.length = 0
}
function _(e) {
if (!e.tagName) return x(e, "Weird empty close tag."),
e.textNode += ">",
void(e.state = W.TEXT);
if (e.script) {
if ("script" !== e.tagName) return e.script += "" + e.tagName + ">",
e.tagName = "",
void(e.state = W.SCRIPT);
d(e, "onscript", e.script),
e.script = ""
}
var t = e.tags.length,
n = e.tagName;
e.strict || (n = n[e.looseCase]());
for (var r = n; t--;) {
var i = e.tags[t];
if (i.name === r) break;
x(e, "Unexpected close tag")
}
if (t < 0) return x(e, "Unmatched closing tag: " + e.tagName),
e.textNode += "" + e.tagName + ">",
void(e.state = W.TEXT);
e.tagName = n;
for (var o = e.tags.length; o-->t;) {
var a = e.tag = e.tags.pop();
e.tagName = e.tag.name,
d(e, "onclosetag", e.tagName);
var s = {};
for (var c in a.ns) s[c] = a.ns[c];
var l = e.tags[e.tags.length - 1] || e;
e.opt.xmlns && a.ns !== l.ns && Object.keys(a.ns).forEach(function(t) {
var n = a.ns[t];
d(e, "onclosenamespace", {
prefix: t,
uri: n
})
})
}
0 === t && (e.closedRoot = !0),
e.tagName = e.attribValue = e.attribName = "",
e.attribList.length = 0,
e.state = W.TEXT
}
function S(e) {
var t, n = e.entity,
r = n.toLowerCase(),
i = "";
return e.ENTITIES[n] ? e.ENTITIES[n] : e.ENTITIES[r] ? e.ENTITIES[r] : (n = r, "#" === n.charAt(0) && ("x" === n.charAt(1) ? (n = n.slice(2), t = parseInt(n, 16), i = t.toString(16)) : (n = n.slice(1), t = parseInt(n, 10), i = t.toString(10))), n = n.replace(/^0+/, ""), i.toLowerCase() !== n ? (x(e, "Invalid character entity"), "&" + e.entity + ";") : String.fromCodePoint(t))
}
function T(e) {
var t = this;
if (this.error) throw this.error;
if (t.closed) return g(t, "Cannot write after close. Assign an onready handler.");
if (null === e) return v(t);
for (var n = 0,
r = ""; t.c = r = e.charAt(n++);) switch (t.trackPosition && (t.position++, "\n" === r ? (t.line++, t.column = 0) : t.column++), t.state) {
case W.BEGIN:
"<" === r ? (t.state = W.OPEN_WAKA, t.startTagPosition = t.position) : f(M, r) && (x(t, "Non-whitespace before first tag."), t.textNode = r, t.state = W.TEXT);
continue;
case W.TEXT:
if (t.sawRoot && !t.closedRoot) {
for (var o = n - 1; r && "<" !== r && "&" !== r;) r = e.charAt(n++),
r && t.trackPosition && (t.position++, "\n" === r ? (t.line++, t.column = 0) : t.column++);
t.textNode += e.substring(o, n - 1)
}
"<" === r ? (t.state = W.OPEN_WAKA, t.startTagPosition = t.position) : (!f(M, r) || t.sawRoot && !t.closedRoot || x(t, "Text data outside of root node."), "&" === r ? t.state = W.TEXT_ENTITY: t.textNode += r);
continue;
case W.SCRIPT:
"<" === r ? t.state = W.SCRIPT_ENDING: t.script += r;
continue;
case W.SCRIPT_ENDING:
"/" === r ? t.state = W.CLOSE_TAG: (t.script += "<" + r, t.state = W.SCRIPT);
continue;
case W.OPEN_WAKA:
if ("!" === r) t.state = W.SGML_DECL,
t.sgmlDecl = "";
else if (p(M, r));
else if (p(G, r)) t.state = W.OPEN_TAG,
t.tagName = r;
else if ("/" === r) t.state = W.CLOSE_TAG,
t.tagName = "";
else if ("?" === r) t.state = W.PROC_INST,
t.procInstName = t.procInstBody = "";
else {
if (x(t, "Unencoded <"), t.startTagPosition + 1 < t.position) {
var a = t.position - t.startTagPosition;
r = new Array(a).join(" ") + r
}
t.textNode += "<" + r,
t.state = W.TEXT
}
continue;
case W.SGML_DECL:
(t.sgmlDecl + r).toUpperCase() === I ? (d(t, "onopencdata"), t.state = W.CDATA, t.sgmlDecl = "", t.cdata = "") : t.sgmlDecl + r === "--" ? (t.state = W.COMMENT, t.comment = "", t.sgmlDecl = "") : (t.sgmlDecl + r).toUpperCase() === L ? (t.state = W.DOCTYPE, (t.doctype || t.sawRoot) && x(t, "Inappropriately located doctype declaration"), t.doctype = "", t.sgmlDecl = "") : ">" === r ? (d(t, "onsgmldeclaration", t.sgmlDecl), t.sgmlDecl = "", t.state = W.TEXT) : p(k, r) ? (t.state = W.SGML_DECL_QUOTED, t.sgmlDecl += r) : t.sgmlDecl += r;
continue;
case W.SGML_DECL_QUOTED:
r === t.q && (t.state = W.SGML_DECL, t.q = ""),
t.sgmlDecl += r;
continue;
case W.DOCTYPE:
">" === r ? (t.state = W.TEXT, d(t, "ondoctype", t.doctype), t.doctype = !0) : (t.doctype += r, "[" === r ? t.state = W.DOCTYPE_DTD: p(k, r) && (t.state = W.DOCTYPE_QUOTED, t.q = r));
continue;
case W.DOCTYPE_QUOTED:
t.doctype += r,
r === t.q && (t.q = "", t.state = W.DOCTYPE);
continue;
case W.DOCTYPE_DTD:
t.doctype += r,
"]" === r ? t.state = W.DOCTYPE: p(k, r) && (t.state = W.DOCTYPE_DTD_QUOTED, t.q = r);
continue;
case W.DOCTYPE_DTD_QUOTED:
t.doctype += r,
r === t.q && (t.state = W.DOCTYPE_DTD, t.q = "");
continue;
case W.COMMENT:
"-" === r ? t.state = W.COMMENT_ENDING: t.comment += r;
continue;
case W.COMMENT_ENDING:
"-" === r ? (t.state = W.COMMENT_ENDED, t.comment = y(t.opt, t.comment), t.comment && d(t, "oncomment", t.comment), t.comment = "") : (t.comment += "-" + r, t.state = W.COMMENT);
continue;
case W.COMMENT_ENDED:
">" !== r ? (x(t, "Malformed comment"), t.comment += "--" + r, t.state = W.COMMENT) : t.state = W.TEXT;
continue;
case W.CDATA:
"]" === r ? t.state = W.CDATA_ENDING: t.cdata += r;
continue;
case W.CDATA_ENDING:
"]" === r ? t.state = W.CDATA_ENDING_2: (t.cdata += "]" + r, t.state = W.CDATA);
continue;
case W.CDATA_ENDING_2:
">" === r ? (t.cdata && d(t, "oncdata", t.cdata), d(t, "onclosecdata"), t.cdata = "", t.state = W.TEXT) : "]" === r ? t.cdata += "]": (t.cdata += "]]" + r, t.state = W.CDATA);
continue;
case W.PROC_INST:
"?" === r ? t.state = W.PROC_INST_ENDING: p(M, r) ? t.state = W.PROC_INST_BODY: t.procInstName += r;
continue;
case W.PROC_INST_BODY:
if (!t.procInstBody && p(M, r)) continue;
"?" === r ? t.state = W.PROC_INST_ENDING: t.procInstBody += r;
continue;
case W.PROC_INST_ENDING:
">" === r ? (d(t, "onprocessinginstruction", {
name: t.procInstName,
body: t.procInstBody
}), t.procInstName = t.procInstBody = "", t.state = W.TEXT) : (t.procInstBody += "?" + r, t.state = W.PROC_INST_BODY);
continue;
case W.OPEN_TAG:
p(U, r) ? t.tagName += r: (b(t), ">" === r ? A(t) : "/" === r ? t.state = W.OPEN_TAG_SLASH: (f(M, r) && x(t, "Invalid character in tag name"), t.state = W.ATTRIB));
continue;
case W.OPEN_TAG_SLASH:
">" === r ? (A(t, !0), _(t)) : (x(t, "Forward-slash in opening tag not followed by >"), t.state = W.ATTRIB);
continue;
case W.ATTRIB:
if (p(M, r)) continue;
">" === r ? A(t) : "/" === r ? t.state = W.OPEN_TAG_SLASH: p(G, r) ? (t.attribName = r, t.attribValue = "", t.state = W.ATTRIB_NAME) : x(t, "Invalid attribute name");
continue;
case W.ATTRIB_NAME:
"=" === r ? t.state = W.ATTRIB_VALUE: ">" === r ? (x(t, "Attribute without value"), t.attribValue = t.attribName, w(t), A(t)) : p(M, r) ? t.state = W.ATTRIB_NAME_SAW_WHITE: p(U, r) ? t.attribName += r: x(t, "Invalid attribute name");
continue;
case W.ATTRIB_NAME_SAW_WHITE:
if ("=" === r) t.state = W.ATTRIB_VALUE;
else {
if (p(M, r)) continue;
x(t, "Attribute without value"),
t.tag.attributes[t.attribName] = "",
t.attribValue = "",
d(t, "onattribute", {
name: t.attribName,
value: ""
}),
t.attribName = "",
">" === r ? A(t) : p(G, r) ? (t.attribName = r, t.state = W.ATTRIB_NAME) : (x(t, "Invalid attribute name"), t.state = W.ATTRIB)
}
continue;
case W.ATTRIB_VALUE:
if (p(M, r)) continue;
p(k, r) ? (t.q = r, t.state = W.ATTRIB_VALUE_QUOTED) : (x(t, "Unquoted attribute value"), t.state = W.ATTRIB_VALUE_UNQUOTED, t.attribValue = r);
continue;
case W.ATTRIB_VALUE_QUOTED:
if (r !== t.q) {
"&" === r ? t.state = W.ATTRIB_VALUE_ENTITY_Q: t.attribValue += r;
continue
}
w(t),
t.q = "",
t.state = W.ATTRIB_VALUE_CLOSED;
continue;
case W.ATTRIB_VALUE_CLOSED:
p(M, r) ? t.state = W.ATTRIB: ">" === r ? A(t) : "/" === r ? t.state = W.OPEN_TAG_SLASH: p(G, r) ? (x(t, "No whitespace between attributes"), t.attribName = r, t.attribValue = "", t.state = W.ATTRIB_NAME) : x(t, "Invalid attribute name");
continue;
case W.ATTRIB_VALUE_UNQUOTED:
if (f(B, r)) {
"&" === r ? t.state = W.ATTRIB_VALUE_ENTITY_U: t.attribValue += r;
continue
}
w(t),
">" === r ? A(t) : t.state = W.ATTRIB;
continue;
case W.CLOSE_TAG:
if (t.tagName)">" === r ? _(t) : p(U, r) ? t.tagName += r: t.script ? (t.script += "" + t.tagName, t.tagName = "", t.state = W.SCRIPT) : (f(M, r) && x(t, "Invalid tagname in closing tag"), t.state = W.CLOSE_TAG_SAW_WHITE);
else {
if (p(M, r)) continue;
f(G, r) ? t.script ? (t.script += "" + r, t.state = W.SCRIPT) : x(t, "Invalid tagname in closing tag.") : t.tagName = r
}
continue;
case W.CLOSE_TAG_SAW_WHITE:
if (p(M, r)) continue;
">" === r ? _(t) : x(t, "Invalid characters in closing tag");
continue;
case W.TEXT_ENTITY:
case W.ATTRIB_VALUE_ENTITY_Q:
case W.ATTRIB_VALUE_ENTITY_U:
switch (t.state) {
case W.TEXT_ENTITY:
var s = W.TEXT,
c = "textNode";
break;
case W.ATTRIB_VALUE_ENTITY_Q:
var s = W.ATTRIB_VALUE_QUOTED,
c = "attribValue";
break;
case W.ATTRIB_VALUE_ENTITY_U:
var s = W.ATTRIB_VALUE_UNQUOTED,
c = "attribValue"
}
";" === r ? (t[c] += S(t), t.entity = "", t.state = s) : p(O, r) ? t.entity += r: (x(t, "Invalid character entity"), t[c] += "&" + t.entity + r, t.entity = "", t.state = s);
continue;
default:
throw new Error(t, "Unknown state: " + t.state)
}
return t.position >= t.bufferCheckPosition && i(t),
t
}
n.parser = function(e, t) {
return new r(e, t)
},
n.SAXParser = r,
n.SAXStream = c,
n.createStream = s,
n.MAX_BUFFER_LENGTH = 65536;
var C = ["comment", "sgmlDecl", "textNode", "tagName", "doctype", "procInstName", "procInstBody", "entity", "attribName", "attribValue", "cdata", "script"];
n.EVENTS = ["text", "processinginstruction", "sgmldeclaration", "doctype", "comment", "attribute", "opentag", "closetag", "opencdata", "cdata", "closecdata", "error", "end", "ready", "script", "opennamespace", "closenamespace"],
Object.create || (Object.create = function(e) {
function t() {
this.__proto__ = e
}
return t.prototype = e,
new t
}),
Object.getPrototypeOf || (Object.getPrototypeOf = function(e) {
return e.__proto__
}),
Object.keys || (Object.keys = function(e) {
var t = [];
for (var n in e) e.hasOwnProperty(n) && t.push(n);
return t
}),
r.prototype = {
end: function() {
v(this)
},
write: T,
resume: function() {
return this.error = null,
this
},
close: function() {
return this.write(null)
},
flush: function() {
a(this)
}
};
try {
var R = e("stream").Stream
} catch(e) {
var R = function() {}
}
var N = n.EVENTS.filter(function(e) {
return "error" !== e && "end" !== e
});
c.prototype = Object.create(R.prototype, {
constructor: {
value: c
}
}),
c.prototype.write = function(n) {
if ("function" == typeof t && "function" == typeof t.isBuffer && t.isBuffer(n)) {
if (!this._decoder) {
var r = e("string_decoder").StringDecoder;
this._decoder = new r("utf8")
}
n = this._decoder.write(n)
}
return this._parser.write(n.toString()),
this.emit("data", n),
!0
},
c.prototype.end = function(e) {
return e && e.length && this.write(e),
this._parser.end(),
!0
},
c.prototype.on = function(e, t) {
var n = this;
return n._parser["on" + e] || N.indexOf(e) === -1 || (n._parser["on" + e] = function() {
var t = 1 === arguments.length ? [arguments[0]] : Array.apply(null, arguments);
t.splice(0, 0, e),
n.emit.apply(n, t)
}),
R.prototype.on.call(n, e, t)
};
var M = "\r\n\t ",
P = "0124356789",
D = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",
k = "'\"",
O = P + D + "#",
B = M + ">",
I = "[CDATA[",
L = "DOCTYPE",
F = "http://www.w3.org/XML/1998/namespace",
j = "http://www.w3.org/2000/xmlns/",
V = {
xml: F,
xmlns: j
};
M = l(M),
P = l(P),
D = l(D);
var G = /[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,
U = /[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040\.\d-]/;
k = l(k),
O = l(O),
B = l(B);
var W = 0;
n.STATE = {
BEGIN: W++,
TEXT: W++,
TEXT_ENTITY: W++,
OPEN_WAKA: W++,
SGML_DECL: W++,
SGML_DECL_QUOTED: W++,
DOCTYPE: W++,
DOCTYPE_QUOTED: W++,
DOCTYPE_DTD: W++,
DOCTYPE_DTD_QUOTED: W++,
COMMENT_STARTING: W++,
COMMENT: W++,
COMMENT_ENDING: W++,
COMMENT_ENDED: W++,
CDATA: W++,
CDATA_ENDING: W++,
CDATA_ENDING_2: W++,
PROC_INST: W++,
PROC_INST_BODY: W++,
PROC_INST_ENDING: W++,
OPEN_TAG: W++,
OPEN_TAG_SLASH: W++,
ATTRIB: W++,
ATTRIB_NAME: W++,
ATTRIB_NAME_SAW_WHITE: W++,
ATTRIB_VALUE: W++,
ATTRIB_VALUE_QUOTED: W++,
ATTRIB_VALUE_CLOSED: W++,
ATTRIB_VALUE_UNQUOTED: W++,
ATTRIB_VALUE_ENTITY_Q: W++,
ATTRIB_VALUE_ENTITY_U: W++,
CLOSE_TAG: W++,
CLOSE_TAG_SAW_WHITE: W++,
SCRIPT: W++,
SCRIPT_ENDING: W++
},
n.ENTITIES = {
amp: "&",
gt: ">",
lt: "<",
quot: '"',
apos: "'",
AElig: 198,
Aacute: 193,
Acirc: 194,
Agrave: 192,
Aring: 197,
Atilde: 195,
Auml: 196,
Ccedil: 199,
ETH: 208,
Eacute: 201,
Ecirc: 202,
Egrave: 200,
Euml: 203,
Iacute: 205,
Icirc: 206,
Igrave: 204,
Iuml: 207,
Ntilde: 209,
Oacute: 211,
Ocirc: 212,
Ograve: 210,
Oslash: 216,
Otilde: 213,
Ouml: 214,
THORN: 222,
Uacute: 218,
Ucirc: 219,
Ugrave: 217,
Uuml: 220,
Yacute: 221,
aacute: 225,
acirc: 226,
aelig: 230,
agrave: 224,
aring: 229,
atilde: 227,
auml: 228,
ccedil: 231,
eacute: 233,
ecirc: 234,
egrave: 232,
eth: 240,
euml: 235,
iacute: 237,
icirc: 238,
igrave: 236,
iuml: 239,
ntilde: 241,
oacute: 243,
ocirc: 244,
ograve: 242,
oslash: 248,
otilde: 245,
ouml: 246,
szlig: 223,
thorn: 254,
uacute: 250,
ucirc: 251,
ugrave: 249,
uuml: 252,
yacute: 253,
yuml: 255,
copy: 169,
reg: 174,
nbsp: 160,
iexcl: 161,
cent: 162,
pound: 163,
curren: 164,
yen: 165,
brvbar: 166,
sect: 167,
uml: 168,
ordf: 170,
laquo: 171,
not: 172,
shy: 173,
macr: 175,
deg: 176,
plusmn: 177,
sup1: 185,
sup2: 178,
sup3: 179,
acute: 180,
micro: 181,
para: 182,
middot: 183,
cedil: 184,
ordm: 186,
raquo: 187,
frac14: 188,
frac12: 189,
frac34: 190,
iquest: 191,
times: 215,
divide: 247,
OElig: 338,
oelig: 339,
Scaron: 352,
scaron: 353,
Yuml: 376,
fnof: 402,
circ: 710,
tilde: 732,
Alpha: 913,
Beta: 914,
Gamma: 915,
Delta: 916,
Epsilon: 917,
Zeta: 918,
Eta: 919,
Theta: 920,
Iota: 921,
Kappa: 922,
Lambda: 923,
Mu: 924,
Nu: 925,
Xi: 926,
Omicron: 927,
Pi: 928,
Rho: 929,
Sigma: 931,
Tau: 932,
Upsilon: 933,
Phi: 934,
Chi: 935,
Psi: 936,
Omega: 937,
alpha: 945,
beta: 946,
gamma: 947,
delta: 948,
epsilon: 949,
zeta: 950,
eta: 951,
theta: 952,
iota: 953,
kappa: 954,
lambda: 955,
mu: 956,
nu: 957,
xi: 958,
omicron: 959,
pi: 960,
rho: 961,
sigmaf: 962,
sigma: 963,
tau: 964,
upsilon: 965,
phi: 966,
chi: 967,
psi: 968,
omega: 969,
thetasym: 977,
upsih: 978,
piv: 982,
ensp: 8194,
emsp: 8195,
thinsp: 8201,
zwnj: 8204,
zwj: 8205,
lrm: 8206,
rlm: 8207,
ndash: 8211,
mdash: 8212,
lsquo: 8216,
rsquo: 8217,
sbquo: 8218,
ldquo: 8220,
rdquo: 8221,
bdquo: 8222,
dagger: 8224,
Dagger: 8225,
bull: 8226,
hellip: 8230,
permil: 8240,
prime: 8242,
Prime: 8243,
lsaquo: 8249,
rsaquo: 8250,
oline: 8254,
frasl: 8260,
euro: 8364,
image: 8465,
weierp: 8472,
real: 8476,
trade: 8482,
alefsym: 8501,
larr: 8592,
uarr: 8593,
rarr: 8594,
darr: 8595,
harr: 8596,
crarr: 8629,
lArr: 8656,
uArr: 8657,
rArr: 8658,
dArr: 8659,
hArr: 8660,
forall: 8704,
part: 8706,
exist: 8707,
empty: 8709,
nabla: 8711,
isin: 8712,
notin: 8713,
ni: 8715,
prod: 8719,
sum: 8721,
minus: 8722,
lowast: 8727,
radic: 8730,
prop: 8733,
infin: 8734,
ang: 8736,
and: 8743,
or: 8744,
cap: 8745,
cup: 8746,
int: 8747,
there4: 8756,
sim: 8764,
cong: 8773,
asymp: 8776,
ne: 8800,
equiv: 8801,
le: 8804,
ge: 8805,
sub: 8834,
sup: 8835,
nsub: 8836,
sube: 8838,
supe: 8839,
oplus: 8853,
otimes: 8855,
perp: 8869,
sdot: 8901,
lceil: 8968,
rceil: 8969,
lfloor: 8970,
rfloor: 8971,
lang: 9001,
rang: 9002,
loz: 9674,
spades: 9824,
clubs: 9827,
hearts: 9829,
diams: 9830
},
Object.keys(n.ENTITIES).forEach(function(e) {
var t = n.ENTITIES[e],
r = "number" == typeof t ? String.fromCharCode(t) : t;
n.ENTITIES[e] = r
});
for (var W in n.STATE) n.STATE[n.STATE[W]] = W;
W = n.STATE,
String.fromCodePoint || !
function() {
var e = String.fromCharCode,
t = Math.floor,
n = function() {
var n, r, i = 16384,
o = [],
a = -1,
s = arguments.length;
if (!s) return "";
for (var c = ""; ++a < s;) {
var l = Number(arguments[a]);
if (!isFinite(l) || l < 0 || l > 1114111 || t(l) != l) throw RangeError("Invalid code point: " + l);
l <= 65535 ? o.push(l) : (l -= 65536, n = (l >> 10) + 55296, r = l % 1024 + 56320, o.push(n, r)),
(a + 1 == s || o.length > i) && (c += e.apply(null, o), o.length = 0)
}
return c
};
Object.defineProperty ? Object.defineProperty(String, "fromCodePoint", {
value: n,
configurable: !0,
writable: !0
}) : String.fromCodePoint = n
} ()
} ("undefined" == typeof n ? sax = {}: n)
}).call(this, void 0)
},
{
undefined: void 0
}],
22 : [function(t, n, r) { !
function(t) {
"use strict";
function i() {
this.data = [null],
this.top = 0
}
function o() {
return new i
}
i.prototype.clear = function() {
return this.data = [null],
this.top = 0,
this
},
i.prototype.length = function() {
return this.top
},
i.prototype.peek = function() {
return this.data[this.top]
},
i.prototype.pop = function() {
return this.top > 0 ? (this.top--, this.data.pop()) : void 0
},
i.prototype.push = function(e) {
return this.data[++this.top] = e,
this
},
"undefined" != typeof r ? n.exports = o: "function" == typeof e ? e(function() {
return o
}) : t.stack = o
} (this)
},
{}],
23 : [function(e, t, n) {
t.exports = e(27)
},
{
27 : 27
}],
24 : [function(e, t, n) {
"use strict";
function r() {}
r.prototype.get = function(e) {
return this.$model.properties.get(this, e)
},
r.prototype.set = function(e, t) {
this.$model.properties.set(this, e, t)
},
t.exports = r
},
{}],
25 : [function(e, t, n) {
"use strict";
function r(e) {
this.ns = e,
this.name = e.name,
this.allTypes = [],
this.properties = [],
this.propertiesByName = {}
}
var i = e(203),
o = e(197),
a = e(83),
s = e(28).parseName;
t.exports = r,
r.prototype.build = function() {
return i(this, ["ns", "name", "allTypes", "properties", "propertiesByName", "bodyProperty", "idProperty"])
},
r.prototype.addProperty = function(e, t, n) {
"boolean" == typeof t && (n = t, t = void 0),
this.addNamedProperty(e, n !== !1);
var r = this.properties;
void 0 !== t ? r.splice(t, 0, e) : r.push(e)
},
r.prototype.replaceProperty = function(e, t, n) {
var r = e.ns,
i = this.properties,
o = this.propertiesByName,
a = e.name !== t.name;
if (e.isId) {
if (!t.isId) throw new Error("property <" + t.ns.name + "> must be id property to refine <" + e.ns.name + ">");
this.setIdProperty(t, !1)
}
if (e.isBody) {
if (!t.isBody) throw new Error("property <" + t.ns.name + "> must be body property to refine <" + e.ns.name + ">");
this.setBodyProperty(t, !1)
}
var s = i.indexOf(e);
if (s === -1) throw new Error("property <" + r.name + "> not found in property list");
i.splice(s, 1),
this.addProperty(t, n ? void 0 : s, a),
o[r.name] = o[r.localName] = t
},
r.prototype.redefineProperty = function(e, t, n) {
var r = e.ns.prefix,
i = t.split("#"),
o = s(i[0], r),
a = s(i[1], o.prefix).name,
c = this.propertiesByName[a];
if (!c) throw new Error("refined property <" + a + "> not found");
this.replaceProperty(c, e, n),
delete e.redefines
},
r.prototype.addNamedProperty = function(e, t) {
var n = e.ns,
r = this.propertiesByName;
t && (this.assertNotDefined(e, n.name), this.assertNotDefined(e, n.localName)),
r[n.name] = r[n.localName] = e
},
r.prototype.removeNamedProperty = function(e) {
var t = e.ns,
n = this.propertiesByName;
delete n[t.name],
delete n[t.localName]
},
r.prototype.setBodyProperty = function(e, t) {
if (t && this.bodyProperty) throw new Error("body property defined multiple times (<" + this.bodyProperty.ns.name + ">, <" + e.ns.name + ">)");
this.bodyProperty = e
},
r.prototype.setIdProperty = function(e, t) {
if (t && this.idProperty) throw new Error("id property defined multiple times (<" + this.idProperty.ns.name + ">, <" + e.ns.name + ">)");
this.idProperty = e
},
r.prototype.assertNotDefined = function(e, t) {
var n = e.name,
r = this.propertiesByName[n];
if (r) throw new Error("property <" + n + "> already defined; override of <" + r.definedBy.ns.name + "#" + r.ns.name + "> by <" + e.definedBy.ns.name + "#" + e.ns.name + "> not allowed without redefines")
},
r.prototype.hasProperty = function(e) {
return this.propertiesByName[e]
},
r.prototype.addTrait = function(e, t) {
var n = this.allTypes;
n.indexOf(e) === -1 && (a(e.properties,
function(n) {
n = o({},
n, {
name: n.ns.localName,
inherited: t
}),
Object.defineProperty(n, "definedBy", {
value: e
});
var r = n.replaces,
i = n.redefines;
r || i ? this.redefineProperty(n, r || i, r) : (n.isBody && this.setBodyProperty(n), n.isId && this.setIdProperty(n), this.addProperty(n))
},
this), n.push(e))
}
},
{
197 : 197,
203 : 203,
28 : 28,
83 : 83
}],
26 : [function(e, t, n) {
"use strict";
function r(e, t) {
this.model = e,
this.properties = t
}
var i = e(83),
o = e(24);
t.exports = r,
r.prototype.createType = function(e) {
function t(e) {
r.define(this, "$type", {
value: s,
enumerable: !0
}),
r.define(this, "$attrs", {
value: {}
}),
r.define(this, "$parent", {
writable: !0
}),
i(e,
function(e, t) {
this.set(t, e)
},
this)
}
var n = this.model,
r = this.properties,
a = Object.create(o.prototype);
i(e.properties,
function(e) {
e.isMany || void 0 === e.
default || (a[e.name] = e.
default)
}),
r.defineModel(a, n),
r.defineDescriptor(a, e);
var s = e.ns.name;
return t.prototype = a,
t.hasType = a.$instanceOf = this.model.hasType,
r.defineModel(t, n),
r.defineDescriptor(t, e),
t
}
},
{
24 : 24,
83 : 83
}],
27 : [function(e, t, n) {
"use strict";
function r(e) {
this.properties = new u(this),
this.factory = new c(this, this.properties),
this.registry = new l(e, this.properties),
this.typeCache = {}
}
var i = e(194),
o = e(192),
a = e(83),
s = e(82),
c = e(26),
l = e(30),
u = e(29),
p = e(28).parseName;
t.exports = r,
r.prototype.create = function(e, t) {
var n = this.getType(e);
if (!n) throw new Error("unknown type <" + e + ">");
return new n(t)
},
r.prototype.getType = function(e) {
var t = this.typeCache,
n = i(e) ? e: e.ns.name,
r = t[n];
return r || (e = this.registry.getEffectiveDescriptor(n), r = t[n] = this.factory.createType(e)),
r
},
r.prototype.createAny = function(e, t, n) {
var r = p(e),
i = {
$type: e
},
s = {
name: e,
isGeneric: !0,
ns: {
prefix: r.prefix,
localName: r.localName,
uri: t
}
};
return this.properties.defineDescriptor(i, s),
this.properties.defineModel(i, this),
this.properties.define(i, "$parent", {
enumerable: !1,
writable: !0
}),
a(n,
function(e, t) {
o(e) && void 0 !== e.value ? i[e.name] = e.value: i[t] = e
}),
i
},
r.prototype.getPackage = function(e) {
return this.registry.getPackage(e)
},
r.prototype.getPackages = function() {
return this.registry.getPackages()
},
r.prototype.getElementDescriptor = function(e) {
return e.$descriptor
},
r.prototype.hasType = function(e, t) {
void 0 === t && (t = e, e = this);
var n = e.$model.getElementDescriptor(e);
return !! s(n.allTypes,
function(e) {
return e.name === t
})
},
r.prototype.getPropertyDescriptor = function(e, t) {
return this.getElementDescriptor(e).propertiesByName[t]
}
},
{
192 : 192,
194 : 194,
26 : 26,
28 : 28,
29 : 29,
30 : 30,
82 : 82,
83 : 83
}],
28 : [function(e, t, n) {
"use strict";
t.exports.parseName = function(e, t) {
var n, r, i = e.split(/:/);
if (1 === i.length) n = e,
r = t;
else {
if (2 !== i.length) throw new Error("expected or , got " + e);
n = i[1],
r = i[0]
}
return e = (r ? r + ":": "") + n,
{
name: e,
prefix: r,
localName: n
}
}
},
{}],
29 : [function(e, t, n) {
"use strict";
function r(e) {
this.model = e
}
function i(e) {
return "undefined" == typeof e
}
function o(e, t, n) {
Object.defineProperty(e, t.name, {
enumerable: !t.isReference,
writable: !0,
value: n,
configurable: !0
})
}
t.exports = r,
r.prototype.set = function(e, t, n) {
var r = this.model.getPropertyDescriptor(e, t),
a = r && r.name;
i(n) ? r ? delete e[a] : delete e.$attrs[t] : r ? a in e ? e[a] = n: o(e, r, n) : e.$attrs[t] = n
},
r.prototype.get = function(e, t) {
var n = this.model.getPropertyDescriptor(e, t);
if (!n) return e.$attrs[t];
var r = n.name;
return ! e[r] && n.isMany && o(e, n, []),
e[r]
},
r.prototype.define = function(e, t, n) {
Object.defineProperty(e, t, n)
},
r.prototype.defineDescriptor = function(e, t) {
this.define(e, "$descriptor", {
value: t
})
},
r.prototype.defineModel = function(e, t) {
this.define(e, "$model", {
value: t
})
}
},
{}],
30 : [function(e, t, n) {
"use strict";
function r(e, t) {
this.packageMap = {},
this.typeMap = {},
this.packages = [],
this.properties = t,
o(e, this.registerPackage, this)
}
var i = e(197),
o = e(83),
a = e(31),
s = e(25),
c = e(28).parseName,
l = a.isBuiltIn;
t.exports = r,
r.prototype.getPackage = function(e) {
return this.packageMap[e]
},
r.prototype.getPackages = function() {
return this.packages
},
r.prototype.registerPackage = function(e) {
e = i({},
e),
o(e.types,
function(t) {
this.registerType(t, e)
},
this),
this.packageMap[e.uri] = this.packageMap[e.prefix] = e,
this.packages.push(e)
},
r.prototype.registerType = function(e, t) {
e = i({},
e, {
superClass: (e.superClass || []).slice(),
extends: (e.extends || []).slice(),
properties: (e.properties || []).slice()
});
var n = c(e.name, t.prefix),
r = n.name,
a = {};
o(e.properties,
function(e) {
var t = c(e.name, n.prefix),
r = t.name;
l(e.type) || (e.type = c(e.type, t.prefix).name),
i(e, {
ns: t,
name: r
}),
a[r] = e
}),
i(e, {
ns: n,
name: r,
propertiesByName: a
}),
o(e.extends,
function(e) {
var t = this.typeMap[e];
t.traits = t.traits || [],
t.traits.push(r)
},
this),
this.definePackage(e, t),
this.typeMap[r] = e
},
r.prototype.mapTypes = function(e, t, n) {
function r(e) {
return i(e, !0)
}
function i(n, r) {
var i = c(n, l(n) ? "": e.prefix);
s.mapTypes(i, t, r)
}
var a = l(e.name) ? {
name: e.name
}: this.typeMap[e.name],
s = this;
if (!a) throw new Error("unknown type <" + e.name + ">");
o(a.superClass, n ? r: i),
t(a, !n),
o(a.traits, r)
},
r.prototype.getEffectiveDescriptor = function(e) {
var t = c(e),
n = new s(t);
this.mapTypes(t,
function(e, t) {
n.addTrait(e, t)
});
var r = n.build();
return this.definePackage(r, r.allTypes[r.allTypes.length - 1].$pkg),
r
},
r.prototype.definePackage = function(e, t) {
this.properties.define(e, "$pkg", {
value: t
})
}
},
{
197 : 197,
25 : 25,
28 : 28,
31 : 31,
83 : 83
}],
31 : [function(e, t, n) {
"use strict";
var r = {
String: !0,
Boolean: !0,
Integer: !0,
Real: !0,
Element: !0
},
i = {
String: function(e) {
return e
},
Boolean: function(e) {
return "true" === e
},
Integer: function(e) {
return parseInt(e, 10)
},
Real: function(e) {
return parseFloat(e, 10)
}
};
t.exports.coerceType = function(e, t) {
var n = i[e];
return n ? n(t) : t
},
t.exports.isBuiltIn = function(e) {
return !! r[e]
},
t.exports.isSimple = function(e) {
return !! i[e]
}
},
{}],
32 : [function(e, t, n) {
t.exports = {
name: "BPMN20",
uri: "http://www.omg.org/spec/BPMN/20100524/MODEL",
associations: [],
types: [{
name: "Interface",
superClass: ["RootElement"],
properties: [{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "operations",
type: "Operation",
isMany: !0
},
{
name: "implementationRef",
type: "String",
isAttr: !0
}]
},
{
name: "Operation",
superClass: ["BaseElement"],
properties: [{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "inMessageRef",
type: "Message",
isReference: !0
},
{
name: "outMessageRef",
type: "Message",
isReference: !0
},
{
name: "errorRef",
type: "Error",
isMany: !0,
isReference: !0
},
{
name: "implementationRef",
type: "String",
isAttr: !0
}]
},
{
name: "EndPoint",
superClass: ["RootElement"]
},
{
name: "Auditing",
superClass: ["BaseElement"]
},
{
name: "GlobalTask",
superClass: ["CallableElement"],
properties: [{
name: "resources",
type: "ResourceRole",
isMany: !0
}]
},
{
name: "Monitoring",
superClass: ["BaseElement"]
},
{
name: "Performer",
superClass: ["ResourceRole"]
},
{
name: "Process",
superClass: ["FlowElementsContainer", "CallableElement"],
properties: [{
name: "processType",
type: "ProcessType",
isAttr: !0
},
{
name: "isClosed",
isAttr: !0,
type: "Boolean"
},
{
name: "auditing",
type: "Auditing"
},
{
name: "monitoring",
type: "Monitoring"
},
{
name: "properties",
type: "Property",
isMany: !0
},
{
name: "laneSets",
type: "LaneSet",
isMany: !0,
replaces: "FlowElementsContainer#laneSets"
},
{
name: "flowElements",
type: "FlowElement",
isMany: !0,
replaces: "FlowElementsContainer#flowElements"
},
{
name: "artifacts",
type: "Artifact",
isMany: !0
},
{
name: "resources",
type: "ResourceRole",
isMany: !0
},
{
name: "correlationSubscriptions",
type: "CorrelationSubscription",
isMany: !0
},
{
name: "supports",
type: "Process",
isMany: !0,
isReference: !0
},
{
name: "definitionalCollaborationRef",
type: "Collaboration",
isAttr: !0,
isReference: !0
},
{
name: "isExecutable",
isAttr: !0,
type: "Boolean"
}]
},
{
name: "LaneSet",
superClass: ["BaseElement"],
properties: [{
name: "lanes",
type: "Lane",
isMany: !0
},
{
name: "name",
isAttr: !0,
type: "String"
}]
},
{
name: "Lane",
superClass: ["BaseElement"],
properties: [{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "partitionElementRef",
type: "BaseElement",
isAttr: !0,
isReference: !0
},
{
name: "partitionElement",
type: "BaseElement"
},
{
name: "flowNodeRef",
type: "FlowNode",
isMany: !0,
isReference: !0
},
{
name: "childLaneSet",
type: "LaneSet",
xml: {
serialize: "xsi:type"
}
}]
},
{
name: "GlobalManualTask",
superClass: ["GlobalTask"]
},
{
name: "ManualTask",
superClass: ["Task"]
},
{
name: "UserTask",
superClass: ["Task"],
properties: [{
name: "renderings",
type: "Rendering",
isMany: !0
},
{
name: "implementation",
isAttr: !0,
type: "String"
}]
},
{
name: "Rendering",
superClass: ["BaseElement"]
},
{
name: "HumanPerformer",
superClass: ["Performer"]
},
{
name: "PotentialOwner",
superClass: ["HumanPerformer"]
},
{
name: "GlobalUserTask",
superClass: ["GlobalTask"],
properties: [{
name: "implementation",
isAttr: !0,
type: "String"
},
{
name: "renderings",
type: "Rendering",
isMany: !0
}]
},
{
name: "Gateway",
isAbstract: !0,
superClass: ["FlowNode"],
properties: [{
name: "gatewayDirection",
type: "GatewayDirection",
default:
"Unspecified",
isAttr: !0
}]
},
{
name: "EventBasedGateway",
superClass: ["Gateway"],
properties: [{
name: "instantiate",
default:
!1,
isAttr: !0,
type: "Boolean"
},
{
name: "eventGatewayType",
type: "EventBasedGatewayType",
isAttr: !0,
default:
"Exclusive"
}]
},
{
name: "ComplexGateway",
superClass: ["Gateway"],
properties: [{
name: "activationCondition",
type: "Expression",
xml: {
serialize: "xsi:type"
}
},
{
name: "default",
type: "SequenceFlow",
isAttr: !0,
isReference: !0
}]
},
{
name: "ExclusiveGateway",
superClass: ["Gateway"],
properties: [{
name: "default",
type: "SequenceFlow",
isAttr: !0,
isReference: !0
}]
},
{
name: "InclusiveGateway",
superClass: ["Gateway"],
properties: [{
name: "default",
type: "SequenceFlow",
isAttr: !0,
isReference: !0
}]
},
{
name: "ParallelGateway",
superClass: ["Gateway"]
},
{
name: "RootElement",
isAbstract: !0,
superClass: ["BaseElement"]
},
{
name: "Relationship",
superClass: ["BaseElement"],
properties: [{
name: "type",
isAttr: !0,
type: "String"
},
{
name: "direction",
type: "RelationshipDirection",
isAttr: !0
},
{
name: "source",
isMany: !0,
isReference: !0,
type: "Element"
},
{
name: "target",
isMany: !0,
isReference: !0,
type: "Element"
}]
},
{
name: "BaseElement",
isAbstract: !0,
properties: [{
name: "id",
isAttr: !0,
type: "String",
isId: !0
},
{
name: "documentation",
type: "Documentation",
isMany: !0
},
{
name: "extensionDefinitions",
type: "ExtensionDefinition",
isMany: !0,
isReference: !0
},
{
name: "extensionElements",
type: "ExtensionElements"
}]
},
{
name: "Extension",
properties: [{
name: "mustUnderstand",
default:
!1,
isAttr: !0,
type: "Boolean"
},
{
name: "definition",
type: "ExtensionDefinition"
}]
},
{
name: "ExtensionDefinition",
properties: [{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "extensionAttributeDefinitions",
type: "ExtensionAttributeDefinition",
isMany: !0
}]
},
{
name: "ExtensionAttributeDefinition",
properties: [{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "type",
isAttr: !0,
type: "String"
},
{
name: "isReference",
default:
!1,
isAttr: !0,
type: "Boolean"
},
{
name: "extensionDefinition",
type: "ExtensionDefinition",
isAttr: !0,
isReference: !0
}]
},
{
name: "ExtensionElements",
properties: [{
name: "valueRef",
isAttr: !0,
isReference: !0,
type: "Element"
},
{
name: "values",
type: "Element",
isMany: !0
},
{
name: "extensionAttributeDefinition",
type: "ExtensionAttributeDefinition",
isAttr: !0,
isReference: !0
}]
},
{
name: "Documentation",
superClass: ["BaseElement"],
properties: [{
name: "text",
type: "String",
isBody: !0
},
{
name: "textFormat",
default:
"text/plain",
isAttr: !0,
type: "String"
}]
},
{
name: "Event",
isAbstract: !0,
superClass: ["FlowNode", "InteractionNode"],
properties: [{
name: "properties",
type: "Property",
isMany: !0
}]
},
{
name: "IntermediateCatchEvent",
superClass: ["CatchEvent"]
},
{
name: "IntermediateThrowEvent",
superClass: ["ThrowEvent"]
},
{
name: "EndEvent",
superClass: ["ThrowEvent"]
},
{
name: "StartEvent",
superClass: ["CatchEvent"],
properties: [{
name: "isInterrupting",
default:
!0,
isAttr: !0,
type: "Boolean"
}]
},
{
name: "ThrowEvent",
isAbstract: !0,
superClass: ["Event"],
properties: [{
name: "dataInputs",
type: "DataInput",
isMany: !0
},
{
name: "dataInputAssociations",
type: "DataInputAssociation",
isMany: !0
},
{
name: "inputSet",
type: "InputSet"
},
{
name: "eventDefinitions",
type: "EventDefinition",
isMany: !0
},
{
name: "eventDefinitionRef",
type: "EventDefinition",
isMany: !0,
isReference: !0
}]
},
{
name: "CatchEvent",
isAbstract: !0,
superClass: ["Event"],
properties: [{
name: "parallelMultiple",
isAttr: !0,
type: "Boolean",
default:
!1
},
{
name: "dataOutputs",
type: "DataOutput",
isMany: !0
},
{
name: "dataOutputAssociations",
type: "DataOutputAssociation",
isMany: !0
},
{
name: "outputSet",
type: "OutputSet"
},
{
name: "eventDefinitions",
type: "EventDefinition",
isMany: !0
},
{
name: "eventDefinitionRef",
type: "EventDefinition",
isMany: !0,
isReference: !0
}]
},
{
name: "BoundaryEvent",
superClass: ["CatchEvent"],
properties: [{
name: "cancelActivity",
default:
!0,
isAttr: !0,
type: "Boolean"
},
{
name: "attachedToRef",
type: "Activity",
isAttr: !0,
isReference: !0
}]
},
{
name: "EventDefinition",
isAbstract: !0,
superClass: ["RootElement"]
},
{
name: "CancelEventDefinition",
superClass: ["EventDefinition"]
},
{
name: "ErrorEventDefinition",
superClass: ["EventDefinition"],
properties: [{
name: "errorRef",
type: "Error",
isAttr: !0,
isReference: !0
}]
},
{
name: "TerminateEventDefinition",
superClass: ["EventDefinition"]
},
{
name: "EscalationEventDefinition",
superClass: ["EventDefinition"],
properties: [{
name: "escalationRef",
type: "Escalation",
isAttr: !0,
isReference: !0
}]
},
{
name: "Escalation",
properties: [{
name: "structureRef",
type: "ItemDefinition",
isAttr: !0,
isReference: !0
},
{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "escalationCode",
isAttr: !0,
type: "String"
}],
superClass: ["RootElement"]
},
{
name: "CompensateEventDefinition",
superClass: ["EventDefinition"],
properties: [{
name: "waitForCompletion",
isAttr: !0,
type: "Boolean"
},
{
name: "activityRef",
type: "Activity",
isAttr: !0,
isReference: !0
}]
},
{
name: "TimerEventDefinition",
superClass: ["EventDefinition"],
properties: [{
name: "timeDate",
type: "Expression",
xml: {
serialize: "xsi:type"
}
},
{
name: "timeCycle",
type: "Expression",
xml: {
serialize: "xsi:type"
}
},
{
name: "timeDuration",
type: "Expression",
xml: {
serialize: "xsi:type"
}
}]
},
{
name: "LinkEventDefinition",
superClass: ["EventDefinition"],
properties: [{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "target",
type: "LinkEventDefinition",
isAttr: !0,
isReference: !0
},
{
name: "source",
type: "LinkEventDefinition",
isMany: !0,
isReference: !0
}]
},
{
name: "MessageEventDefinition",
superClass: ["EventDefinition"],
properties: [{
name: "messageRef",
type: "Message",
isAttr: !0,
isReference: !0
},
{
name: "operationRef",
type: "Operation",
isAttr: !0,
isReference: !0
}]
},
{
name: "ConditionalEventDefinition",
superClass: ["EventDefinition"],
properties: [{
name: "condition",
type: "Expression",
xml: {
serialize: "xsi:type"
}
}]
},
{
name: "SignalEventDefinition",
superClass: ["EventDefinition"],
properties: [{
name: "signalRef",
type: "Signal",
isAttr: !0,
isReference: !0
}]
},
{
name: "Signal",
superClass: ["RootElement"],
properties: [{
name: "structureRef",
type: "ItemDefinition",
isAttr: !0,
isReference: !0
},
{
name: "name",
isAttr: !0,
type: "String"
}]
},
{
name: "ImplicitThrowEvent",
superClass: ["ThrowEvent"]
},
{
name: "DataState",
superClass: ["BaseElement"],
properties: [{
name: "name",
isAttr: !0,
type: "String"
}]
},
{
name: "ItemAwareElement",
superClass: ["BaseElement"],
properties: [{
name: "itemSubjectRef",
type: "ItemDefinition",
isAttr: !0,
isReference: !0
},
{
name: "dataState",
type: "DataState"
}]
},
{
name: "DataAssociation",
superClass: ["BaseElement"],
properties: [{
name: "assignment",
type: "Assignment",
isMany: !0
},
{
name: "sourceRef",
type: "ItemAwareElement",
isMany: !0,
isReference: !0
},
{
name: "targetRef",
type: "ItemAwareElement",
isReference: !0
},
{
name: "transformation",
type: "FormalExpression",
xml: {
serialize: "property"
}
}]
},
{
name: "DataInput",
superClass: ["ItemAwareElement"],
properties: [{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "isCollection",
default:
!1,
isAttr: !0,
type: "Boolean"
},
{
name: "inputSetRef",
type: "InputSet",
isVirtual: !0,
isMany: !0,
isReference: !0
},
{
name: "inputSetWithOptional",
type: "InputSet",
isVirtual: !0,
isMany: !0,
isReference: !0
},
{
name: "inputSetWithWhileExecuting",
type: "InputSet",
isVirtual: !0,
isMany: !0,
isReference: !0
}]
},
{
name: "DataOutput",
superClass: ["ItemAwareElement"],
properties: [{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "isCollection",
default:
!1,
isAttr: !0,
type: "Boolean"
},
{
name: "outputSetRef",
type: "OutputSet",
isVirtual: !0,
isMany: !0,
isReference: !0
},
{
name: "outputSetWithOptional",
type: "OutputSet",
isVirtual: !0,
isMany: !0,
isReference: !0
},
{
name: "outputSetWithWhileExecuting",
type: "OutputSet",
isVirtual: !0,
isMany: !0,
isReference: !0
}]
},
{
name: "InputSet",
superClass: ["BaseElement"],
properties: [{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "dataInputRefs",
type: "DataInput",
isMany: !0,
isReference: !0
},
{
name: "optionalInputRefs",
type: "DataInput",
isMany: !0,
isReference: !0
},
{
name: "whileExecutingInputRefs",
type: "DataInput",
isMany: !0,
isReference: !0
},
{
name: "outputSetRefs",
type: "OutputSet",
isMany: !0,
isReference: !0
}]
},
{
name: "OutputSet",
superClass: ["BaseElement"],
properties: [{
name: "dataOutputRefs",
type: "DataOutput",
isMany: !0,
isReference: !0
},
{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "inputSetRefs",
type: "InputSet",
isMany: !0,
isReference: !0
},
{
name: "optionalOutputRefs",
type: "DataOutput",
isMany: !0,
isReference: !0
},
{
name: "whileExecutingOutputRefs",
type: "DataOutput",
isMany: !0,
isReference: !0
}]
},
{
name: "Property",
superClass: ["ItemAwareElement"],
properties: [{
name: "name",
isAttr: !0,
type: "String"
}]
},
{
name: "DataInputAssociation",
superClass: ["DataAssociation"]
},
{
name: "DataOutputAssociation",
superClass: ["DataAssociation"]
},
{
name: "InputOutputSpecification",
superClass: ["BaseElement"],
properties: [{
name: "dataInputs",
type: "DataInput",
isMany: !0
},
{
name: "dataOutputs",
type: "DataOutput",
isMany: !0
},
{
name: "inputSets",
type: "InputSet",
isMany: !0
},
{
name: "outputSets",
type: "OutputSet",
isMany: !0
}]
},
{
name: "DataObject",
superClass: ["FlowElement", "ItemAwareElement"],
properties: [{
name: "isCollection",
default:
!1,
isAttr: !0,
type: "Boolean"
}]
},
{
name: "InputOutputBinding",
properties: [{
name: "inputDataRef",
type: "InputSet",
isAttr: !0,
isReference: !0
},
{
name: "outputDataRef",
type: "OutputSet",
isAttr: !0,
isReference: !0
},
{
name: "operationRef",
type: "Operation",
isAttr: !0,
isReference: !0
}]
},
{
name: "Assignment",
superClass: ["BaseElement"],
properties: [{
name: "from",
type: "Expression",
xml: {
serialize: "xsi:type"
}
},
{
name: "to",
type: "Expression",
xml: {
serialize: "xsi:type"
}
}]
},
{
name: "DataStore",
superClass: ["RootElement", "ItemAwareElement"],
properties: [{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "capacity",
isAttr: !0,
type: "Integer"
},
{
name: "isUnlimited",
default:
!0,
isAttr: !0,
type: "Boolean"
}]
},
{
name: "DataStoreReference",
superClass: ["ItemAwareElement", "FlowElement"],
properties: [{
name: "dataStoreRef",
type: "DataStore",
isAttr: !0,
isReference: !0
}]
},
{
name: "DataObjectReference",
superClass: ["ItemAwareElement", "FlowElement"],
properties: [{
name: "dataObjectRef",
type: "DataObject",
isAttr: !0,
isReference: !0
}]
},
{
name: "ConversationLink",
superClass: ["BaseElement"],
properties: [{
name: "sourceRef",
type: "InteractionNode",
isAttr: !0,
isReference: !0
},
{
name: "targetRef",
type: "InteractionNode",
isAttr: !0,
isReference: !0
},
{
name: "name",
isAttr: !0,
type: "String"
}]
},
{
name: "ConversationAssociation",
superClass: ["BaseElement"],
properties: [{
name: "innerConversationNodeRef",
type: "ConversationNode",
isAttr: !0,
isReference: !0
},
{
name: "outerConversationNodeRef",
type: "ConversationNode",
isAttr: !0,
isReference: !0
}]
},
{
name: "CallConversation",
superClass: ["ConversationNode"],
properties: [{
name: "calledCollaborationRef",
type: "Collaboration",
isAttr: !0,
isReference: !0
},
{
name: "participantAssociations",
type: "ParticipantAssociation",
isMany: !0
}]
},
{
name: "Conversation",
superClass: ["ConversationNode"]
},
{
name: "SubConversation",
superClass: ["ConversationNode"],
properties: [{
name: "conversationNodes",
type: "ConversationNode",
isMany: !0
}]
},
{
name: "ConversationNode",
isAbstract: !0,
superClass: ["InteractionNode", "BaseElement"],
properties: [{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "participantRefs",
type: "Participant",
isMany: !0,
isReference: !0
},
{
name: "messageFlowRefs",
type: "MessageFlow",
isMany: !0,
isReference: !0
},
{
name: "correlationKeys",
type: "CorrelationKey",
isMany: !0
}]
},
{
name: "GlobalConversation",
superClass: ["Collaboration"]
},
{
name: "PartnerEntity",
superClass: ["RootElement"],
properties: [{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "participantRef",
type: "Participant",
isMany: !0,
isReference: !0
}]
},
{
name: "PartnerRole",
superClass: ["RootElement"],
properties: [{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "participantRef",
type: "Participant",
isMany: !0,
isReference: !0
}]
},
{
name: "CorrelationProperty",
superClass: ["RootElement"],
properties: [{
name: "correlationPropertyRetrievalExpression",
type: "CorrelationPropertyRetrievalExpression",
isMany: !0
},
{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "type",
type: "ItemDefinition",
isAttr: !0,
isReference: !0
}]
},
{
name: "Error",
superClass: ["RootElement"],
properties: [{
name: "structureRef",
type: "ItemDefinition",
isAttr: !0,
isReference: !0
},
{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "errorCode",
isAttr: !0,
type: "String"
}]
},
{
name: "CorrelationKey",
superClass: ["BaseElement"],
properties: [{
name: "correlationPropertyRef",
type: "CorrelationProperty",
isMany: !0,
isReference: !0
},
{
name: "name",
isAttr: !0,
type: "String"
}]
},
{
name: "Expression",
superClass: ["BaseElement"],
isAbstract: !0
},
{
name: "FormalExpression",
superClass: ["Expression"],
properties: [{
name: "language",
isAttr: !0,
type: "String"
},
{
name: "body",
type: "String",
isBody: !0
},
{
name: "evaluatesToTypeRef",
type: "ItemDefinition",
isAttr: !0,
isReference: !0
}]
},
{
name: "Message",
superClass: ["RootElement"],
properties: [{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "itemRef",
type: "ItemDefinition",
isAttr: !0,
isReference: !0
}]
},
{
name: "ItemDefinition",
superClass: ["RootElement"],
properties: [{
name: "itemKind",
type: "ItemKind",
isAttr: !0
},
{
name: "structureRef",
type: "String",
isAttr: !0
},
{
name: "isCollection",
default:
!1,
isAttr: !0,
type: "Boolean"
},
{
name: "import",
type: "Import",
isAttr: !0,
isReference: !0
}]
},
{
name: "FlowElement",
isAbstract: !0,
superClass: ["BaseElement"],
properties: [{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "auditing",
type: "Auditing"
},
{
name: "monitoring",
type: "Monitoring"
},
{
name: "categoryValueRef",
type: "CategoryValue",
isMany: !0,
isReference: !0
}]
},
{
name: "SequenceFlow",
superClass: ["FlowElement"],
properties: [{
name: "isImmediate",
isAttr: !0,
type: "Boolean"
},
{
name: "conditionExpression",
type: "Expression",
xml: {
serialize: "xsi:type"
}
},
{
name: "sourceRef",
type: "FlowNode",
isAttr: !0,
isReference: !0
},
{
name: "targetRef",
type: "FlowNode",
isAttr: !0,
isReference: !0
}]
},
{
name: "FlowElementsContainer",
isAbstract: !0,
superClass: ["BaseElement"],
properties: [{
name: "laneSets",
type: "LaneSet",
isMany: !0
},
{
name: "flowElements",
type: "FlowElement",
isMany: !0
}]
},
{
name: "CallableElement",
isAbstract: !0,
superClass: ["RootElement"],
properties: [{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "ioSpecification",
type: "InputOutputSpecification",
xml: {
serialize: "property"
}
},
{
name: "supportedInterfaceRef",
type: "Interface",
isMany: !0,
isReference: !0
},
{
name: "ioBinding",
type: "InputOutputBinding",
isMany: !0,
xml: {
serialize: "property"
}
}]
},
{
name: "FlowNode",
isAbstract: !0,
superClass: ["FlowElement"],
properties: [{
name: "incoming",
type: "SequenceFlow",
isMany: !0,
isReference: !0
},
{
name: "outgoing",
type: "SequenceFlow",
isMany: !0,
isReference: !0
},
{
name: "lanes",
type: "Lane",
isVirtual: !0,
isMany: !0,
isReference: !0
}]
},
{
name: "CorrelationPropertyRetrievalExpression",
superClass: ["BaseElement"],
properties: [{
name: "messagePath",
type: "FormalExpression"
},
{
name: "messageRef",
type: "Message",
isAttr: !0,
isReference: !0
}]
},
{
name: "CorrelationPropertyBinding",
superClass: ["BaseElement"],
properties: [{
name: "dataPath",
type: "FormalExpression"
},
{
name: "correlationPropertyRef",
type: "CorrelationProperty",
isAttr: !0,
isReference: !0
}]
},
{
name: "Resource",
superClass: ["RootElement"],
properties: [{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "resourceParameters",
type: "ResourceParameter",
isMany: !0
}]
},
{
name: "ResourceParameter",
superClass: ["BaseElement"],
properties: [{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "isRequired",
isAttr: !0,
type: "Boolean"
},
{
name: "type",
type: "ItemDefinition",
isAttr: !0,
isReference: !0
}]
},
{
name: "CorrelationSubscription",
superClass: ["BaseElement"],
properties: [{
name: "correlationKeyRef",
type: "CorrelationKey",
isAttr: !0,
isReference: !0
},
{
name: "correlationPropertyBinding",
type: "CorrelationPropertyBinding",
isMany: !0
}]
},
{
name: "MessageFlow",
superClass: ["BaseElement"],
properties: [{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "sourceRef",
type: "InteractionNode",
isAttr: !0,
isReference: !0
},
{
name: "targetRef",
type: "InteractionNode",
isAttr: !0,
isReference: !0
},
{
name: "messageRef",
type: "Message",
isAttr: !0,
isReference: !0
}]
},
{
name: "MessageFlowAssociation",
superClass: ["BaseElement"],
properties: [{
name: "innerMessageFlowRef",
type: "MessageFlow",
isAttr: !0,
isReference: !0
},
{
name: "outerMessageFlowRef",
type: "MessageFlow",
isAttr: !0,
isReference: !0
}]
},
{
name: "InteractionNode",
isAbstract: !0,
properties: [{
name: "incomingConversationLinks",
type: "ConversationLink",
isVirtual: !0,
isMany: !0,
isReference: !0
},
{
name: "outgoingConversationLinks",
type: "ConversationLink",
isVirtual: !0,
isMany: !0,
isReference: !0
}]
},
{
name: "Participant",
superClass: ["InteractionNode", "BaseElement"],
properties: [{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "interfaceRef",
type: "Interface",
isMany: !0,
isReference: !0
},
{
name: "participantMultiplicity",
type: "ParticipantMultiplicity"
},
{
name: "endPointRefs",
type: "EndPoint",
isMany: !0,
isReference: !0
},
{
name: "processRef",
type: "Process",
isAttr: !0,
isReference: !0
}]
},
{
name: "ParticipantAssociation",
superClass: ["BaseElement"],
properties: [{
name: "innerParticipantRef",
type: "Participant",
isAttr: !0,
isReference: !0
},
{
name: "outerParticipantRef",
type: "Participant",
isAttr: !0,
isReference: !0
}]
},
{
name: "ParticipantMultiplicity",
properties: [{
name: "minimum",
default:
0,
isAttr: !0,
type: "Integer"
},
{
name: "maximum",
default:
1,
isAttr: !0,
type: "Integer"
}]
},
{
name: "Collaboration",
superClass: ["RootElement"],
properties: [{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "isClosed",
isAttr: !0,
type: "Boolean"
},
{
name: "participants",
type: "Participant",
isMany: !0
},
{
name: "messageFlows",
type: "MessageFlow",
isMany: !0
},
{
name: "artifacts",
type: "Artifact",
isMany: !0
},
{
name: "conversations",
type: "ConversationNode",
isMany: !0
},
{
name: "conversationAssociations",
type: "ConversationAssociation"
},
{
name: "participantAssociations",
type: "ParticipantAssociation",
isMany: !0
},
{
name: "messageFlowAssociations",
type: "MessageFlowAssociation",
isMany: !0
},
{
name: "correlationKeys",
type: "CorrelationKey",
isMany: !0
},
{
name: "choreographyRef",
type: "Choreography",
isMany: !0,
isReference: !0
},
{
name: "conversationLinks",
type: "ConversationLink",
isMany: !0
}]
},
{
name: "ChoreographyActivity",
isAbstract: !0,
superClass: ["FlowNode"],
properties: [{
name: "participantRefs",
type: "Participant",
isMany: !0,
isReference: !0
},
{
name: "initiatingParticipantRef",
type: "Participant",
isAttr: !0,
isReference: !0
},
{
name: "correlationKeys",
type: "CorrelationKey",
isMany: !0
},
{
name: "loopType",
type: "ChoreographyLoopType",
default:
"None",
isAttr: !0
}]
},
{
name: "CallChoreography",
superClass: ["ChoreographyActivity"],
properties: [{
name: "calledChoreographyRef",
type: "Choreography",
isAttr: !0,
isReference: !0
},
{
name: "participantAssociations",
type: "ParticipantAssociation",
isMany: !0
}]
},
{
name: "SubChoreography",
superClass: ["ChoreographyActivity", "FlowElementsContainer"],
properties: [{
name: "artifacts",
type: "Artifact",
isMany: !0
}]
},
{
name: "ChoreographyTask",
superClass: ["ChoreographyActivity"],
properties: [{
name: "messageFlowRef",
type: "MessageFlow",
isMany: !0,
isReference: !0
}]
},
{
name: "Choreography",
superClass: ["FlowElementsContainer", "Collaboration"]
},
{
name: "GlobalChoreographyTask",
superClass: ["Choreography"],
properties: [{
name: "initiatingParticipantRef",
type: "Participant",
isAttr: !0,
isReference: !0
}]
},
{
name: "TextAnnotation",
superClass: ["Artifact"],
properties: [{
name: "text",
type: "String"
},
{
name: "textFormat",
default:
"text/plain",
isAttr: !0,
type: "String"
}]
},
{
name: "Group",
superClass: ["Artifact"],
properties: [{
name: "categoryValueRef",
type: "CategoryValue",
isAttr: !0,
isReference: !0
}]
},
{
name: "Association",
superClass: ["Artifact"],
properties: [{
name: "associationDirection",
type: "AssociationDirection",
isAttr: !0
},
{
name: "sourceRef",
type: "BaseElement",
isAttr: !0,
isReference: !0
},
{
name: "targetRef",
type: "BaseElement",
isAttr: !0,
isReference: !0
}]
},
{
name: "Category",
superClass: ["RootElement"],
properties: [{
name: "categoryValue",
type: "CategoryValue",
isMany: !0
},
{
name: "name",
isAttr: !0,
type: "String"
}]
},
{
name: "Artifact",
isAbstract: !0,
superClass: ["BaseElement"]
},
{
name: "CategoryValue",
superClass: ["BaseElement"],
properties: [{
name: "categorizedFlowElements",
type: "FlowElement",
isVirtual: !0,
isMany: !0,
isReference: !0
},
{
name: "value",
isAttr: !0,
type: "String"
}]
},
{
name: "Activity",
isAbstract: !0,
superClass: ["FlowNode"],
properties: [{
name: "isForCompensation",
default:
!1,
isAttr: !0,
type: "Boolean"
},
{
name: "default",
type: "SequenceFlow",
isAttr: !0,
isReference: !0
},
{
name: "ioSpecification",
type: "InputOutputSpecification",
xml: {
serialize: "property"
}
},
{
name: "boundaryEventRefs",
type: "BoundaryEvent",
isMany: !0,
isReference: !0
},
{
name: "properties",
type: "Property",
isMany: !0
},
{
name: "dataInputAssociations",
type: "DataInputAssociation",
isMany: !0
},
{
name: "dataOutputAssociations",
type: "DataOutputAssociation",
isMany: !0
},
{
name: "startQuantity",
default:
1,
isAttr: !0,
type: "Integer"
},
{
name: "resources",
type: "ResourceRole",
isMany: !0
},
{
name: "completionQuantity",
default:
1,
isAttr: !0,
type: "Integer"
},
{
name: "loopCharacteristics",
type: "LoopCharacteristics"
}]
},
{
name: "ServiceTask",
superClass: ["Task"],
properties: [{
name: "implementation",
isAttr: !0,
type: "String"
},
{
name: "operationRef",
type: "Operation",
isAttr: !0,
isReference: !0
}]
},
{
name: "SubProcess",
superClass: ["Activity", "FlowElementsContainer", "InteractionNode"],
properties: [{
name: "triggeredByEvent",
default:
!1,
isAttr: !0,
type: "Boolean"
},
{
name: "artifacts",
type: "Artifact",
isMany: !0
}]
},
{
name: "LoopCharacteristics",
isAbstract: !0,
superClass: ["BaseElement"]
},
{
name: "MultiInstanceLoopCharacteristics",
superClass: ["LoopCharacteristics"],
properties: [{
name: "isSequential",
default:
!1,
isAttr: !0,
type: "Boolean"
},
{
name: "behavior",
type: "MultiInstanceBehavior",
default:
"All",
isAttr: !0
},
{
name: "loopCardinality",
type: "Expression",
xml: {
serialize: "xsi:type"
}
},
{
name: "loopDataInputRef",
type: "ItemAwareElement",
isReference: !0
},
{
name: "loopDataOutputRef",
type: "ItemAwareElement",
isReference: !0
},
{
name: "inputDataItem",
type: "DataInput",
xml: {
serialize: "property"
}
},
{
name: "outputDataItem",
type: "DataOutput",
xml: {
serialize: "property"
}
},
{
name: "complexBehaviorDefinition",
type: "ComplexBehaviorDefinition",
isMany: !0
},
{
name: "completionCondition",
type: "Expression",
xml: {
serialize: "xsi:type"
}
},
{
name: "oneBehaviorEventRef",
type: "EventDefinition",
isAttr: !0,
isReference: !0
},
{
name: "noneBehaviorEventRef",
type: "EventDefinition",
isAttr: !0,
isReference: !0
}]
},
{
name: "StandardLoopCharacteristics",
superClass: ["LoopCharacteristics"],
properties: [{
name: "testBefore",
default:
!1,
isAttr: !0,
type: "Boolean"
},
{
name: "loopCondition",
type: "Expression",
xml: {
serialize: "xsi:type"
}
},
{
name: "loopMaximum",
type: "Expression",
xml: {
serialize: "xsi:type"
}
}]
},
{
name: "CallActivity",
superClass: ["Activity"],
properties: [{
name: "calledElement",
type: "String",
isAttr: !0
}]
},
{
name: "Task",
superClass: ["Activity", "InteractionNode"]
},
{
name: "SendTask",
superClass: ["Task"],
properties: [{
name: "implementation",
isAttr: !0,
type: "String"
},
{
name: "operationRef",
type: "Operation",
isAttr: !0,
isReference: !0
},
{
name: "messageRef",
type: "Message",
isAttr: !0,
isReference: !0
}]
},
{
name: "ReceiveTask",
superClass: ["Task"],
properties: [{
name: "implementation",
isAttr: !0,
type: "String"
},
{
name: "instantiate",
default:
!1,
isAttr: !0,
type: "Boolean"
},
{
name: "operationRef",
type: "Operation",
isAttr: !0,
isReference: !0
},
{
name: "messageRef",
type: "Message",
isAttr: !0,
isReference: !0
}]
},
{
name: "ScriptTask",
superClass: ["Task"],
properties: [{
name: "scriptFormat",
isAttr: !0,
type: "String"
},
{
name: "script",
type: "String"
}]
},
{
name: "BusinessRuleTask",
superClass: ["Task"],
properties: [{
name: "implementation",
isAttr: !0,
type: "String"
}]
},
{
name: "AdHocSubProcess",
superClass: ["SubProcess"],
properties: [{
name: "completionCondition",
type: "Expression",
xml: {
serialize: "xsi:type"
}
},
{
name: "ordering",
type: "AdHocOrdering",
isAttr: !0
},
{
name: "cancelRemainingInstances",
default:
!0,
isAttr: !0,
type: "Boolean"
}]
},
{
name: "Transaction",
superClass: ["SubProcess"],
properties: [{
name: "protocol",
isAttr: !0,
type: "String"
},
{
name: "method",
isAttr: !0,
type: "String"
}]
},
{
name: "GlobalScriptTask",
superClass: ["GlobalTask"],
properties: [{
name: "scriptLanguage",
isAttr: !0,
type: "String"
},
{
name: "script",
isAttr: !0,
type: "String"
}]
},
{
name: "GlobalBusinessRuleTask",
superClass: ["GlobalTask"],
properties: [{
name: "implementation",
isAttr: !0,
type: "String"
}]
},
{
name: "ComplexBehaviorDefinition",
superClass: ["BaseElement"],
properties: [{
name: "condition",
type: "FormalExpression"
},
{
name: "event",
type: "ImplicitThrowEvent"
}]
},
{
name: "ResourceRole",
superClass: ["BaseElement"],
properties: [{
name: "resourceRef",
type: "Resource",
isReference: !0
},
{
name: "resourceParameterBindings",
type: "ResourceParameterBinding",
isMany: !0
},
{
name: "resourceAssignmentExpression",
type: "ResourceAssignmentExpression"
},
{
name: "name",
isAttr: !0,
type: "String"
}]
},
{
name: "ResourceParameterBinding",
properties: [{
name: "expression",
type: "Expression",
xml: {
serialize: "xsi:type"
}
},
{
name: "parameterRef",
type: "ResourceParameter",
isAttr: !0,
isReference: !0
}]
},
{
name: "ResourceAssignmentExpression",
properties: [{
name: "expression",
type: "Expression",
xml: {
serialize: "xsi:type"
}
}],
superClass: ["BaseElement"]
},
{
name: "Import",
properties: [{
name: "importType",
isAttr: !0,
type: "String"
},
{
name: "location",
isAttr: !0,
type: "String"
},
{
name: "namespace",
isAttr: !0,
type: "String"
}]
},
{
name: "Definitions",
superClass: ["BaseElement"],
properties: [{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "targetNamespace",
isAttr: !0,
type: "String"
},
{
name: "expressionLanguage",
default:
"http://www.w3.org/1999/XPath",
isAttr: !0,
type: "String"
},
{
name: "typeLanguage",
default:
"http://www.w3.org/2001/XMLSchema",
isAttr: !0,
type: "String"
},
{
name: "imports",
type: "Import",
isMany: !0
},
{
name: "extensions",
type: "Extension",
isMany: !0
},
{
name: "rootElements",
type: "RootElement",
isMany: !0
},
{
name: "diagrams",
isMany: !0,
type: "bpmndi:BPMNDiagram"
},
{
name: "exporter",
isAttr: !0,
type: "String"
},
{
name: "relationships",
type: "Relationship",
isMany: !0
},
{
name: "exporterVersion",
isAttr: !0,
type: "String"
}]
}],
emumerations: [{
name: "ProcessType",
literalValues: [{
name: "None"
},
{
name: "Public"
},
{
name: "Private"
}]
},
{
name: "GatewayDirection",
literalValues: [{
name: "Unspecified"
},
{
name: "Converging"
},
{
name: "Diverging"
},
{
name: "Mixed"
}]
},
{
name: "EventBasedGatewayType",
literalValues: [{
name: "Parallel"
},
{
name: "Exclusive"
}]
},
{
name: "RelationshipDirection",
literalValues: [{
name: "None"
},
{
name: "Forward"
},
{
name: "Backward"
},
{
name: "Both"
}]
},
{
name: "ItemKind",
literalValues: [{
name: "Physical"
},
{
name: "Information"
}]
},
{
name: "ChoreographyLoopType",
literalValues: [{
name: "None"
},
{
name: "Standard"
},
{
name: "MultiInstanceSequential"
},
{
name: "MultiInstanceParallel"
}]
},
{
name: "AssociationDirection",
literalValues: [{
name: "None"
},
{
name: "One"
},
{
name: "Both"
}]
},
{
name: "MultiInstanceBehavior",
literalValues: [{
name: "None"
},
{
name: "One"
},
{
name: "All"
},
{
name: "Complex"
}]
},
{
name: "AdHocOrdering",
literalValues: [{
name: "Parallel"
},
{
name: "Sequential"
}]
}],
prefix: "bpmn",
xml: {
tagAlias: "lowerCase",
typePrefix: "t"
}
}
},
{}],
33 : [function(e, t, n) {
t.exports = {
name: "BPMNDI",
uri: "http://www.omg.org/spec/BPMN/20100524/DI",
types: [{
name: "BPMNDiagram",
properties: [{
name: "plane",
type: "BPMNPlane",
redefines: "di:Diagram#rootElement"
},
{
name: "labelStyle",
type: "BPMNLabelStyle",
isMany: !0
}],
superClass: ["di:Diagram"]
},
{
name: "BPMNPlane",
properties: [{
name: "bpmnElement",
isAttr: !0,
isReference: !0,
type: "bpmn:BaseElement",
redefines: "di:DiagramElement#modelElement"
}],
superClass: ["di:Plane"]
},
{
name: "BPMNShape",
properties: [{
name: "bpmnElement",
isAttr: !0,
isReference: !0,
type: "bpmn:BaseElement",
redefines: "di:DiagramElement#modelElement"
},
{
name: "isHorizontal",
isAttr: !0,
type: "Boolean"
},
{
name: "isExpanded",
isAttr: !0,
type: "Boolean"
},
{
name: "isMarkerVisible",
isAttr: !0,
type: "Boolean"
},
{
name: "label",
type: "BPMNLabel"
},
{
name: "isMessageVisible",
isAttr: !0,
type: "Boolean"
},
{
name: "participantBandKind",
type: "ParticipantBandKind",
isAttr: !0
},
{
name: "choreographyActivityShape",
type: "BPMNShape",
isAttr: !0,
isReference: !0
}],
superClass: ["di:LabeledShape"]
},
{
name: "BPMNEdge",
properties: [{
name: "label",
type: "BPMNLabel"
},
{
name: "bpmnElement",
isAttr: !0,
isReference: !0,
type: "bpmn:BaseElement",
redefines: "di:DiagramElement#modelElement"
},
{
name: "sourceElement",
isAttr: !0,
isReference: !0,
type: "di:DiagramElement",
redefines: "di:Edge#source"
},
{
name: "targetElement",
isAttr: !0,
isReference: !0,
type: "di:DiagramElement",
redefines: "di:Edge#target"
},
{
name: "messageVisibleKind",
type: "MessageVisibleKind",
isAttr: !0,
default:
"initiating"
}],
superClass: ["di:LabeledEdge"]
},
{
name: "BPMNLabel",
properties: [{
name: "labelStyle",
type: "BPMNLabelStyle",
isAttr: !0,
isReference: !0,
redefines: "di:DiagramElement#style"
}],
superClass: ["di:Label"]
},
{
name: "BPMNLabelStyle",
properties: [{
name: "font",
type: "dc:Font"
}],
superClass: ["di:Style"]
}],
emumerations: [{
name: "ParticipantBandKind",
literalValues: [{
name: "top_initiating"
},
{
name: "middle_initiating"
},
{
name: "bottom_initiating"
},
{
name: "top_non_initiating"
},
{
name: "middle_non_initiating"
},
{
name: "bottom_non_initiating"
}]
},
{
name: "MessageVisibleKind",
literalValues: [{
name: "initiating"
},
{
name: "non_initiating"
}]
}],
associations: [],
prefix: "bpmndi"
}
},
{}],
34 : [function(e, t, n) {
t.exports = {
name: "DC",
uri: "http://www.omg.org/spec/DD/20100524/DC",
types: [{
name: "Boolean"
},
{
name: "Integer"
},
{
name: "Real"
},
{
name: "String"
},
{
name: "Font",
properties: [{
name: "name",
type: "String",
isAttr: !0
},
{
name: "size",
type: "Real",
isAttr: !0
},
{
name: "isBold",
type: "Boolean",
isAttr: !0
},
{
name: "isItalic",
type: "Boolean",
isAttr: !0
},
{
name: "isUnderline",
type: "Boolean",
isAttr: !0
},
{
name: "isStrikeThrough",
type: "Boolean",
isAttr: !0
}]
},
{
name: "Point",
properties: [{
name: "x",
type: "Real",
default:
"0",
isAttr: !0
},
{
name: "y",
type: "Real",
default:
"0",
isAttr: !0
}]
},
{
name: "Bounds",
properties: [{
name: "x",
type: "Real",
default:
"0",
isAttr: !0
},
{
name: "y",
type: "Real",
default:
"0",
isAttr: !0
},
{
name: "width",
type: "Real",
isAttr: !0
},
{
name: "height",
type: "Real",
isAttr: !0
}]
}],
prefix: "dc",
associations: []
}
},
{}],
35 : [function(e, t, n) {
t.exports = {
name: "DI",
uri: "http://www.omg.org/spec/DD/20100524/DI",
types: [{
name: "DiagramElement",
isAbstract: !0,
properties: [{
name: "id",
type: "String",
isAttr: !0,
isId: !0
},
{
name: "extension",
type: "Extension"
},
{
name: "owningDiagram",
type: "Diagram",
isReadOnly: !0,
isVirtual: !0,
isReference: !0
},
{
name: "owningElement",
type: "DiagramElement",
isReadOnly: !0,
isVirtual: !0,
isReference: !0
},
{
name: "modelElement",
isReadOnly: !0,
isVirtual: !0,
isReference: !0,
type: "Element"
},
{
name: "style",
type: "Style",
isReadOnly: !0,
isVirtual: !0,
isReference: !0
},
{
name: "ownedElement",
type: "DiagramElement",
isReadOnly: !0,
isVirtual: !0,
isMany: !0
}]
},
{
name: "Node",
isAbstract: !0,
superClass: ["DiagramElement"]
},
{
name: "Edge",
isAbstract: !0,
superClass: ["DiagramElement"],
properties: [{
name: "source",
type: "DiagramElement",
isReadOnly: !0,
isVirtual: !0,
isReference: !0
},
{
name: "target",
type: "DiagramElement",
isReadOnly: !0,
isVirtual: !0,
isReference: !0
},
{
name: "waypoint",
isUnique: !1,
isMany: !0,
type: "dc:Point",
xml: {
serialize: "xsi:type"
}
}]
},
{
name: "Diagram",
isAbstract: !0,
properties: [{
name: "id",
type: "String",
isAttr: !0,
isId: !0
},
{
name: "rootElement",
type: "DiagramElement",
isReadOnly: !0,
isVirtual: !0
},
{
name: "name",
isAttr: !0,
type: "String"
},
{
name: "documentation",
isAttr: !0,
type: "String"
},
{
name: "resolution",
isAttr: !0,
type: "Real"
},
{
name: "ownedStyle",
type: "Style",
isReadOnly: !0,
isVirtual: !0,
isMany: !0
}]
},
{
name: "Shape",
isAbstract: !0,
superClass: ["Node"],
properties: [{
name: "bounds",
type: "dc:Bounds"
}]
},
{
name: "Plane",
isAbstract: !0,
superClass: ["Node"],
properties: [{
name: "planeElement",
type: "DiagramElement",
subsettedProperty: "DiagramElement-ownedElement",
isMany: !0
}]
},
{
name: "LabeledEdge",
isAbstract: !0,
superClass: ["Edge"],
properties: [{
name: "ownedLabel",
type: "Label",
isReadOnly: !0,
subsettedProperty: "DiagramElement-ownedElement",
isVirtual: !0,
isMany: !0
}]
},
{
name: "LabeledShape",
isAbstract: !0,
superClass: ["Shape"],
properties: [{
name: "ownedLabel",
type: "Label",
isReadOnly: !0,
subsettedProperty: "DiagramElement-ownedElement",
isVirtual: !0,
isMany: !0
}]
},
{
name: "Label",
isAbstract: !0,
superClass: ["Node"],
properties: [{
name: "bounds",
type: "dc:Bounds"
}]
},
{
name: "Style",
isAbstract: !0,
properties: [{
name: "id",
type: "String",
isAttr: !0,
isId: !0
}]
},
{
name: "Extension",
properties: [{
name: "values",
type: "Element",
isMany: !0
}]
}],
associations: [],
prefix: "di",
xml: {
tagAlias: "lowerCase"
}
}
},
{}],
36 : [function(e, t, n) {
t.exports = e(37)
},
{
37 : 37
}],
37 : [function(e, t, n) {
"use strict";
function r(e) {
function t(e) {
return i.indexOf(e) >= 0
}
function n(e) {
i.push(e)
}
function r(e) {
t(e) || ((e.__depends__ || []).forEach(r), t(e) || (n(e), (e.__init__ || []).forEach(function(e) {
o.push(e)
})))
}
var i = [],
o = [];
e.forEach(r);
var s = new a.Injector(i);
return o.forEach(function(e) {
try {
s["string" == typeof e ? "get": "invoke"](e)
} catch(e) {
throw console.error("Failed to instantiate component"),
console.error(e.stack),
e
}
}),
s
}
function i(t) {
t = t || {};
var n = {
config: ["value", t]
},
i = e(43),
o = [n, i].concat(t.modules || []);
return r(o)
}
function o(e, t) {
this.injector = t = t || i(e),
this.get = t.get,
this.invoke = t.invoke,
this.get("eventBus").fire("diagram.init")
}
var a = e(71);
t.exports = o,
o.prototype.destroy = function() {
this.get("eventBus").fire("diagram.destroy")
},
o.prototype.clear = function() {
this.get("eventBus").fire("diagram.clear")
}
},
{
43 : 43,
71 : 71
}],
38 : [function(e, t, n) {
"use strict";
function r(e, t) {
return Math.round(e * t) / t
}
function i(e) {
return l(e) ? e + "px": e
}
function o(e) {
e = u({},
{
width: "100%",
height: "100%"
},
e);
var t = e.container || document.body,
n = document.createElement("div");
return n.setAttribute("class", "djs-container"),
u(n.style, {
position: "relative",
overflow: "hidden",
width: i(e.width),
height: i(e.height)
}),
t.appendChild(n),
n
}
function a(e, t) {
return e.group().attr({
class: t
})
}
function s(e, t, n, r) {
this._eventBus = t,
this._elementRegistry = r,
this._graphicsFactory = n,
this._init(e || {})
}
function c(e, t) {
var n = "matrix(" + t.a + "," + t.b + "," + t.c + "," + t.d + "," + t.e + "," + t.f + ")";
e.setAttribute("transform", n)
}
var l = e(191),
u = e(197),
p = e(83),
f = e(80),
h = e(91),
d = e(61),
m = e(62),
y = e(76),
g = "base",
v = {
shape: ["x", "y", "width", "height"],
connection: ["waypoints"]
};
s.$inject = ["config.canvas", "eventBus", "graphicsFactory", "elementRegistry"],
t.exports = s,
s.prototype._init = function(e) {
var t = this._eventBus,
n = this._container = o(e),
r = this._svg = y.createSnapAt("100%", "100%", n),
i = this._viewport = a(r, "viewport");
this._layers = {},
e.deferUpdate !== !1 && (this._viewboxChanged = h(this._viewboxChanged, 300)),
t.on("diagram.init",
function() {
t.fire("canvas.init", {
svg: r,
viewport: i
}),
this.resized()
},
this),
t.on("diagram.destroy", 500, this._destroy, this),
t.on("diagram.clear", 500, this._clear, this)
},
s.prototype._destroy = function(e) {
this._eventBus.fire("canvas.destroy", {
svg: this._svg,
viewport: this._viewport
});
var t = this._container.parentNode;
t && t.removeChild(this._container),
delete this._svg,
delete this._container,
delete this._layers,
delete this._rootElement,
delete this._viewport
},
s.prototype._clear = function() {
var e = this,
t = this._elementRegistry.getAll();
t.forEach(function(t) {
var n = m.getType(t);
"root" === n ? e.setRootElement(null, !0) : e._removeElement(t, n)
}),
delete this._cachedViewbox
},
s.prototype.getDefaultLayer = function() {
return this.getLayer(g)
},
s.prototype.getLayer = function(e) {
if (!e) throw new Error("must specify a name");
var t = this._layers[e];
return t || (t = this._layers[e] = a(this._viewport, "layer-" + e)),
t
},
s.prototype.getContainer = function() {
return this._container
},
s.prototype._updateMarker = function(e, t, n) {
var r;
e.id || (e = this._elementRegistry.get(e)),
r = this._elementRegistry._elements[e.id],
r && (p([r.gfx, r.secondaryGfx],
function(e) {
e && e[n ? "addClass": "removeClass"](t)
}), this._eventBus.fire("element.marker.update", {
element: e,
gfx: r.gfx,
marker: t,
add: !!n
}))
},
s.prototype.addMarker = function(e, t) {
this._updateMarker(e, t, !0)
},
s.prototype.removeMarker = function(e, t) {
this._updateMarker(e, t, !1)
},
s.prototype.hasMarker = function(e, t) {
e.id || (e = this._elementRegistry.get(e));
var n = this.getGraphics(e);
return n && n.hasClass(t)
},
s.prototype.toggleMarker = function(e, t) {
this.hasMarker(e, t) ? this.removeMarker(e, t) : this.addMarker(e, t)
},
s.prototype.getRootElement = function() {
return this._rootElement || this.setRootElement({
id: "__implicitroot",
children: []
}),
this._rootElement
},
s.prototype.setRootElement = function(e, t) {
e && this._ensureValid("root", e);
var n = this._rootElement,
r = this._elementRegistry,
i = this._eventBus;
if (n) {
if (!t) throw new Error("rootElement already set, need to specify override");
i.fire("root.remove", {
element: n
}),
i.fire("root.removed", {
element: n
}),
r.remove(n)
}
if (e) {
var o = this.getDefaultLayer();
i.fire("root.add", {
element: e
}),
r.add(e, o, this._svg),
i.fire("root.added", {
element: e,
gfx: o
})
}
return this._rootElement = e,
e
},
s.prototype._ensureValid = function(e, t) {
if (!t.id) throw new Error("element must have an id");
if (this._elementRegistry.get(t.id)) throw new Error("element with id " + t.id + " already exists");
var n = v[e],
r = f(n,
function(e) {
return "undefined" != typeof t[e]
});
if (!r) throw new Error("must supply { " + n.join(", ") + " } with " + e)
},
s.prototype._setParent = function(e, t, n) {
d.add(t.children, e, n),
e.parent = t
},
s.prototype._addElement = function(e, t, n, r) {
n = n || this.getRootElement();
var i = this._eventBus,
o = this._graphicsFactory;
this._ensureValid(e, t),
i.fire(e + ".add", {
element: t,
parent: n
}),
this._setParent(t, n, r);
var a = o.create(e, t);
return this._elementRegistry.add(t, a),
o.update(e, t, a),
i.fire(e + ".added", {
element: t,
gfx: a
}),
t
},
s.prototype.addShape = function(e, t, n) {
return this._addElement("shape", e, t, n)
},
s.prototype.addConnection = function(e, t, n) {
return this._addElement("connection", e, t, n)
},
s.prototype._removeElement = function(e, t) {
var n = this._elementRegistry,
r = this._graphicsFactory,
i = this._eventBus;
if (e = n.get(e.id || e)) return i.fire(t + ".remove", {
element: e
}),
r.remove(e),
d.remove(e.parent && e.parent.children, e),
e.parent = null,
i.fire(t + ".removed", {
element: e
}),
n.remove(e),
e
},
s.prototype.removeShape = function(e) {
return this._removeElement(e, "shape")
},
s.prototype.removeConnection = function(e) {
return this._removeElement(e, "connection")
},
s.prototype.getGraphics = function(e, t) {
return this._elementRegistry.getGraphics(e, t)
},
s.prototype._changeViewbox = function(e) {
this._eventBus.fire("canvas.viewbox.changing"),
e.apply(this),
this._cachedViewbox = null,
this._viewboxChanged()
},
s.prototype._viewboxChanged = function() {
this._eventBus.fire("canvas.viewbox.changed", {
viewbox: this.viewbox()
})
},
s.prototype.viewbox = function(e) {
if (void 0 === e && this._cachedViewbox) return this._cachedViewbox;
var t, n, i, o, a, s = this._viewport,
c = this.getSize();
return e ? (this._changeViewbox(function() {
i = Math.min(c.width / e.width, c.height / e.height),
n = (new y.Matrix).scale(i).translate( - e.x, -e.y),
s.transform(n)
}), e) : (t = this.getDefaultLayer().getBBox(!0), n = s.transform().localMatrix, i = r(n.a, 1e3), o = r( - n.e || 0, 1e3), a = r( - n.f || 0, 1e3), e = this._cachedViewbox = {
x: o ? o / i: 0,
y: a ? a / i: 0,
width: c.width / i,
height: c.height / i,
scale: i,
inner: {
width: t.width,
height: t.height,
x: t.x,
y: t.y
},
outer: c
})
},
s.prototype.scroll = function(e) {
var t = this._viewport.node,
n = t.getCTM();
return e && this._changeViewbox(function() {
e = u({
dx: 0,
dy: 0
},
e || {}),
n = this._svg.node.createSVGMatrix().translate(e.dx, e.dy).multiply(n),
c(t, n)
}),
{
x: n.e,
y: n.f
}
},
s.prototype.zoom = function(e, t) {
if (!e) return this.viewbox(e).scale;
if ("fit-viewport" === e) return this._fitViewport(t);
var n, i;
return this._changeViewbox(function() {
"object" != typeof t && (n = this.viewbox().outer, t = {
x: n.width / 2,
y: n.height / 2
}),
i = this._setZoom(e, t)
}),
r(i.a, 1e3)
},
s.prototype._fitViewport = function(e) {
var t, n, r = this.viewbox(),
i = r.outer,
o = r.inner;
return o.x >= 0 && o.y >= 0 && o.x + o.width <= i.width && o.y + o.height <= i.height && !e ? n = {
x: 0,
y: 0,
width: Math.max(o.width + o.x, i.width),
height: Math.max(o.height + o.y, i.height)
}: (t = Math.min(1, i.width / o.width, i.height / o.height), n = {
x: o.x + (e ? o.width / 2 - i.width / t / 2 : 0),
y: o.y + (e ? o.height / 2 - i.height / t / 2 : 0),
width: i.width / t,
height: i.height / t
}),
this.viewbox(n),
this.viewbox(!1).scale
},
s.prototype._setZoom = function(e, t) {
var n, r, i, o, a, s = this._svg.node,
l = this._viewport.node,
p = s.createSVGMatrix(),
f = s.createSVGPoint();
i = l.getCTM();
var h = i.a;
return t ? (n = u(f, t), r = n.matrixTransform(i.inverse()), o = p.translate(r.x, r.y).scale(1 / h * e).translate( - r.x, -r.y), a = i.multiply(o)) : a = p.scale(e),
c(this._viewport.node, a),
a
},
s.prototype.getSize = function() {
return {
width: this._container.clientWidth,
height: this._container.clientHeight
}
},
s.prototype.getAbsoluteBBox = function(e) {
var t, n = this.viewbox();
if (e.waypoints) {
var r = this.getGraphics(e),
i = r.getBBox(!0);
t = r.getBBox(),
t.x -= i.x,
t.y -= i.y,
t.width += 2 * i.x,
t.height += 2 * i.y
} else t = e;
var o = t.x * n.scale - n.x * n.scale,
a = t.y * n.scale - n.y * n.scale,
s = t.width * n.scale,
c = t.height * n.scale;
return {
x: o,
y: a,
width: s,
height: c
}
},
s.prototype.resized = function() {
delete this._cachedViewbox,
this._eventBus.fire("canvas.resized")
}
},
{
191 : 191,
197 : 197,
61 : 61,
62 : 62,
76 : 76,
80 : 80,
83 : 83,
91 : 91
}],
39 : [function(e, t, n) {
"use strict";
function r() {
this._uid = 12
}
var i = e(60),
o = e(197);
t.exports = r,
r.prototype.createRoot = function(e) {
return this.create("root", e)
},
r.prototype.createLabel = function(e) {
return this.create("label", e)
},
r.prototype.createShape = function(e) {
return this.create("shape", e)
},
r.prototype.createConnection = function(e) {
return this.create("connection", e)
},
r.prototype.create = function(e, t) {
return t = o({},
t || {}),
t.id || (t.id = e + "_" + this._uid++),
i.create(e, t)
}
},
{
197 : 197,
60 : 60
}],
40 : [function(e, t, n) {
"use strict";
function r() {
this._elements = {}
}
var i = "data-element-id";
t.exports = r,
r.prototype.add = function(e, t, n) {
var r = e.id;
this._validateId(r),
t.attr(i, r),
n && n.attr(i, r),
this._elements[r] = {
element: e,
gfx: t,
secondaryGfx: n
}
},
r.prototype.remove = function(e) {
var t = this._elements,
n = e.id || e,
r = n && t[n];
r && (r.gfx.attr(i, ""), r.secondaryGfx && r.secondaryGfx.attr(i, ""), delete t[n])
},
r.prototype.updateId = function(e, t) {
this._validateId(t),
"string" == typeof e && (e = this.get(e));
var n = this.getGraphics(e),
r = this.getGraphics(e, !0);
this.remove(e),
e.id = t,
this.add(e, n, r)
},
r.prototype.get = function(e) {
var t;
t = "string" == typeof e ? e: e && e.attr(i);
var n = this._elements[t];
return n && n.element
},
r.prototype.filter = function(e) {
var t = [];
return this.forEach(function(n, r) {
e(n, r) && t.push(n)
}),
t
},
r.prototype.getAll = function() {
return this.filter(function(e) {
return e
})
},
r.prototype.forEach = function(e) {
var t = this._elements;
Object.keys(t).forEach(function(n) {
var r = t[n],
i = r.element,
o = r.gfx;
return e(i, o)
})
},
r.prototype.getGraphics = function(e, t) {
var n = e.id || e,
r = this._elements[n];
return r && (t ? r.secondaryGfx: r.gfx)
},
r.prototype._validateId = function(e) {
if (!e) throw new Error("element must have an id");
if (this._elements[e]) throw new Error("element with id " + e + " already added")
}
},
{}],
41 : [function(e, t, n) {
"use strict";
function r() {
this._listeners = {},
this.on("diagram.destroy", 1, this._destroy, this)
}
function i() {}
function o(e, t) {
return e.apply(null, t)
}
var a = e(189),
s = e(188),
c = e(191),
l = e(90),
u = e(197),
p = "__fn",
f = 1e3,
h = Array.prototype.slice;
t.exports = r,
r.prototype.on = function(e, t, n, r) {
if (e = s(e) ? e: [e], a(t) && (r = n, n = t, t = f), !c(t)) throw new Error("priority must be a number");
var i = n;
r && (i = l(n, r), i[p] = n[p] || n);
var o = this,
u = {
priority: t,
callback: i
};
e.forEach(function(e) {
o._addListener(e, u)
})
},
r.prototype.once = function(e, t, n, r) {
function i() {
return o.off(e, i),
n.apply(r, arguments)
}
var o = this;
if (a(t) && (r = n, n = t, t = f), !c(t)) throw new Error("priority must be a number");
i[p] = n,
this.on(e, t, i)
},
r.prototype.off = function(e, t) {
var n, r, i, o = this._getListeners(e);
if (t) for (i = o.length - 1; n = o[i]; i--) r = n.callback,
r !== t && r[p] !== t || o.splice(i, 1);
else o.length = 0
},
r.prototype.fire = function(e, t) {
var n, r, o, a;
if (a = h.call(arguments), "object" == typeof e && (n = e, e = n.type), !e) throw new Error("no event type specified");
if (r = this._listeners[e]) {
t instanceof i ? n = t: (n = new i, n.init(t)),
a[0] = n;
var s = n.type;
e !== s && (n.type = e);
try {
o = this._invokeListeners(n, a, r)
} finally {
e !== s && (n.type = s)
}
return void 0 === o && n.defaultPrevented && (o = !1),
o
}
},
r.prototype.handleError = function(e) {
return this.fire("error", {
error: e
}) === !1
},
r.prototype._destroy = function() {
this._listeners = {}
},
r.prototype._invokeListeners = function(e, t, n) {
var r, i, o;
for (r = 0; (i = n[r]) && !e.cancelBubble; r++) o = this._invokeListener(e, t, i);
return o
},
r.prototype._invokeListener = function(e, t, n) {
var r;
try {
r = o(n.callback, t),
void 0 !== r && (e.returnValue = r, e.stopPropagation()),
r === !1 && e.preventDefault()
} catch(e) {
if (!this.handleError(e)) throw console.error("unhandled error in event listener"),
console.error(e.stack),
e
}
return r
},
r.prototype._addListener = function(e, t) {
var n, r, i = this._getListeners(e);
for (r = 0; n = i[r]; r++) if (n.priority < t.priority) return void i.splice(r, 0, t);
i.push(t)
},
r.prototype._getListeners = function(e) {
var t = this._listeners[e];
return t || (this._listeners[e] = t = []),
t
},
t.exports.Event = i,
i.prototype.stopPropagation = function() {
this.cancelBubble = !0
},
i.prototype.preventDefault = function() {
this.defaultPrevented = !0
},
i.prototype.init = function(e) {
u(this, e || {})
}
},
{
188 : 188,
189 : 189,
191 : 191,
197 : 197,
90 : 90
}],
42 : [function(e, t, n) {
"use strict";
function r(e, t) {
this._eventBus = e,
this._elementRegistry = t
}
var i = e(83),
o = e(87),
a = e(64),
s = e(210);
r.$inject = ["eventBus", "elementRegistry"],
t.exports = r,
r.prototype._getChildren = function(e) {
var t, n = this._elementRegistry.getGraphics(e);
return e.parent ? (t = a.getChildren(n), t || (t = n.parent().group().attr("class", "djs-children"))) : t = n,
t
},
r.prototype._clear = function(e) {
var t = a.getVisual(e);
return s(t.node),
t
},
r.prototype._createContainer = function(e, t) {
var n = t.group().attr("class", "djs-group"),
r = n.group().attr("class", "djs-element djs-" + e);
return r.group().attr("class", "djs-visual"),
r
},
r.prototype.create = function(e, t) {
var n = this._getChildren(t.parent);
return this._createContainer(e, n)
},
r.prototype.updateContainments = function(e) {
var t, n = this,
r = this._elementRegistry;
t = o(e,
function(e, t) {
return t.parent && (e[t.parent.id] = t.parent),
e
},
{}),
i(t,
function(e) {
var t = n._getChildren(e),
o = e.children;
o && i(o.slice().reverse(),
function(e) {
var n = r.getGraphics(e);
n.parent().prependTo(t)
})
})
},
r.prototype.drawShape = function(e, t) {
var n = this._eventBus;
return n.fire("render.shape", {
gfx: e,
element: t
})
},
r.prototype.getShapePath = function(e) {
var t = this._eventBus;
return t.fire("render.getShapePath", e)
},
r.prototype.drawConnection = function(e, t) {
var n = this._eventBus;
return n.fire("render.connection", {
gfx: e,
element: t
})
},
r.prototype.getConnectionPath = function(e) {
var t = this._eventBus;
return t.fire("render.getConnectionPath", e)
},
r.prototype.update = function(e, t, n) {
if (t.parent) {
var r = this._clear(n);
if ("shape" === e) this.drawShape(r, t),
n.translate(t.x, t.y);
else {
if ("connection" !== e) throw new Error("unknown type: " + e);
this.drawConnection(r, t)
}
n.attr("display", t.hidden ? "none": "block")
}
},
r.prototype.remove = function(e) {
var t = this._elementRegistry.getGraphics(e);
t.parent().remove()
}
},
{
210 : 210,
64 : 64,
83 : 83,
87 : 87
}],
43 : [function(e, t, n) {
t.exports = {
__depends__: [e(47)],
__init__: ["canvas"],
canvas: ["type", e(38)],
elementRegistry: ["type", e(40)],
elementFactory: ["type", e(39)],
eventBus: ["type", e(41)],
graphicsFactory: ["type", e(42)]
}
},
{
38 : 38,
39 : 39,
40 : 40,
41 : 41,
42 : 42,
47 : 47
}],
44 : [function(e, t, n) {
"use strict";
function r(e, t) {
var n = this;
t = t || i,
e.on(["render.shape", "render.connection"], t,
function(e, t) {
var r = e.type,
i = t.element,
o = t.gfx;
if (n.canRender(i)) return "render.shape" === r ? n.drawShape(o, i) : n.drawConnection(o, i)
}),
e.on(["render.getShapePath", "render.getConnectionPath"], t,
function(e, t) {
if (n.canRender(t)) return "render.getShapePath" === e.type ? n.getShapePath(t) : n.getConnectionPath(t)
})
}
var i = 1e3;
r.prototype.canRender = function() {},
r.prototype.drawShape = function() {},
r.prototype.drawConnection = function() {},
r.prototype.getShapePath = function() {},
r.prototype.getConnectionPath = function() {},
t.exports = r
},
{}],
45 : [function(e, t, n) {
"use strict";
function r(e, t) {
o.call(this, e, l),
this.CONNECTION_STYLE = t.style(["no-fill"], {
strokeWidth: 5,
stroke: "fuchsia"
}),
this.SHAPE_STYLE = t.style({
fill: "white",
stroke: "fuchsia",
strokeWidth: 2
})
}
var i = e(77),
o = e(44),
a = e(68),
s = a.componentsToPath,
c = a.createLine,
l = 1;
i(r, o),
r.prototype.canRender = function() {
return ! 0
},
r.prototype.drawShape = function(e, t) {
return e.rect(0, 0, t.width || 0, t.height || 0).attr(this.SHAPE_STYLE)
},
r.prototype.drawConnection = function(e, t) {
return c(t.waypoints, this.CONNECTION_STYLE).appendTo(e)
},
r.prototype.getShapePath = function(e) {
var t = e.x,
n = e.y,
r = e.width,
i = e.height,
o = [["M", t, n], ["l", r, 0], ["l", 0, i], ["l", -r, 0], ["z"]];
return s(o)
},
r.prototype.getConnectionPath = function(e) {
var t, n, r = e.waypoints,
i = [];
for (t = 0; n = r[t]; t++) n = n.original || n,
i.push([0 === t ? "M": "L", n.x, n.y]);
return s(i)
},
r.$inject = ["eventBus", "styles"],
t.exports = r
},
{
44 : 44,
68 : 68,
77 : 77
}],
46 : [function(e, t, n) {
"use strict";
function r() {
var e = {
"no-fill": {
fill: "none"
},
"no-border": {
strokeOpacity: 0
},
"no-events": {
pointerEvents: "none"
}
},
t = this;
this.cls = function(e, t, n) {
var r = this.style(t, n);
return o(r, {
class: e
})
},
this.style = function(t, n) {
i(t) || n || (n = t, t = []);
var r = a(t,
function(t, n) {
return o(t, e[n] || {})
},
{});
return n ? o(r, n) : r
},
this.computeStyle = function(e, n, r) {
return i(n) || (r = n, n = []),
t.style(n || [], o({},
r, e || {}))
}
}
var i = e(188),
o = e(197),
a = e(87);
t.exports = r
},
{
188 : 188,
197 : 197,
87 : 87
}],
47 : [function(e, t, n) {
t.exports = {
__init__: ["defaultRenderer"],
defaultRenderer: ["type", e(45)],
styles: ["type", e(46)]
}
},
{
45 : 45,
46 : 46
}],
48 : [function(e, t, n) {
"use strict";
function r(e, t, n) {
function r(n, r, i) {
if (a(r)) {
var o, c, l;
i ? c = t.getGraphics(i) : (o = r.delegateTarget || r.target, o && (c = new s(o), i = t.get(c))),
c && i && (l = e.fire(n, {
element: i,
gfx: c,
originalEvent: r
}), l === !1 && (r.stopPropagation(), r.preventDefault()))
}
}
function c(e) {
var t = v[e];
return t || (t = v[e] = function(t) {
r(e, t)
}),
t
}
function f(e, t, n) {
var i = x[e];
if (!i) throw new Error("unmapped DOM event name <" + e + ">");
return r(i, t, n)
}
function h(e, t, n) {
var r = c(n);
r.$delegate = o.bind(e, b, t, r)
}
function d(e, t, n) {
o.unbind(e, t, c(n).$delegate)
}
function m(e) {
i(x,
function(t, n) {
h(e.node, n, t)
})
}
function y(e) {
i(x,
function(t, n) {
d(e.node, n, t)
})
}
var g = n.cls("djs-hit", ["no-fill", "no-border"], {
stroke: "white",
strokeWidth: 15
}),
v = {},
x = {
mouseover: "element.hover",
mouseout: "element.out",
click: "element.click",
dblclick: "element.dblclick",
mousedown: "element.mousedown",
mouseup: "element.mouseup"
},
b = "svg, .djs-element";
e.on("canvas.destroy",
function(e) {
y(e.svg)
}),
e.on("canvas.init",
function(e) {
m(e.svg)
}),
e.on(["shape.added", "connection.added"],
function(e) {
var t, n = e.element,
r = e.gfx;
t = n.waypoints ? l(n.waypoints) : s.create("rect", {
x: 0,
y: 0,
width: n.width,
height: n.height
}),
t.attr(g).appendTo(r.node)
}),
e.on("shape.changed", p,
function(e) {
var t = e.element,
n = e.gfx,
r = n.select(".djs-hit");
r.attr({
width: t.width,
height: t.height
})
}),
e.on("connection.changed",
function(e) {
var t = e.element,
n = e.gfx,
r = n.select(".djs-hit");
u(r, t.waypoints)
}),
this.fire = r,
this.triggerMouseEvent = f,
this.mouseHandler = c,
this.registerEvent = h,
this.unregisterEvent = d
}
var i = e(83),
o = e(211),
a = e(66).isPrimaryButton,
s = e(76),
c = e(68),
l = c.createLine,
u = c.updateLine,
p = 500;
r.$inject = ["eventBus", "elementRegistry", "styles"],
t.exports = r
},
{
211 : 211,
66 : 66,
68 : 68,
76 : 76,
83 : 83
}],
49 : [function(e, t, n) {
t.exports = {
__init__: ["interactionEvents"],
interactionEvents: ["type", e(48)]
}
},
{
48 : 48
}],
50 : [function(e, t, n) {
"use strict";
function r(e, t, n) {
function r(e, t) {
return e.rect(10, 10, 0, 0).attr(i)
}
this.offset = 6;
var i = t.cls("djs-outline", ["no-fill"]),
a = this;
e.on(["shape.added", "shape.changed"], o,
function(e) {
var t = e.element,
n = e.gfx,
i = n.select(".djs-outline");
i || (i = r(n, t)),
a.updateShapeOutline(i, t)
}),
e.on(["connection.added", "connection.changed"],
function(e) {
var t = e.element,
n = e.gfx,
i = n.select(".djs-outline");
i || (i = r(n, t)),
a.updateConnectionOutline(i, t)
})
}
var i = e(62).getBBox,
o = 500;
r.prototype.updateShapeOutline = function(e, t) {
e.attr({
x: -this.offset,
y: -this.offset,
width: t.width + 2 * this.offset,
height: t.height + 2 * this.offset
})
},
r.prototype.updateConnectionOutline = function(e, t) {
var n = i(t);
e.attr({
x: n.x - this.offset,
y: n.y - this.offset,
width: n.width + 2 * this.offset,
height: n.height + 2 * this.offset
})
},
r.$inject = ["eventBus", "styles", "elementRegistry"],
t.exports = r
},
{
62 : 62
}],
51 : [function(e, t, n) {
"use strict";
t.exports = {
__init__: ["outline"],
outline: ["type", e(50)]
}
},
{
50 : 50
}],
52 : [function(e, t, n) {
"use strict";
function r(e) {
var t = d('');
return e.insertBefore(t, e.firstChild),
t
}
function i(e, t, n) {
u(e.style, {
left: t + "px",
top: n + "px"
})
}
function o(e, t) {
e.style.display = t === !1 ? "none": ""
}
function a(e, t, n) {
this._eventBus = e,
this._canvas = t,
this._elementRegistry = n,
this._ids = b,
this._overlayDefaults = {
show: {
minZoom: .7,
maxZoom: 5
}
},
this._overlays = {},
this._overlayContainers = [],
this._overlayRoot = r(t.getContainer()),
this._init()
}
var s = e(188),
c = e(194),
l = e(192),
u = e(197),
p = e(83),
f = e(82),
h = e(81),
d = e(212),
m = e(209),
y = e(208),
g = e(215),
v = e(210),
x = e(62).getBBox,
b = new(e(65))("ov");
a.$inject = ["eventBus", "canvas", "elementRegistry"],
t.exports = a,
a.prototype.get = function(e) {
if (c(e) && (e = {
id: e
}), c(e.element) && (e.element = this._elementRegistry.get(e.element)), e.element) {
var t = this._getOverlayContainer(e.element, !0);
return t ? e.type ? h(t.overlays, {
type: e.type
}) : t.overlays.slice() : []
}
return e.type ? h(this._overlays, {
type: e.type
}) : e.id ? this._overlays[e.id] : null
},
a.prototype.add = function(e, t, n) {
if (l(t) && (n = t, t = null), e.id || (e = this._elementRegistry.get(e)), !n.position) throw new Error("must specifiy overlay position");
if (!n.html) throw new Error("must specifiy overlay html");
if (!e) throw new Error("invalid element specified");
var r = this._ids.next();
return n = u({},
this._overlayDefaults, n, {
id: r,
type: t,
element: e,
html: n.html
}),
this._addOverlay(n),
r
},
a.prototype.remove = function(e) {
var t = this.get(e) || [];
s(t) || (t = [t]);
var n = this;
p(t,
function(e) {
var t = n._getOverlayContainer(e.element, !0);
if (e && (g(e.html), g(e.htmlContainer), delete e.htmlContainer, delete e.element, delete n._overlays[e.id]), t) {
var r = t.overlays.indexOf(e);
r !== -1 && t.overlays.splice(r, 1)
}
})
},
a.prototype.show = function() {
o(this._overlayRoot)
},
a.prototype.hide = function() {
o(this._overlayRoot, !1)
},
a.prototype.clear = function() {
this._overlays = {},
this._overlayContainers = [],
v(this._overlayRoot)
},
a.prototype._updateOverlayContainer = function(e) {
var t = e.element,
n = e.html,
r = t.x,
o = t.y;
if (t.waypoints) {
var a = x(t);
r = a.x,
o = a.y
}
i(n, r, o),
y(e.html, "data-container-id", t.id)
},
a.prototype._updateOverlay = function(e) {
var t = e.position,
n = e.htmlContainer,
r = e.element,
o = t.left,
a = t.top;
if (void 0 !== t.right) {
var s;
s = r.waypoints ? x(r).width: r.width,
o = t.right * -1 + s
}
if (void 0 !== t.bottom) {
var c;
c = r.waypoints ? x(r).height: r.height,
a = t.bottom * -1 + c
}
i(n, o || 0, a || 0)
},
a.prototype._createOverlayContainer = function(e) {
var t = d('');
this._overlayRoot.appendChild(t);
var n = {
html: t,
element: e,
overlays: []
};
return this._updateOverlayContainer(n),
this._overlayContainers.push(n),
n
},
a.prototype._updateRoot = function(e) {
var t = e.scale || 1,
n = e.scale || 1,
r = "matrix(" + t + ",0,0," + n + "," + -1 * e.x * t + "," + -1 * e.y * n + ")";
this._overlayRoot.style.transform = r,
this._overlayRoot.style["-ms-transform"] = r,
this._overlayRoot.style["-webkit-transform"] = r
},
a.prototype._getOverlayContainer = function(e, t) {
var n = f(this._overlayContainers,
function(t) {
return t.element === e
});
return n || t ? n: this._createOverlayContainer(e)
},
a.prototype._addOverlay = function(e) {
var t, n, r = e.id,
i = e.element,
o = e.html;
o.get && (o = o.get(0)),
c(o) && (o = d(o)),
n = this._getOverlayContainer(i),
t = d('
'),
t.appendChild(o),
e.type && m(t).add("djs-overlay-" + e.type),
e.htmlContainer = t,
n.overlays.push(e),
n.html.appendChild(t),
this._overlays[r] = e,
this._updateOverlay(e),
this._updateOverlayVisibilty(e, this._canvas.viewbox())
},
a.prototype._updateOverlayVisibilty = function(e, t) {
var n = e.show,
r = e.htmlContainer,
i = !0;
n && ((n.minZoom > t.scale || n.maxZoom < t.scale) && (i = !1), o(r, i))
},
a.prototype._updateOverlaysVisibilty = function(e) {
var t = this;
p(this._overlays,
function(n) {
t._updateOverlayVisibilty(n, e)
})
},
a.prototype._init = function() {
function e(e) {
n._updateRoot(e),
n._updateOverlaysVisibilty(e),
n.show()
}
var t = this._eventBus,
n = this;
t.on("canvas.viewbox.changing",
function(e) {
n.hide()
}),
t.on("canvas.viewbox.changed",
function(t) {
e(t.viewbox)
}),
t.on(["shape.remove", "connection.remove"],
function(e) {
var t = e.element,
r = n.get({
element: t
});
p(r,
function(e) {
n.remove(e.id)
});
var i = n._getOverlayContainer(t);
if (i) {
g(i.html);
var o = n._overlayContainers.indexOf(i);
o !== -1 && n._overlayContainers.splice(o, 1)
}
}),
t.on(["element.changed"],
function(e) {
var t = e.element,
r = n._getOverlayContainer(t, !0);
r && (p(r.overlays,
function(e) {
n._updateOverlay(e)
}), n._updateOverlayContainer(r))
}),
t.on("element.marker.update",
function(e) {
var t = n._getOverlayContainer(e.element, !0);
t && m(t.html)[e.add ? "add": "remove"](e.marker)
}),
t.on("diagram.clear", this.clear, this)
}
},
{
188 : 188,
192 : 192,
194 : 194,
197 : 197,
208 : 208,
209 : 209,
210 : 210,
212 : 212,
215 : 215,
62 : 62,
65 : 65,
81 : 81,
82 : 82,
83 : 83
}],
53 : [function(e, t, n) {
t.exports = {
__init__: ["overlays"],
overlays: ["type", e(52)]
}
},
{
52 : 52
}],
54 : [function(e, t, n) {
"use strict";
function r(e) {
this._eventBus = e,
this._selectedElements = [];
var t = this;
e.on(["shape.remove", "connection.remove"],
function(e) {
var n = e.element;
t.deselect(n)
}),
e.on(["diagram.clear"],
function(e) {
t.select(null)
})
}
var i = e(188),
o = e(83);
r.$inject = ["eventBus"],
t.exports = r,
r.prototype.deselect = function(e) {
var t = this._selectedElements,
n = t.indexOf(e);
if (n !== -1) {
var r = t.slice();
t.splice(n, 1),
this._eventBus.fire("selection.changed", {
oldSelection: r,
newSelection: t
})
}
},
r.prototype.get = function() {
return this._selectedElements
},
r.prototype.isSelected = function(e) {
return this._selectedElements.indexOf(e) !== -1
},
r.prototype.select = function(e, t) {
var n = this._selectedElements,
r = n.slice();
i(e) || (e = e ? [e] : []),
t ? o(e,
function(e) {
n.indexOf(e) === -1 && n.push(e)
}) : this._selectedElements = n = e.slice(),
this._eventBus.fire("selection.changed", {
oldSelection: r,
newSelection: n
})
}
},
{
188 : 188,
83 : 83
}],
55 : [function(e, t, n) {
"use strict";
function r(e, t, n, r) {
e.on("create.end", 500,
function(e) {
e.context.canExecute && t.select(e.context.shape)
}),
e.on("connect.end", 500,
function(e) {
e.context.canExecute && e.context.target && t.select(e.context.target)
}),
e.on("shape.move.end", 500,
function(e) {
var n = e.previousSelection || [],
i = r.get(e.context.shape.id),
a = o(n,
function(e) {
return i.id === e.id
});
a || t.select(i)
}),
e.on("element.click",
function(e) {
var r = e.element;
r === n.getRootElement() && (r = null);
var o = t.isSelected(r),
a = t.get().length > 1,
s = i(e);
return o && a ? s ? t.deselect(r) : t.select(r) : void(o ? t.deselect(r) : t.select(r, s))
})
}
var i = e(66).hasPrimaryModifier,
o = e(82);
r.$inject = ["eventBus", "selection", "canvas", "elementRegistry"],
t.exports = r
},
{
66 : 66,
82 : 82
}],
56 : [function(e, t, n) {
"use strict";
function r(e, t, n, r, s) {
function c(e, n) {
t.addMarker(e, n)
}
function l(e, n) {
t.removeMarker(e, n)
}
this._multiSelectionBox = null,
e.on("element.hover",
function(e) {
c(e.element, o)
}),
e.on("element.out",
function(e) {
l(e.element, o)
}),
e.on("selection.changed",
function(e) {
function t(e) {
l(e, a)
}
function n(e) {
c(e, a)
}
var r = e.oldSelection,
o = e.newSelection;
i(r,
function(e) {
o.indexOf(e) === -1 && t(e)
}),
i(o,
function(e) {
r.indexOf(e) === -1 && n(e)
})
})
}
var i = e(83),
o = "hover",
a = "selected";
r.$inject = ["eventBus", "canvas", "selection", "graphicsFactory", "styles"],
t.exports = r
},
{
83 : 83
}],
57 : [function(e, t, n) {
t.exports = {
__init__: ["selectionVisuals", "selectionBehavior"],
__depends__: [e(49), e(51)],
selection: ["type", e(54)],
selectionVisuals: ["type", e(56)],
selectionBehavior: ["type", e(55)]
}
},
{
49 : 49,
51 : 51,
54 : 54,
55 : 55,
56 : 56
}],
58 : [function(e, t, n) {
t.exports = {
translate: ["value", e(59)]
}
},
{
59 : 59
}],
59 : [function(e, t, n) {
"use strict";
t.exports = function(e, t) {
return t = t || {},
e.replace(/{([^}]+)}/g,
function(e, n) {
return t[n] || "{" + n + "}"
})
}
},
{}],
60 : [function(e, t, n) {
"use strict";
function r() {
Object.defineProperty(this, "businessObject", {
writable: !0
}),
p.bind(this, "parent"),
f.bind(this, "label"),
d.bind(this, "outgoing"),
m.bind(this, "incoming")
}
function i() {
r.call(this),
p.bind(this, "children"),
h.bind(this, "host"),
h.bind(this, "attachers")
}
function o() {
i.call(this)
}
function a() {
i.call(this),
f.bind(this, "labelTarget")
}
function s() {
r.call(this),
d.bind(this, "source"),
m.bind(this, "target")
}
var c = e(197),
l = e(77),
u = e(224),
p = new u({
name: "children",
enumerable: !0,
collection: !0
},
{
name: "parent"
}),
f = new u({
name: "label",
enumerable: !0
},
{
name: "labelTarget"
}),
h = new u({
name: "attachers",
collection: !0
},
{
name: "host"
}),
d = new u({
name: "outgoing",
collection: !0
},
{
name: "source"
}),
m = new u({
name: "incoming",
collection: !0
},
{
name: "target"
});
l(i, r),
l(o, i),
l(a, i),
l(s, r);
var y = {
connection: s,
shape: i,
label: a,
root: o
};
t.exports.create = function(e, t) {
var n = y[e];
if (!n) throw new Error("unknown type: <" + e + ">");
return c(new n, t)
},
t.exports.Base = r,
t.exports.Root = o,
t.exports.Shape = i,
t.exports.Connection = s,
t.exports.Label = a
},
{
197 : 197,
224 : 224,
77 : 77
}],
61 : [function(e, t, n) {
"use strict";
t.exports.remove = function(e, t) {
if (!e || !t) return - 1;
var n = e.indexOf(t);
return n !== -1 && e.splice(n, 1),
n
},
t.exports.add = function(e, t, n) {
if (e && t) {
"number" != typeof n && (n = -1);
var r = e.indexOf(t);
if (r !== -1) {
if (r === n) return;
if (n === -1) return;
e.splice(r, 1)
}
n !== -1 ? e.splice(n, 0, t) : e.push(t)
}
},
t.exports.indexOf = function(e, t) {
return e && t ? e.indexOf(t) : -1
}
},
{}],
62 : [function(e, t, n) {
"use strict";
function r(e, t, n) {
var r = !n || e.indexOf(t) === -1;
return r && e.push(t),
r
}
function i(e, t, n) {
n = n || 0,
f(e) || (e = [e]),
m(e,
function(e, r) {
var o = t(e, r, n);
f(o) && o.length && i(o, t, n + 1)
})
}
function o(e, t, n) {
var o = [],
a = [];
return i(e,
function(e, i, s) {
r(o, e, t);
var c = e.children;
if ((n === -1 || s < n) && c && r(a, c, t)) return c
}),
o
}
function a(e, t) {
return o(e, !t, 1)
}
function s(e, t) {
return o(e, !t, -1)
}
function c(e) {
function t(e) {
r[e.source.id] && r[e.target.id] && (r[e.id] = e),
o[e.source.id] && o[e.target.id] && (c[e.id] = s[e.id] = e),
a[e.id] = e
}
function n(e) {
return s[e.id] = e,
e.waypoints ? void(c[e.id] = a[e.id] = e) : (o[e.id] = e, m(e.incoming, t), m(e.outgoing, t), e.children)
}
var r = d(e,
function(e) {
return e.id
}),
o = {},
a = {},
s = {},
c = {};
return i(e, n),
{
allShapes: o,
allConnections: a,
topLevel: r,
enclosedConnections: c,
enclosedElements: s
}
}
function l(e, t) {
t = !!t,
f(e) || (e = [e]);
var n, r, i, o;
return m(e,
function(e) {
var a = e;
e.waypoints && !t && (a = l(e.waypoints, !0));
var s = a.x,
c = a.y,
u = a.height || 0,
p = a.width || 0; (s < n || void 0 === n) && (n = s),
(c < r || void 0 === r) && (r = c),
(s + p > i || void 0 === i) && (i = s + p),
(c + u > o || void 0 === o) && (o = c + u)
}),
{
x: n,
y: r,
height: o - r,
width: i - n
}
}
function u(e, t) {
var n = {};
return m(e,
function(e) {
var r = e;
r.waypoints && (r = l(r)),
!h(t.y) && r.x > t.x && (n[e.id] = e),
!h(t.x) && r.y > t.y && (n[e.id] = e),
r.x > t.x && r.y > t.y && (h(t.width) && h(t.height) && r.width + r.x < t.width + t.x && r.height + r.y < t.height + t.y ? n[e.id] = e: h(t.width) && h(t.height) || (n[e.id] = e))
}),
n
}
function p(e) {
return "waypoints" in e ? "connection": "x" in e ? "shape": "root"
}
var f = e(188),
h = e(191),
d = e(84),
m = e(83);
t.exports.add = r,
t.exports.eachElement = i,
t.exports.selfAndDirectChildren = a,
t.exports.selfAndAllChildren = s,
t.exports.getBBox = l,
t.exports.getEnclosedElements = u,
t.exports.getClosure = c,
t.exports.getType = p
},
{
188 : 188,
191 : 191,
83 : 83,
84 : 84
}],
63 : [function(e, t, n) {
"use strict";
function r(e) {
return e && e.preventDefault()
}
function i(e, t) {
e && (e.stopPropagation && e.stopPropagation(), t && e.stopImmediatePropagation && e.stopImmediatePropagation())
}
function o(e) {
return e.originalEvent || e.srcEvent
}
function a(e, t) {
c(e, t),
s(e)
}
function s(e) {
r(e),
r(o(e))
}
function c(e, t) {
i(e, t),
i(o(e), t)
}
function l(e) {
return e.pointers && e.pointers.length && (e = e.pointers[0]),
e.touches && e.touches.length && (e = e.touches[0]),
e ? {
x: e.clientX,
y: e.clientY
}: null
}
t.exports.getOriginal = o,
t.exports.stopEvent = a,
t.exports.preventDefault = s,
t.exports.stopPropagation = c,
t.exports.toPoint = l
},
{}],
64 : [function(e, t, n) {
"use strict";
function r(e) {
return e.select(".djs-visual")
}
function i(e) {
return e.parent().children()[1]
}
function o(e) {
return r(e).select("*").getBBox()
}
t.exports.getVisual = r,
t.exports.getChildren = i,
t.exports.getBBox = o
},
{}],
65 : [function(e, t, n) {
"use strict";
function r(e) {
this._counter = 0,
this._prefix = (e ? e + "-": "") + Math.floor(1e9 * Math.random()) + "-"
}
t.exports = r,
r.prototype.next = function() {
return this._prefix + ++this._counter
}
},
{}],
66 : [function(e, t, n) {
"use strict";
function r(e) {
return ! (i(e) || e).button
}
var i = e(63).getOriginal,
o = e(67).isMac;
t.exports.isPrimaryButton = r,
t.exports.isMac = o,
t.exports.hasPrimaryModifier = function(e) {
var t = i(e) || e;
return !! r(e) && (o() ? t.metaKey: t.ctrlKey)
},
t.exports.hasSecondaryModifier = function(e) {
var t = i(e) || e;
return r(e) && t.shiftKey
}
},
{
63 : 63,
67 : 67
}],
67 : [function(e, t, n) {
"use strict";
t.exports.isMac = function() {
return /mac/i.test(navigator.platform)
}
},
{}],
68 : [function(e, t, n) {
"use strict";
function r(e) {
for (var t, n = "",
r = 0; t = e[r]; r++) n += t.x + "," + t.y + " ";
return n
}
var i = e(76);
t.exports.componentsToPath = function(e) {
return e.join(",").replace(/,?([A-z]),?/g, "$1")
},
t.exports.toSVGPoints = r,
t.exports.createLine = function(e, t) {
return i.create("polyline", {
points: r(e)
}).attr(t || {})
},
t.exports.updateLine = function(e, t) {
return e.attr({
points: r(t)
})
}
},
{
76 : 76
}],
69 : [function(e, t, n) {
"use strict";
function r(e) {
var t = e.split("-");
return {
horizontal: t[0] || "center",
vertical: t[1] || "top"
}
}
function i(e) {
return p(e) ? f({
top: 0,
left: 0,
right: 0,
bottom: 0
},
e) : {
top: e,
left: e,
right: e,
bottom: e
}
}
function o(e, t) {
return t.textContent = e,
h(t.getBBox(), ["width", "height"])
}
function a(e, t, n) {
for (var r, i = e.shift(), a = i;;) {
if (r = o(a, n), r.width = a ? r.width: 0, " " === a || "" === a || r.width < Math.round(t) || a.length < 4) return s(e, a, i, r);
a = l(a, r.width, t)
}
}
function s(e, t, n, r) {
if (t.length < n.length) {
var i = e[0] || "",
o = n.slice(t.length).trim();
i = /-\s*$/.test(o) ? o + i.replace(/^\s+/, "") : o + " " + i,
e[0] = i
}
return {
width: r.width,
height: r.height,
text: t
}
}
function c(e, t) {
var n, r = e.split(/(\s|-)/g),
i = [],
o = 0;
if (r.length > 1) for (; n = r.shift();) {
if (! (n.length + o < t)) {
"-" === n && i.pop();
break
}
i.push(n),
o += n.length
}
return i.join("")
}
function l(e, t, n) {
var r = Math.max(e.length * (n / t), 1),
i = c(e, r);
return i || (i = e.slice(0, Math.max(Math.round(r - 1), 1))),
i
}
function u(e) {
this._config = f({},
{
size: x,
padding: v,
style: {},
align: "center-top"
},
e || {})
}
var p = e(192),
f = e(197),
h = e(203),
d = e(83),
m = e(87),
y = e(200),
g = e(76),
v = 0,
x = {
width: 150,
height: 50
};
u.prototype.createText = function(e, t, n) {
for (var o = y({},
this._config.size, n.box || {}), s = y({},
this._config.style, n.style || {}), c = r(n.align || this._config.align), l = i(void 0 !== n.padding ? n.padding: this._config.padding), u = t.split(/\r?\n/g), p = [], f = o.width - l.left - l.right, h = e.paper.text(0, 0, "").attr(s).node; u.length;) p.push(a(u, f, h));
var v, x, b = m(p,
function(e, t, n) {
return e + t.height
},
0);
switch (c.vertical) {
case "middle":
v = (o.height - b) / 2 - p[0].height / 4;
break;
default:
v = l.top
}
var E = e.text().attr(s);
return d(p,
function(e) {
switch (v += e.height, c.horizontal) {
case "left":
x = l.left;
break;
case "right":
x = f - l.right - e.width;
break;
default:
x = Math.max((f - e.width) / 2 + l.left, 0)
}
var t = g.create("tspan", {
x: x,
y: v
}).node;
t.textContent = e.text,
E.append(t)
}),
h.parentNode.removeChild(h),
E
},
t.exports = u
},
{
192 : 192,
197 : 197,
200 : 200,
203 : 203,
76 : 76,
83 : 83,
87 : 87
}],
70 : [function(e, t, n) {
var r = function(e) {
return "[object Array]" === Object.prototype.toString.call(e)
},
i = function() {
var e = Array.prototype.slice.call(arguments);
1 === e.length && r(e[0]) && (e = e[0]);
var t = e.pop();
return t.$inject = e,
t
},
o = /^function\s*[^\(]*\(\s*([^\)]*)\)/m,
a = /\/\*([^\*]*)\*\//m,
s = function(e) {
if ("function" != typeof e) throw new Error('Cannot annotate "' + e + '". Expected a function!');
var t = e.toString().match(o);
return t[1] && t[1].split(",").map(function(e) {
return t = e.match(a),
t ? t[1].trim() : e.trim()
}) || []
};
n.annotate = i,
n.parse = s,
n.isArray = r
},
{}],
71 : [function(e, t, n) {
t.exports = {
annotate: e(70).annotate,
Module: e(73),
Injector: e(72)
}
},
{
70 : 70,
72 : 72,
73 : 73
}],
72 : [function(e, t, n) {
var r = e(73),
i = e(70).parse,
o = e(70).annotate,
a = e(70).isArray,
s = function(e, t) {
t = t || {
get: function(e, t) {
if (n.push(e), t === !1) return null;
throw p('No provider for "' + e + '"!')
}
};
var n = [],
c = this._providers = Object.create(t._providers || null),
l = this._instances = Object.create(null),
u = l.injector = this,
p = function(e) {
var t = n.join(" -> ");
return n.length = 0,
new Error(t ? e + " (Resolving: " + t + ")": e)
},
f = function(e, r) {
if (!c[e] && e.indexOf(".") !== -1) {
for (var i = e.split("."), o = f(i.shift()); i.length;) o = o[i.shift()];
return o
}
if (Object.hasOwnProperty.call(l, e)) return l[e];
if (Object.hasOwnProperty.call(c, e)) {
if (n.indexOf(e) !== -1) throw n.push(e),
p("Cannot resolve circular dependency!");
return n.push(e),
l[e] = c[e][0](c[e][1]),
n.pop(),
l[e]
}
return t.get(e, r)
},
h = function(e) {
var t = Object.create(e.prototype),
n = d(e, t);
return "object" == typeof n ? n: t
},
d = function(e, t) {
if ("function" != typeof e) {
if (!a(e)) throw new Error('Cannot invoke "' + e + '". Expected a function!');
e = o(e.slice())
}
var n = e.$inject && e.$inject || i(e),
r = n.map(function(e) {
return f(e)
});
return e.apply(t, r)
},
m = function(e) {
return o(function(t) {
return e.get(t)
})
},
y = function(e, t) {
if (t && t.length) {
var n, r, i, o, a = Object.create(null),
l = Object.create(null),
p = [],
f = [],
h = [];
for (var d in c) n = c[d],
t.indexOf(d) !== -1 && ("private" === n[2] ? (r = p.indexOf(n[3]), r === -1 ? (i = n[3].createChild([], t), o = m(i), p.push(n[3]), f.push(i), h.push(o), a[d] = [o, d, "private", i]) : a[d] = [h[r], d, "private", f[r]]) : a[d] = [n[2], n[1]], l[d] = !0),
"factory" !== n[2] && "type" !== n[2] || !n[1].$scope || t.forEach(function(e) {
n[1].$scope.indexOf(e) !== -1 && (a[d] = [n[2], n[1]], l[e] = !0)
});
t.forEach(function(e) {
if (!l[e]) throw new Error('No provider for "' + e + '". Cannot use provider from the parent!')
}),
e.unshift(a)
}
return new s(e, u)
},
g = {
factory: d,
type: h,
value: function(e) {
return e
}
};
e.forEach(function(e) {
function t(e, t) {
return "value" !== e && a(t) && (t = o(t.slice())),
t
}
if (e instanceof r) e.forEach(function(e) {
var n = e[0],
r = e[1],
i = e[2];
c[n] = [g[r], t(r, i), r]
});
else if ("object" == typeof e) if (e.__exports__) {
var n = Object.keys(e).reduce(function(t, n) {
return "__" !== n.substring(0, 2) && (t[n] = e[n]),
t
},
Object.create(null)),
i = new s((e.__modules__ || []).concat([n]), u),
l = o(function(e) {
return i.get(e)
});
e.__exports__.forEach(function(e) {
c[e] = [l, e, "private", i]
})
} else Object.keys(e).forEach(function(n) {
if ("private" === e[n][2]) return void(c[n] = e[n]);
var r = e[n][0],
i = e[n][1];
c[n] = [g[r], t(r, i), r]
})
}),
this.get = f,
this.invoke = d,
this.instantiate = h,
this.createChild = y
};
t.exports = s
},
{
70 : 70,
73 : 73
}],
73 : [function(e, t, n) {
var r = function() {
var e = [];
this.factory = function(t, n) {
return e.push([t, "factory", n]),
this
},
this.value = function(t, n) {
return e.push([t, "value", n]),
this
},
this.type = function(t, n) {
return e.push([t, "type", n]),
this
},
this.forEach = function(t) {
e.forEach(t)
}
};
t.exports = r
},
{}],
74 : [function(t, n, r) { !
function(t) {
var r, i, o = "0.4.2",
a = "hasOwnProperty",
s = /[\.\/]/,
c = /\s*,\s*/,
l = "*",
u = function(e, t) {
return e - t
},
p = {
n: {}
},
f = function() {
for (var e = 0,
t = this.length; e < t; e++) if ("undefined" != typeof this[e]) return this[e]
},
h = function() {
for (var e = this.length; --e;) if ("undefined" != typeof this[e]) return this[e]
},
d = function(e, t) {
e = String(e);
var n, o = i,
a = Array.prototype.slice.call(arguments, 2),
s = d.listeners(e),
c = 0,
l = [],
p = {},
m = [],
y = r;
m.firstDefined = f,
m.lastDefined = h,
r = e,
i = 0;
for (var g = 0,
v = s.length; g < v; g++)"zIndex" in s[g] && (l.push(s[g].zIndex), s[g].zIndex < 0 && (p[s[g].zIndex] = s[g]));
for (l.sort(u); l[c] < 0;) if (n = p[l[c++]], m.push(n.apply(t, a)), i) return i = o,
m;
for (g = 0; g < v; g++) if (n = s[g], "zIndex" in n) if (n.zIndex == l[c]) {
if (m.push(n.apply(t, a)), i) break;
do
if (c++, n = p[l[c]], n && m.push(n.apply(t, a)), i) break;
while (n)
} else p[n.zIndex] = n;
else if (m.push(n.apply(t, a)), i) break;
return i = o,
r = y,
m
};
d._events = p,
d.listeners = function(e) {
var t, n, r, i, o, a, c, u, f = e.split(s),
h = p,
d = [h],
m = [];
for (i = 0, o = f.length; i < o; i++) {
for (u = [], a = 0, c = d.length; a < c; a++) for (h = d[a].n, n = [h[f[i]], h[l]], r = 2; r--;) t = n[r],
t && (u.push(t), m = m.concat(t.f || []));
d = u
}
return m
},
d.on = function(e, t) {
if (e = String(e), "function" != typeof t) return function() {};
for (var n = e.split(c), r = 0, i = n.length; r < i; r++) !
function(e) {
for (var n, r = e.split(s), i = p, o = 0, a = r.length; o < a; o++) i = i.n,
i = i.hasOwnProperty(r[o]) && i[r[o]] || (i[r[o]] = {
n: {}
});
for (i.f = i.f || [], o = 0, a = i.f.length; o < a; o++) if (i.f[o] == t) {
n = !0;
break
} ! n && i.f.push(t)
} (n[r]);
return function(e) { + e == +e && (t.zIndex = +e)
}
},
d.f = function(e) {
var t = [].slice.call(arguments, 1);
return function() {
d.apply(null, [e, null].concat(t).concat([].slice.call(arguments, 0)))
}
},
d.stop = function() {
i = 1
},
d.nt = function(e) {
return e ? new RegExp("(?:\\.|\\/|^)" + e + "(?:\\.|\\/|$)").test(r) : r
},
d.nts = function() {
return r.split(s)
},
d.off = d.unbind = function(e, t) {
if (!e) return void(d._events = p = {
n: {}
});
var n = e.split(c);
if (n.length > 1) for (var r = 0,
i = n.length; r < i; r++) d.off(n[r], t);
else {
n = e.split(s);
var o, u, f, r, i, h, m, y = [p];
for (r = 0, i = n.length; r < i; r++) for (h = 0; h < y.length; h += f.length - 2) {
if (f = [h, 1], o = y[h].n, n[r] != l) o[n[r]] && f.push(o[n[r]]);
else for (u in o) o[a](u) && f.push(o[u]);
y.splice.apply(y, f)
}
for (r = 0, i = y.length; r < i; r++) for (o = y[r]; o.n;) {
if (t) {
if (o.f) {
for (h = 0, m = o.f.length; h < m; h++) if (o.f[h] == t) {
o.f.splice(h, 1);
break
} ! o.f.length && delete o.f
}
for (u in o.n) if (o.n[a](u) && o.n[u].f) {
var g = o.n[u].f;
for (h = 0, m = g.length; h < m; h++) if (g[h] == t) {
g.splice(h, 1);
break
} ! g.length && delete o.n[u].f
}
} else {
delete o.f;
for (u in o.n) o.n[a](u) && o.n[u].f && delete o.n[u].f
}
o = o.n
}
}
},
d.once = function(e, t) {
var n = function() {
return d.unbind(e, n),
t.apply(this, arguments)
};
return d.on(e, n)
},
d.version = o,
d.toString = function() {
return "You are running Eve " + o
},
"undefined" != typeof n && n.exports ? n.exports = d: "function" == typeof e && e.amd ? e("eve", [],
function() {
return d
}) : t.eve = d
} (this)
},
{}],
75 : [function(t, n, r) { !
function(i, o) {
if ("function" == typeof e && e.amd) e(["eve"],
function(e) {
return o(i, e)
});
else if ("undefined" != typeof r) {
var a = t(74);
n.exports = o(i, a)
} else o(i, i.eve)
} (window || this,
function(e, t) {
var n = function(t) {
var n = {},
r = e.requestAnimationFrame || e.webkitRequestAnimationFrame || e.mozRequestAnimationFrame || e.oRequestAnimationFrame || e.msRequestAnimationFrame ||
function(e) {
setTimeout(e, 16)
},
i = Array.isArray ||
function(e) {
return e instanceof Array || "[object Array]" == Object.prototype.toString.call(e)
},
o = 0,
a = "M" + ( + new Date).toString(36),
s = function() {
return a + (o++).toString(36)
},
c = Date.now ||
function() {
return + new Date
},
l = function(e) {
var t = this;
if (null == e) return t.s;
var n = t.s - e;
t.b += t.dur * n,
t.B += t.dur * n,
t.s = e
},
u = function(e) {
var t = this;
return null == e ? t.spd: void(t.spd = e)
},
p = function(e) {
var t = this;
return null == e ? t.dur: (t.s = t.s * e / t.dur, void(t.dur = e))
},
f = function() {
var e = this;
delete n[e.id],
e.update(),
t("mina.stop." + e.id, e)
},
h = function() {
var e = this;
e.pdif || (delete n[e.id], e.update(), e.pdif = e.get() - e.b)
},
d = function() {
var e = this;
e.pdif && (e.b = e.get() - e.pdif, delete e.pdif, n[e.id] = e)
},
m = function() {
var e, t = this;
if (i(t.start)) {
e = [];
for (var n = 0,
r = t.start.length; n < r; n++) e[n] = +t.start[n] + (t.end[n] - t.start[n]) * t.easing(t.s)
} else e = +t.start + (t.end - t.start) * t.easing(t.s);
t.set(e)
},
y = function() {
var e = 0;
for (var i in n) if (n.hasOwnProperty(i)) {
var o = n[i],
a = o.get();
e++,
o.s = (a - o.b) / (o.dur / o.spd),
o.s >= 1 && (delete n[i], o.s = 1, e--,
function(e) {
setTimeout(function() {
t("mina.finish." + e.id, e)
})
} (o)),
o.update()
}
e && r(y)
},
g = function(e, t, i, o, a, c, v) {
var x = {
id: s(),
start: e,
end: t,
b: i,
s: 0,
dur: o - i,
spd: 1,
get: a,
set: c,
easing: v || g.linear,
status: l,
speed: u,
duration: p,
stop: f,
pause: h,
resume: d,
update: m
};
n[x.id] = x;
var b, E = 0;
for (b in n) if (n.hasOwnProperty(b) && (E++, 2 == E)) break;
return 1 == E && r(y),
x
};
return g.time = c,
g.getById = function(e) {
return n[e] || null
},
g.linear = function(e) {
return e
},
g.easeout = function(e) {
return Math.pow(e, 1.7)
},
g.easein = function(e) {
return Math.pow(e, .48)
},
g.easeinout = function(e) {
if (1 == e) return 1;
if (0 == e) return 0;
var t = .48 - e / 1.04,
n = Math.sqrt(.1734 + t * t),
r = n - t,
i = Math.pow(Math.abs(r), 1 / 3) * (r < 0 ? -1 : 1),
o = -n - t,
a = Math.pow(Math.abs(o), 1 / 3) * (o < 0 ? -1 : 1),
s = i + a + .5;
return 3 * (1 - s) * s * s + s * s * s
},
g.backin = function(e) {
if (1 == e) return 1;
var t = 1.70158;
return e * e * ((t + 1) * e - t)
},
g.backout = function(e) {
if (0 == e) return 0;
e -= 1;
var t = 1.70158;
return e * e * ((t + 1) * e + t) + 1
},
g.elastic = function(e) {
return e == !!e ? e: Math.pow(2, -10 * e) * Math.sin((e - .075) * (2 * Math.PI) / .3) + 1
},
g.bounce = function(e) {
var t, n = 7.5625,
r = 2.75;
return e < 1 / r ? t = n * e * e: e < 2 / r ? (e -= 1.5 / r, t = n * e * e + .75) : e < 2.5 / r ? (e -= 2.25 / r, t = n * e * e + .9375) : (e -= 2.625 / r, t = n * e * e + .984375),
t
},
e.mina = g,
g
} ("undefined" == typeof t ?
function() {}: t),
r = function(e) {
function n(e, t) {
if (e) {
if (e.tagName) return w(e);
if (i(e, "array") && n.set) return n.set.apply(n, e);
if (e instanceof v) return e;
if (null == t) return e = A.doc.querySelector(e),
w(e)
}
return e = null == e ? "100%": e,
t = null == t ? "100%": t,
new E(e, t)
}
function r(e, t) {
if (t) {
if ("#text" == e && (e = A.doc.createTextNode(t.text || "")), "string" == typeof e && (e = r(e)), "string" == typeof t) return "xlink:" == t.substring(0, 6) ? e.getAttributeNS(z, t.substring(6)) : "xml:" == t.substring(0, 4) ? e.getAttributeNS(q, t.substring(4)) : e.getAttribute(t);
for (var n in t) if (t[_](n)) {
var i = S(t[n]);
i ? "xlink:" == n.substring(0, 6) ? e.setAttributeNS(z, n.substring(6), i) : "xml:" == n.substring(0, 4) ? e.setAttributeNS(q, n.substring(4), i) : e.setAttribute(n, i) : e.removeAttribute(n)
}
} else e = A.doc.createElementNS(q, e);
return e
}
function i(e, t) {
return t = S.prototype.toLowerCase.call(t),
"finite" == t ? isFinite(e) : !("array" != t || !(e instanceof Array || Array.isArray && Array.isArray(e))) || ("null" == t && null === e || t == typeof e && null !== e || "object" == t && e === Object(e) || O.call(e).slice(8, -1).toLowerCase() == t)
}
function o(e) {
if ("function" == typeof e || Object(e) !== e) return e;
var t = new e.constructor;
for (var n in e) e[_](n) && (t[n] = o(e[n]));
return t
}
function a(e, t) {
for (var n = 0,
r = e.length; n < r; n++) if (e[n] === t) return e.push(e.splice(n, 1)[0])
}
function s(e, t, n) {
function r() {
var i = Array.prototype.slice.call(arguments, 0),
o = i.join("␀"),
s = r.cache = r.cache || {},
c = r.count = r.count || [];
return s[_](o) ? (a(c, o), n ? n(s[o]) : s[o]) : (c.length >= 1e3 && delete s[c.shift()], c.push(o), s[o] = e.apply(t, i), n ? n(s[o]) : s[o])
}
return r
}
function c(e, t, n, r, i, o) {
if (null == i) {
var a = e - n,
s = t - r;
return a || s ? (180 + 180 * R.atan2( - s, -a) / D + 360) % 360 : 0
}
return c(e, t, i, o) - c(n, r, i, o)
}
function l(e) {
return e % 360 * D / 180
}
function u(e) {
return 180 * e / D % 360
}
function p(e) {
var t = [];
return e = e.replace(/(?:^|\s)(\w+)\(([^)]+)\)/g,
function(e, n, r) {
return r = r.split(/\s*,\s*|\s+/),
"rotate" == n && 1 == r.length && r.push(0, 0),
"scale" == n && (r.length > 2 ? r = r.slice(0, 2) : 2 == r.length && r.push(0, 0), 1 == r.length && r.push(r[0], 0, 0)),
"skewX" == n ? t.push(["m", 1, 0, R.tan(l(r[0])), 1, 0, 0]) : "skewY" == n ? t.push(["m", 1, R.tan(l(r[0])), 0, 1, 0, 0]) : t.push([n.charAt(0)].concat(r)),
e
}),
t
}
function f(e, t) {
var r = J(e),
i = new n.Matrix;
if (r) for (var o = 0,
a = r.length; o < a; o++) {
var s, c, l, u, p, f = r[o],
h = f.length,
d = S(f[0]).toLowerCase(),
m = f[0] != d,
y = m ? i.invert() : 0;
"t" == d && 2 == h ? i.translate(f[1], 0) : "t" == d && 3 == h ? m ? (s = y.x(0, 0), c = y.y(0, 0), l = y.x(f[1], f[2]), u = y.y(f[1], f[2]), i.translate(l - s, u - c)) : i.translate(f[1], f[2]) : "r" == d ? 2 == h ? (p = p || t, i.rotate(f[1], p.x + p.width / 2, p.y + p.height / 2)) : 4 == h && (m ? (l = y.x(f[2], f[3]), u = y.y(f[2], f[3]), i.rotate(f[1], l, u)) : i.rotate(f[1], f[2], f[3])) : "s" == d ? 2 == h || 3 == h ? (p = p || t, i.scale(f[1], f[h - 1], p.x + p.width / 2, p.y + p.height / 2)) : 4 == h ? m ? (l = y.x(f[2], f[3]), u = y.y(f[2], f[3]), i.scale(f[1], f[1], l, u)) : i.scale(f[1], f[1], f[2], f[3]) : 5 == h && (m ? (l = y.x(f[3], f[4]), u = y.y(f[3], f[4]), i.scale(f[1], f[2], l, u)) : i.scale(f[1], f[2], f[3], f[4])) : "m" == d && 7 == h && i.add(f[1], f[2], f[3], f[4], f[5], f[6])
}
return i
}
function h(e) {
var t = e.node.ownerSVGElement && w(e.node.ownerSVGElement) || e.node.parentNode && w(e.node.parentNode) || n.select("svg") || n(0, 0),
r = t.select("defs"),
i = null != r && r.node;
return i || (i = b("defs", t.node).node),
i
}
function d(e) {
return e.node.ownerSVGElement && w(e.node.ownerSVGElement) || n.select("svg")
}
function m(e, t, n) {
function i(e) {
if (null == e) return k;
if (e == +e) return e;
r(l, {
width: e
});
try {
return l.getBBox().width
} catch(e) {
return 0
}
}
function o(e) {
if (null == e) return k;
if (e == +e) return e;
r(l, {
height: e
});
try {
return l.getBBox().height
} catch(e) {
return 0
}
}
function a(r, i) {
null == t ? c[r] = i(e.attr(r) || 0) : r == t && (c = i(null == n ? e.attr(r) || 0 : n))
}
var s = d(e).node,
c = {},
l = s.querySelector(".svg---mgr");
switch (l || (l = r("rect"), r(l, {
x: -9e9,
y: -9e9,
width: 10,
height: 10,
class: "svg---mgr",
fill: "none"
}), s.appendChild(l)), e.type) {
case "rect":
a("rx", i),
a("ry", o);
case "image":
a("width", i),
a("height", o);
case "text":
a("x", i),
a("y", o);
break;
case "circle":
a("cx", i),
a("cy", o),
a("r", i);
break;
case "ellipse":
a("cx", i),
a("cy", o),
a("rx", i),
a("ry", o);
break;
case "line":
a("x1", i),
a("x2", i),
a("y1", o),
a("y2", o);
break;
case "marker":
a("refX", i),
a("markerWidth", i),
a("refY", o),
a("markerHeight", o);
break;
case "radialGradient":
a("fx", i),
a("fy", o);
break;
case "tspan":
a("dx", i),
a("dy", o);
break;
default:
a(t, i)
}
return s.removeChild(l),
c
}
function y(e) {
i(e, "array") || (e = Array.prototype.slice.call(arguments, 0));
for (var t = 0,
n = 0,
r = this.node; this[t];) delete this[t++];
for (t = 0; t < e.length; t++)"set" == e[t].type ? e[t].forEach(function(e) {
r.appendChild(e.node)
}) : r.appendChild(e[t].node);
var o = r.childNodes;
for (t = 0; t < o.length; t++) this[n++] = w(o[t]);
return this
}
function v(e) {
if (e.snap in H) return H[e.snap];
var t;
try {
t = e.ownerSVGElement
} catch(e) {}
this.node = e,
t && (this.paper = new E(t)),
this.type = e.tagName;
var n = this.id = W(this);
if (this.anims = {},
this._ = {
transform: []
},
e.snap = n, H[n] = this, "g" == this.type && (this.add = y), this.type in {
g: 1,
mask: 1,
pattern: 1,
symbol: 1
}) for (var r in E.prototype) E.prototype[_](r) && (this[r] = E.prototype[r])
}
function x(e) {
this.node = e
}
function b(e, t) {
var n = r(e);
t.appendChild(n);
var i = w(n);
return i
}
function E(e, t) {
var n, i, o, a = E.prototype;
if (e && "svg" == e.tagName) {
if (e.snap in H) return H[e.snap];
var s = e.ownerDocument;
n = new v(e),
i = e.getElementsByTagName("desc")[0],
o = e.getElementsByTagName("defs")[0],
i || (i = r("desc"), i.appendChild(s.createTextNode("Created with Snap")), n.node.appendChild(i)),
o || (o = r("defs"), n.node.appendChild(o)),
n.defs = o;
for (var c in a) a[_](c) && (n[c] = a[c]);
n.paper = n.root = n
} else n = b("svg", A.doc.body),
r(n.node, {
height: t,
version: 1.1,
width: e,
xmlns: q
});
return n
}
function w(e) {
return e ? e instanceof v || e instanceof x ? e: e.tagName && "svg" == e.tagName.toLowerCase() ? new E(e) : e.tagName && "object" == e.tagName.toLowerCase() && "image/svg+xml" == e.type ? new E(e.contentDocument.getElementsByTagName("svg")[0]) : new v(e) : e
}
n.version = "0.3.0",
n.toString = function() {
return "Snap v" + this.version
},
n._ = {};
var A = {
win: e.window,
doc: e.window.document
};
n._.glob = A;
var _ = "hasOwnProperty",
S = String,
T = parseFloat,
C = parseInt,
R = Math,
N = R.max,
M = R.min,
P = R.abs,
D = (R.pow, R.PI),
k = (R.round, ""),
O = Object.prototype.toString,
B = /^\s*((#[a-f\d]{6})|(#[a-f\d]{3})|rgba?\(\s*([\d\.]+%?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+%?(?:\s*,\s*[\d\.]+%?)?)\s*\)|hsba?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+(?:%?\s*,\s*[\d\.]+)?%?)\s*\)|hsla?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+(?:%?\s*,\s*[\d\.]+)?%?)\s*\))\s*$/i,
I = (n._.separator = /[,\s]+/, /[\s]*,[\s]*/),
L = {
hs: 1,
rg: 1
},
F = /([a-z])[\s,]*((-?\d*\.?\d*(?:e[\-+]?\d+)?[\s]*,?[\s]*)+)/gi,
j = /([rstm])[\s,]*((-?\d*\.?\d*(?:e[\-+]?\d+)?[\s]*,?[\s]*)+)/gi,
V = /(-?\d*\.?\d*(?:e[\-+]?\\d+)?)[\s]*,?[\s]*/gi,
G = 0,
U = "S" + ( + new Date).toString(36),
W = function(e) {
return (e && e.type ? e.type: k) + U + (G++).toString(36)
},
z = "http://www.w3.org/1999/xlink",
q = "http://www.w3.org/2000/svg",
H = {};
n.url = function(e) {
return "url('#" + e + "')"
};
n._.$ = r,
n._.id = W,
n.format = function() {
var e = /\{([^\}]+)\}/g,
t = /(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g,
n = function(e, n, r) {
var i = r;
return n.replace(t,
function(e, t, n, r, o) {
t = t || r,
i && (t in i && (i = i[t]), "function" == typeof i && o && (i = i()))
}),
i = (null == i || i == r ? e: i) + ""
};
return function(t, r) {
return S(t).replace(e,
function(e, t) {
return n(e, t, r)
})
}
} (),
n._.clone = o,
n._.cacher = s,
n.rad = l,
n.deg = u,
n.angle = c,
n.is = i,
n.snapTo = function(e, t, n) {
if (n = i(n, "finite") ? n: 10, i(e, "array")) {
for (var r = e.length; r--;) if (P(e[r] - t) <= n) return e[r]
} else {
e = +e;
var o = t % e;
if (o < n) return t - o;
if (o > e - n) return t - o + e
}
return t
},
n.getRGB = s(function(e) {
if (!e || (e = S(e)).indexOf("-") + 1) return {
r: -1,
g: -1,
b: -1,
hex: "none",
error: 1,
toString: X
};
if ("none" == e) return {
r: -1,
g: -1,
b: -1,
hex: "none",
toString: X
};
if (! (L[_](e.toLowerCase().substring(0, 2)) || "#" == e.charAt()) && (e = Y(e)), !e) return {
r: -1,
g: -1,
b: -1,
hex: "none",
error: 1,
toString: X
};
var t, r, o, a, s, c, l = e.match(B);
return l ? (l[2] && (o = C(l[2].substring(5), 16), r = C(l[2].substring(3, 5), 16), t = C(l[2].substring(1, 3), 16)), l[3] && (o = C((s = l[3].charAt(3)) + s, 16), r = C((s = l[3].charAt(2)) + s, 16), t = C((s = l[3].charAt(1)) + s, 16)), l[4] && (c = l[4].split(I), t = T(c[0]), "%" == c[0].slice( - 1) && (t *= 2.55), r = T(c[1]), "%" == c[1].slice( - 1) && (r *= 2.55), o = T(c[2]), "%" == c[2].slice( - 1) && (o *= 2.55), "rgba" == l[1].toLowerCase().slice(0, 4) && (a = T(c[3])), c[3] && "%" == c[3].slice( - 1) && (a /= 100)), l[5] ? (c = l[5].split(I), t = T(c[0]), "%" == c[0].slice( - 1) && (t /= 100), r = T(c[1]), "%" == c[1].slice( - 1) && (r /= 100), o = T(c[2]), "%" == c[2].slice( - 1) && (o /= 100), ("deg" == c[0].slice( - 3) || "°" == c[0].slice( - 1)) && (t /= 360), "hsba" == l[1].toLowerCase().slice(0, 4) && (a = T(c[3])), c[3] && "%" == c[3].slice( - 1) && (a /= 100), n.hsb2rgb(t, r, o, a)) : l[6] ? (c = l[6].split(I), t = T(c[0]), "%" == c[0].slice( - 1) && (t /= 100), r = T(c[1]), "%" == c[1].slice( - 1) && (r /= 100), o = T(c[2]), "%" == c[2].slice( - 1) && (o /= 100), ("deg" == c[0].slice( - 3) || "°" == c[0].slice( - 1)) && (t /= 360), "hsla" == l[1].toLowerCase().slice(0, 4) && (a = T(c[3])), c[3] && "%" == c[3].slice( - 1) && (a /= 100), n.hsl2rgb(t, r, o, a)) : (t = M(R.round(t), 255), r = M(R.round(r), 255), o = M(R.round(o), 255), a = M(N(a, 0), 1), l = {
r: t,
g: r,
b: o,
toString: X
},
l.hex = "#" + (16777216 | o | r << 8 | t << 16).toString(16).slice(1), l.opacity = i(a, "finite") ? a: 1, l)) : {
r: -1,
g: -1,
b: -1,
hex: "none",
error: 1,
toString: X
}
},
n),
n.hsb = s(function(e, t, r) {
return n.hsb2rgb(e, t, r).hex
}),
n.hsl = s(function(e, t, r) {
return n.hsl2rgb(e, t, r).hex
}),
n.rgb = s(function(e, t, n, r) {
if (i(r, "finite")) {
var o = R.round;
return "rgba(" + [o(e), o(t), o(n), +r.toFixed(2)] + ")"
}
return "#" + (16777216 | n | t << 8 | e << 16).toString(16).slice(1)
});
var Y = function(e) {
var t = A.doc.getElementsByTagName("head")[0] || A.doc.getElementsByTagName("svg")[0],
n = "rgb(255, 0, 0)";
return (Y = s(function(e) {
if ("red" == e.toLowerCase()) return n;
t.style.color = n,
t.style.color = e;
var r = A.doc.defaultView.getComputedStyle(t, k).getPropertyValue("color");
return r == n ? null: r
}))(e)
},
$ = function() {
return "hsb(" + [this.h, this.s, this.b] + ")"
},
K = function() {
return "hsl(" + [this.h, this.s, this.l] + ")"
},
X = function() {
return 1 == this.opacity || null == this.opacity ? this.hex: "rgba(" + [this.r, this.g, this.b, this.opacity] + ")"
},
Q = function(e, t, r) {
if (null == t && i(e, "object") && "r" in e && "g" in e && "b" in e && (r = e.b, t = e.g, e = e.r), null == t && i(e, string)) {
var o = n.getRGB(e);
e = o.r,
t = o.g,
r = o.b
}
return (e > 1 || t > 1 || r > 1) && (e /= 255, t /= 255, r /= 255),
[e, t, r]
},
Z = function(e, t, r, o) {
e = R.round(255 * e),
t = R.round(255 * t),
r = R.round(255 * r);
var a = {
r: e,
g: t,
b: r,
opacity: i(o, "finite") ? o: 1,
hex: n.rgb(e, t, r),
toString: X
};
return i(o, "finite") && (a.opacity = o),
a
};
n.color = function(e) {
var t;
return i(e, "object") && "h" in e && "s" in e && "b" in e ? (t = n.hsb2rgb(e), e.r = t.r, e.g = t.g, e.b = t.b, e.opacity = 1, e.hex = t.hex) : i(e, "object") && "h" in e && "s" in e && "l" in e ? (t = n.hsl2rgb(e), e.r = t.r, e.g = t.g, e.b = t.b, e.opacity = 1, e.hex = t.hex) : (i(e, "string") && (e = n.getRGB(e)), i(e, "object") && "r" in e && "g" in e && "b" in e && !("error" in e) ? (t = n.rgb2hsl(e), e.h = t.h, e.s = t.s, e.l = t.l, t = n.rgb2hsb(e), e.v = t.b) : (e = {
hex: "none"
},
e.r = e.g = e.b = e.h = e.s = e.v = e.l = -1, e.error = 1)),
e.toString = X,
e
},
n.hsb2rgb = function(e, t, n, r) {
i(e, "object") && "h" in e && "s" in e && "b" in e && (n = e.b, t = e.s, e = e.h, r = e.o),
e *= 360;
var o, a, s, c, l;
return e = e % 360 / 60,
l = n * t,
c = l * (1 - P(e % 2 - 1)),
o = a = s = n - l,
e = ~~e,
o += [l, c, 0, 0, c, l][e],
a += [c, l, l, c, 0, 0][e],
s += [0, 0, c, l, l, c][e],
Z(o, a, s, r)
},
n.hsl2rgb = function(e, t, n, r) {
i(e, "object") && "h" in e && "s" in e && "l" in e && (n = e.l, t = e.s, e = e.h),
(e > 1 || t > 1 || n > 1) && (e /= 360, t /= 100, n /= 100),
e *= 360;
var o, a, s, c, l;
return e = e % 360 / 60,
l = 2 * t * (n < .5 ? n: 1 - n),
c = l * (1 - P(e % 2 - 1)),
o = a = s = n - l / 2,
e = ~~e,
o += [l, c, 0, 0, c, l][e],
a += [c, l, l, c, 0, 0][e],
s += [0, 0, c, l, l, c][e],
Z(o, a, s, r)
},
n.rgb2hsb = function(e, t, n) {
n = Q(e, t, n),
e = n[0],
t = n[1],
n = n[2];
var r, i, o, a;
return o = N(e, t, n),
a = o - M(e, t, n),
r = 0 == a ? null: o == e ? (t - n) / a: o == t ? (n - e) / a + 2 : (e - t) / a + 4,
r = (r + 360) % 6 * 60 / 360,
i = 0 == a ? 0 : a / o,
{
h: r,
s: i,
b: o,
toString: $
}
},
n.rgb2hsl = function(e, t, n) {
n = Q(e, t, n),
e = n[0],
t = n[1],
n = n[2];
var r, i, o, a, s, c;
return a = N(e, t, n),
s = M(e, t, n),
c = a - s,
r = 0 == c ? null: a == e ? (t - n) / c: a == t ? (n - e) / c + 2 : (e - t) / c + 4,
r = (r + 360) % 6 * 60 / 360,
o = (a + s) / 2,
i = 0 == c ? 0 : o < .5 ? c / (2 * o) : c / (2 - 2 * o),
{
h: r,
s: i,
l: o,
toString: K
}
},
n.parsePathString = function(e) {
if (!e) return null;
var t = n.path(e);
if (t.arr) return n.path.clone(t.arr);
var r = {
a: 7,
c: 6,
o: 2,
h: 1,
l: 2,
m: 2,
r: 4,
q: 4,
s: 4,
t: 2,
v: 1,
u: 3,
z: 0
},
o = [];
return i(e, "array") && i(e[0], "array") && (o = n.path.clone(e)),
o.length || S(e).replace(F,
function(e, t, n) {
var i = [],
a = t.toLowerCase();
if (n.replace(V,
function(e, t) {
t && i.push( + t)
}), "m" == a && i.length > 2 && (o.push([t].concat(i.splice(0, 2))), a = "l", t = "m" == t ? "l": "L"), "o" == a && 1 == i.length && o.push([t, i[0]]), "r" == a) o.push([t].concat(i));
else for (; i.length >= r[a] && (o.push([t].concat(i.splice(0, r[a]))), r[a]););
}),
o.toString = n.path.toString,
t.arr = n.path.clone(o),
o
};
var J = n.parseTransformString = function(e) {
if (!e) return null;
var t = [];
return i(e, "array") && i(e[0], "array") && (t = n.path.clone(e)),
t.length || S(e).replace(j,
function(e, n, r) {
var i = [];
n.toLowerCase();
r.replace(V,
function(e, t) {
t && i.push( + t)
}),
t.push([n].concat(i))
}),
t.toString = n.path.toString,
t
};
n._.svgTransform2string = p,
n._.rgTransform = /^[a-z][\s]*-?\.?\d/i,
n._.transform2matrix = f,
n._unit2px = m;
A.doc.contains || A.doc.compareDocumentPosition ?
function(e, t) {
var n = 9 == e.nodeType ? e.documentElement: e,
r = t && t.parentNode;
return e == r || !(!r || 1 != r.nodeType || !(n.contains ? n.contains(r) : e.compareDocumentPosition && 16 & e.compareDocumentPosition(r)))
}: function(e, t) {
if (t) for (; t;) if (t = t.parentNode, t == e) return ! 0;
return ! 1
};
n._.getSomeDefs = h,
n._.getSomeSVG = d,
n.select = function(e) {
return e = S(e).replace(/([^\\]):/g, "$1\\:"),
w(A.doc.querySelector(e))
},
n.selectAll = function(e) {
for (var t = A.doc.querySelectorAll(e), r = (n.set || Array)(), i = 0; i < t.length; i++) r.push(w(t[i]));
return r
},
setInterval(function() {
for (var e in H) if (H[_](e)) {
var t = H[e],
n = t.node; ("svg" != t.type && !n.ownerSVGElement || "svg" == t.type && (!n.parentNode || "ownerSVGElement" in n.parentNode && !n.ownerSVGElement)) && delete H[e]
}
},
1e4),
v.prototype.attr = function(e, n) {
var r = this;
r.node;
if (!e) return r;
if (i(e, "string")) {
if (! (arguments.length > 1)) return t("snap.util.getattr." + e, r).firstDefined();
var o = {};
o[e] = n,
e = o
}
for (var a in e) e[_](a) && t("snap.util.attr." + a, r, e[a]);
return r
},
n.parse = function(e) {
var t = A.doc.createDocumentFragment(),
n = !0,
r = A.doc.createElement("div");
if (e = S(e), e.match(/^\s*<\s*svg(?:\s|>)/) || (e = "", n = !1), r.innerHTML = e, e = r.getElementsByTagName("svg")[0]) if (n) t = e;
else {
for (; e.firstChild;) t.appendChild(e.firstChild);
r.innerHTML = k
}
return new x(t)
},
n.fragment = function() {
for (var e = Array.prototype.slice.call(arguments, 0), t = A.doc.createDocumentFragment(), r = 0, i = e.length; r < i; r++) {
var o = e[r];
o.node && o.node.nodeType && t.appendChild(o.node),
o.nodeType && t.appendChild(o),
"string" == typeof o && t.appendChild(n.parse(o).node)
}
return new x(t)
},
n._.make = b,
n._.wrap = w,
E.prototype.el = function(e, t) {
var n = b(e, this.node);
return t && n.attr(t),
n
},
t.on("snap.util.getattr",
function() {
var e = t.nt();
e = e.substring(e.lastIndexOf(".") + 1);
var n = e.replace(/[A-Z]/g,
function(e) {
return "-" + e.toLowerCase()
});
return ee[_](n) ? this.node.ownerDocument.defaultView.getComputedStyle(this.node, null).getPropertyValue(n) : r(this.node, e)
});
var ee = {
"alignment-baseline": 0,
"baseline-shift": 0,
clip: 0,
"clip-path": 0,
"clip-rule": 0,
color: 0,
"color-interpolation": 0,
"color-interpolation-filters": 0,
"color-profile": 0,
"color-rendering": 0,
cursor: 0,
direction: 0,
display: 0,
"dominant-baseline": 0,
"enable-background": 0,
fill: 0,
"fill-opacity": 0,
"fill-rule": 0,
filter: 0,
"flood-color": 0,
"flood-opacity": 0,
font: 0,
"font-family": 0,
"font-size": 0,
"font-size-adjust": 0,
"font-stretch": 0,
"font-style": 0,
"font-variant": 0,
"font-weight": 0,
"glyph-orientation-horizontal": 0,
"glyph-orientation-vertical": 0,
"image-rendering": 0,
kerning: 0,
"letter-spacing": 0,
"lighting-color": 0,
marker: 0,
"marker-end": 0,
"marker-mid": 0,
"marker-start": 0,
mask: 0,
opacity: 0,
overflow: 0,
"pointer-events": 0,
"shape-rendering": 0,
"stop-color": 0,
"stop-opacity": 0,
stroke: 0,
"stroke-dasharray": 0,
"stroke-dashoffset": 0,
"stroke-linecap": 0,
"stroke-linejoin": 0,
"stroke-miterlimit": 0,
"stroke-opacity": 0,
"stroke-width": 0,
"text-anchor": 0,
"text-decoration": 0,
"text-rendering": 0,
"unicode-bidi": 0,
visibility: 0,
"word-spacing": 0,
"writing-mode": 0
};
t.on("snap.util.attr",
function(e) {
var n = t.nt(),
i = {};
n = n.substring(n.lastIndexOf(".") + 1),
i[n] = e;
var o = n.replace(/-(\w)/gi,
function(e, t) {
return t.toUpperCase()
}),
a = n.replace(/[A-Z]/g,
function(e) {
return "-" + e.toLowerCase()
});
ee[_](a) ? this.node.style[o] = null == e ? k: e: r(this.node, i)
}),
function(e) {} (E.prototype),
n.ajax = function(e, n, r, o) {
var a = new XMLHttpRequest,
s = W();
if (a) {
if (i(n, "function")) o = r,
r = n,
n = null;
else if (i(n, "object")) {
var c = [];
for (var l in n) n.hasOwnProperty(l) && c.push(encodeURIComponent(l) + "=" + encodeURIComponent(n[l]));
n = c.join("&")
}
return a.open(n ? "POST": "GET", e, !0),
n && (a.setRequestHeader("X-Requested-With", "XMLHttpRequest"), a.setRequestHeader("Content-type", "application/x-www-form-urlencoded")),
r && (t.once("snap.ajax." + s + ".0", r), t.once("snap.ajax." + s + ".200", r), t.once("snap.ajax." + s + ".304", r)),
a.onreadystatechange = function() {
4 == a.readyState && t("snap.ajax." + s + "." + a.status, o, a)
},
4 == a.readyState ? a: (a.send(n), a)
}
},
n.load = function(e, t, r) {
n.ajax(e,
function(e) {
var i = n.parse(e.responseText);
r ? t.call(r, i) : t(i)
})
};
var te = function(e) {
var t = e.getBoundingClientRect(),
n = e.ownerDocument,
r = n.body,
i = n.documentElement,
o = i.clientTop || r.clientTop || 0,
a = i.clientLeft || r.clientLeft || 0,
s = t.top + (g.win.pageYOffset || i.scrollTop || r.scrollTop) - o,
c = t.left + (g.win.pageXOffset || i.scrollLeft || r.scrollLeft) - a;
return {
y: s,
x: c
}
};
return n.getElementByPoint = function(e, t) {
var n = this,
r = (n.canvas, A.doc.elementFromPoint(e, t));
if (A.win.opera && "svg" == r.tagName) {
var i = te(r),
o = r.createSVGRect();
o.x = e - i.x,
o.y = t - i.y,
o.width = o.height = 1;
var a = r.getIntersectionList(o, null);
a.length && (r = a[a.length - 1])
}
return r ? w(r) : null
},
n.plugin = function(e) {
e(n, v, E, A, x)
},
A.win.Snap = n,
n
} (e || this);
return r.plugin(function(r, i, o, a, s) {
function c(e, t) {
if (null == t) {
var n = !0;
if (t = "linearGradient" == e.type || "radialGradient" == e.type ? e.node.getAttribute("gradientTransform") : "pattern" == e.type ? e.node.getAttribute("patternTransform") : e.node.getAttribute("transform"), !t) return new r.Matrix;
t = r._.svgTransform2string(t)
} else t = r._.rgTransform.test(t) ? d(t).replace(/\.{3}|\u2026/g, e._.transform || E) : r._.svgTransform2string(t),
h(t, "array") && (t = r.path ? r.path.toString.call(t) : d(t)),
e._.transform = t;
var i = r._.transform2matrix(t, e.getBBox(1));
return n ? i: void(e.matrix = i)
}
function l(e) {
function t(e, t) {
var n = y(e.node, t);
n = n && n.match(o),
n = n && n[2],
n && "#" == n.charAt() && (n = n.substring(1), n && (s[n] = (s[n] || []).concat(function(n) {
var r = {};
r[t] = URL(n),
y(e.node, r)
})))
}
function n(e) {
var t = y(e.node, "xlink:href");
t && "#" == t.charAt() && (t = t.substring(1), t && (s[t] = (s[t] || []).concat(function(t) {
e.attr("xlink:href", "#" + t)
})))
}
for (var r, i = e.selectAll("*"), o = /^\s*url\(("|'|)(.*)\1\)\s*$/, a = [], s = {},
c = 0, l = i.length; c < l; c++) {
r = i[c],
t(r, "fill"),
t(r, "stroke"),
t(r, "filter"),
t(r, "mask"),
t(r, "clip-path"),
n(r);
var u = y(r.node, "id");
u && (y(r.node, {
id: r.id
}), a.push({
old: u,
id: r.id
}))
}
for (c = 0, l = a.length; c < l; c++) {
var p = s[a[c].old];
if (p) for (var f = 0,
h = p.length; f < h; f++) p[f](a[c].id)
}
}
function u(e, t, n) {
return function(r) {
var i = r.slice(e, t);
return 1 == i.length && (i = i[0]),
n ? n(i) : i
}
}
function p(e) {
return function() {
var t = e ? "<" + this.type: "",
n = this.node.attributes,
r = this.node.childNodes;
if (e) for (var i = 0,
o = n.length; i < o; i++) t += " " + n[i].name + '="' + n[i].value.replace(/"/g, '\\"') + '"';
if (r.length) {
for (e && (t += ">"), i = 0, o = r.length; i < o; i++) 3 == r[i].nodeType ? t += r[i].nodeValue: 1 == r[i].nodeType && (t += b(r[i]).toString());
e && (t += "" + this.type + ">")
} else e && (t += "/>");
return t
}
}
var f = i.prototype,
h = r.is,
d = String,
m = r._unit2px,
y = r._.$,
g = r._.make,
v = r._.getSomeDefs,
x = "hasOwnProperty",
b = r._.wrap;
f.getBBox = function(e) {
if (!r.Matrix || !r.path) return this.node.getBBox();
var t = this,
n = new r.Matrix;
if (t.removed) return r._.box();
for (;
"use" == t.type;) if (e || (n = n.add(t.transform().localMatrix.translate(t.attr("x") || 0, t.attr("y") || 0))), t.original) t = t.original;
else {
var i = t.attr("xlink:href");
t = t.original = t.node.ownerDocument.getElementById(i.substring(i.indexOf("#") + 1))
}
var o = t._,
a = r.path.get[t.type] || r.path.get.deflt;
try {
return e ? (o.bboxwt = a ? r.path.getBBox(t.realPath = a(t)) : r._.box(t.node.getBBox()), r._.box(o.bboxwt)) : (t.realPath = a(t), t.matrix = t.transform().localMatrix, o.bbox = r.path.getBBox(r.path.map(t.realPath, n.add(t.matrix))), r._.box(o.bbox))
} catch(e) {
return r._.box()
}
};
var w = function() {
return this.string
};
f.transform = function(e) {
var t = this._;
if (null == e) {
for (var n, i = this,
o = new r.Matrix(this.node.getCTM()), a = c(this), s = [a], l = new r.Matrix, u = a.toTransformString(), p = d(a) == d(this.matrix) ? d(t.transform) : u;
"svg" != i.type && (i = i.parent());) s.push(c(i));
for (n = s.length; n--;) l.add(s[n]);
return {
string: p,
globalMatrix: o,
totalMatrix: l,
localMatrix: a,
diffMatrix: o.clone().add(a.invert()),
global: o.toTransformString(),
total: l.toTransformString(),
local: u,
toString: w
}
}
return e instanceof r.Matrix ? (this.matrix = e, this._.transform = e.toTransformString()) : c(this, e),
this.node && ("linearGradient" == this.type || "radialGradient" == this.type ? y(this.node, {
gradientTransform: this.matrix
}) : "pattern" == this.type ? y(this.node, {
patternTransform: this.matrix
}) : y(this.node, {
transform: this.matrix
})),
this
},
f.parent = function() {
return b(this.node.parentNode)
},
f.append = f.add = function(e) {
if (e) {
if ("set" == e.type) {
var t = this;
return e.forEach(function(e) {
t.add(e)
}),
this
}
e = b(e),
this.node.appendChild(e.node),
e.paper = this.paper
}
return this
},
f.appendTo = function(e) {
return e && (e = b(e), e.append(this)),
this
},
f.prepend = function(e) {
if (e) {
if ("set" == e.type) {
var t, n = this;
return e.forEach(function(e) {
t ? t.after(e) : n.prepend(e),
t = e
}),
this
}
e = b(e);
var r = e.parent();
this.node.insertBefore(e.node, this.node.firstChild),
this.add && this.add(),
e.paper = this.paper,
this.parent() && this.parent().add(),
r && r.add()
}
return this
},
f.prependTo = function(e) {
return e = b(e),
e.prepend(this),
this
},
f.before = function(e) {
if ("set" == e.type) {
var t = this;
return e.forEach(function(e) {
var n = e.parent();
t.node.parentNode.insertBefore(e.node, t.node),
n && n.add()
}),
this.parent().add(),
this
}
e = b(e);
var n = e.parent();
return this.node.parentNode.insertBefore(e.node, this.node),
this.parent() && this.parent().add(),
n && n.add(),
e.paper = this.paper,
this
},
f.after = function(e) {
e = b(e);
var t = e.parent();
return this.node.nextSibling ? this.node.parentNode.insertBefore(e.node, this.node.nextSibling) : this.node.parentNode.appendChild(e.node),
this.parent() && this.parent().add(),
t && t.add(),
e.paper = this.paper,
this
},
f.insertBefore = function(e) {
e = b(e);
var t = this.parent();
return e.node.parentNode.insertBefore(this.node, e.node),
this.paper = e.paper,
t && t.add(),
e.parent() && e.parent().add(),
this
},
f.insertAfter = function(e) {
e = b(e);
var t = this.parent();
return e.node.parentNode.insertBefore(this.node, e.node.nextSibling),
this.paper = e.paper,
t && t.add(),
e.parent() && e.parent().add(),
this
},
f.remove = function() {
var e = this.parent();
return this.node.parentNode && this.node.parentNode.removeChild(this.node),
delete this.paper,
this.removed = !0,
e && e.add(),
this
},
f.select = function(e) {
return e = d(e).replace(/([^\\]):/g, "$1\\:"),
b(this.node.querySelector(e))
},
f.selectAll = function(e) {
for (var t = this.node.querySelectorAll(e), n = (r.set || Array)(), i = 0; i < t.length; i++) n.push(b(t[i]));
return n
},
f.asPX = function(e, t) {
return null == t && (t = this.attr(e)),
+m(this, e, t)
},
f.use = function() {
var e, t = this.node.id;
return t || (t = this.id, y(this.node, {
id: t
})),
e = "linearGradient" == this.type || "radialGradient" == this.type || "pattern" == this.type ? g(this.type, this.node.parentNode) : g("use", this.node.parentNode),
y(e.node, {
"xlink:href": "#" + t
}),
e.original = this,
e
},
f.clone = function() {
var e = b(this.node.cloneNode(!0));
return y(e.node, "id") && y(e.node, {
id: e.id
}),
l(e),
e.insertAfter(this),
e
},
f.toDefs = function() {
var e = v(this);
return e.appendChild(this.node),
this
},
f.pattern = f.toPattern = function(e, t, n, r) {
var i = g("pattern", v(this));
return null == e && (e = this.getBBox()),
h(e, "object") && "x" in e && (t = e.y, n = e.width, r = e.height, e = e.x),
y(i.node, {
x: e,
y: t,
width: n,
height: r,
patternUnits: "userSpaceOnUse",
id: i.id,
viewBox: [e, t, n, r].join(" ")
}),
i.node.appendChild(this.node),
i
},
f.marker = function(e, t, n, r, i, o) {
var a = g("marker", v(this));
return null == e && (e = this.getBBox()),
h(e, "object") && "x" in e && (t = e.y, n = e.width, r = e.height, i = e.refX || e.cx, o = e.refY || e.cy, e = e.x),
y(a.node, {
viewBox: [e, t, n, r].join(" "),
markerWidth: n,
markerHeight: r,
orient: "auto",
refX: i || 0,
refY: o || 0,
id: a.id
}),
a.node.appendChild(this.node),
a
};
var A = function(e, t, r, i) {
"function" != typeof r || r.length || (i = r, r = n.linear),
this.attr = e,
this.dur = t,
r && (this.easing = r),
i && (this.callback = i)
};
r._.Animation = A,
r.animation = function(e, t, n, r) {
return new A(e, t, n, r)
},
f.inAnim = function() {
var e = this,
t = [];
for (var n in e.anims) e.anims[x](n) && !
function(e) {
t.push({
anim: new A(e._attrs, e.dur, e.easing, e._callback),
mina: e,
curStatus: e.status(),
status: function(t) {
return e.status(t)
},
stop: function() {
e.stop()
}
})
} (e.anims[n]);
return t
},
r.animate = function(e, r, i, o, a, s) {
"function" != typeof a || a.length || (s = a, a = n.linear);
var c = n.time(),
l = n(e, r, c, c + o, n.time, i, a);
return s && t.once("mina.finish." + l.id, s),
l
},
f.stop = function() {
for (var e = this.inAnim(), t = 0, n = e.length; t < n; t++) e[t].stop();
return this
},
f.animate = function(e, r, i, o) {
"function" != typeof i || i.length || (o = i, i = n.linear),
e instanceof A && (o = e.callback, i = e.easing, r = i.dur, e = e.attr);
var a, s, c, l, p = [],
f = [],
m = {},
y = this;
for (var g in e) if (e[x](g)) {
y.equal ? (l = y.equal(g, d(e[g])), a = l.from, s = l.to, c = l.f) : (a = +y.attr(g), s = +e[g]);
var v = h(a, "array") ? a.length: 1;
m[g] = u(p.length, p.length + v, c),
p = p.concat(a),
f = f.concat(s)
}
var b = n.time(),
E = n(p, f, b, b + r, n.time,
function(e) {
var t = {};
for (var n in m) m[x](n) && (t[n] = m[n](e));
y.attr(t)
},
i);
return y.anims[E.id] = E,
E._attrs = e,
E._callback = o,
t("snap.animcreated." + y.id, E),
t.once("mina.finish." + E.id,
function() {
delete y.anims[E.id],
o && o.call(y)
}),
t.once("mina.stop." + E.id,
function() {
delete y.anims[E.id]
}),
y
};
var _ = {};
f.data = function(e, n) {
var i = _[this.id] = _[this.id] || {};
if (0 == arguments.length) return t("snap.data.get." + this.id, this, i, null),
i;
if (1 == arguments.length) {
if (r.is(e, "object")) {
for (var o in e) e[x](o) && this.data(o, e[o]);
return this
}
return t("snap.data.get." + this.id, this, i[e], e),
i[e]
}
return i[e] = n,
t("snap.data.set." + this.id, this, n, e),
this
},
f.removeData = function(e) {
return null == e ? _[this.id] = {}: _[this.id] && delete _[this.id][e],
this
},
f.outerSVG = f.toString = p(1),
f.innerSVG = p(),
f.toDataURL = function() {
if (e && e.btoa) {
var t = this.getBBox(),
n = r.format('', {
x: +t.x.toFixed(3),
y: +t.y.toFixed(3),
width: +t.width.toFixed(3),
height: +t.height.toFixed(3),
contents: this.outerSVG()
});
return "data:image/svg+xml;base64," + btoa(unescape(encodeURIComponent(n)))
}
},
s.prototype.select = f.select,
s.prototype.selectAll = f.selectAll
}),
r.plugin(function(e, t, n, r, i) {
function o(e, t, n, r, i, o) {
return null == t && "[object SVGMatrix]" == a.call(e) ? (this.a = e.a, this.b = e.b, this.c = e.c, this.d = e.d, this.e = e.e, void(this.f = e.f)) : void(null != e ? (this.a = +e, this.b = +t, this.c = +n, this.d = +r, this.e = +i, this.f = +o) : (this.a = 1, this.b = 0, this.c = 0, this.d = 1, this.e = 0, this.f = 0))
}
var a = Object.prototype.toString,
s = String,
c = Math,
l = ""; !
function(t) {
function n(e) {
return e[0] * e[0] + e[1] * e[1]
}
function r(e) {
var t = c.sqrt(n(e));
e[0] && (e[0] /= t),
e[1] && (e[1] /= t)
}
t.add = function(e, t, n, r, i, a) {
var s, c, l, u, p = [[], [], []],
f = [[this.a, this.c, this.e], [this.b, this.d, this.f], [0, 0, 1]],
h = [[e, n, i], [t, r, a], [0, 0, 1]];
for (e && e instanceof o && (h = [[e.a, e.c, e.e], [e.b, e.d, e.f], [0, 0, 1]]), s = 0; s < 3; s++) for (c = 0; c < 3; c++) {
for (u = 0, l = 0; l < 3; l++) u += f[s][l] * h[l][c];
p[s][c] = u
}
return this.a = p[0][0],
this.b = p[1][0],
this.c = p[0][1],
this.d = p[1][1],
this.e = p[0][2],
this.f = p[1][2],
this
},
t.invert = function() {
var e = this,
t = e.a * e.d - e.b * e.c;
return new o(e.d / t, -e.b / t, -e.c / t, e.a / t, (e.c * e.f - e.d * e.e) / t, (e.b * e.e - e.a * e.f) / t)
},
t.clone = function() {
return new o(this.a, this.b, this.c, this.d, this.e, this.f)
},
t.translate = function(e, t) {
return this.add(1, 0, 0, 1, e, t)
},
t.scale = function(e, t, n, r) {
return null == t && (t = e),
(n || r) && this.add(1, 0, 0, 1, n, r),
this.add(e, 0, 0, t, 0, 0),
(n || r) && this.add(1, 0, 0, 1, -n, -r),
this
},
t.rotate = function(t, n, r) {
t = e.rad(t),
n = n || 0,
r = r || 0;
var i = +c.cos(t).toFixed(9),
o = +c.sin(t).toFixed(9);
return this.add(i, o, -o, i, n, r),
this.add(1, 0, 0, 1, -n, -r)
},
t.x = function(e, t) {
return e * this.a + t * this.c + this.e
},
t.y = function(e, t) {
return e * this.b + t * this.d + this.f
},
t.get = function(e) {
return + this[s.fromCharCode(97 + e)].toFixed(4)
},
t.toString = function() {
return "matrix(" + [this.get(0), this.get(1), this.get(2), this.get(3), this.get(4), this.get(5)].join() + ")"
},
t.offset = function() {
return [this.e.toFixed(4), this.f.toFixed(4)]
},
t.determinant = function() {
return this.a * this.d - this.b * this.c
},
t.split = function() {
var t = {};
t.dx = this.e,
t.dy = this.f;
var i = [[this.a, this.c], [this.b, this.d]];
t.scalex = c.sqrt(n(i[0])),
r(i[0]),
t.shear = i[0][0] * i[1][0] + i[0][1] * i[1][1],
i[1] = [i[1][0] - i[0][0] * t.shear, i[1][1] - i[0][1] * t.shear],
t.scaley = c.sqrt(n(i[1])),
r(i[1]),
t.shear /= t.scaley,
this.determinant() < 0 && (t.scalex = -t.scalex);
var o = -i[0][1],
a = i[1][1];
return a < 0 ? (t.rotate = e.deg(c.acos(a)), o < 0 && (t.rotate = 360 - t.rotate)) : t.rotate = e.deg(c.asin(o)),
t.isSimple = !( + t.shear.toFixed(9) || t.scalex.toFixed(9) != t.scaley.toFixed(9) && t.rotate),
t.isSuperSimple = !+t.shear.toFixed(9) && t.scalex.toFixed(9) == t.scaley.toFixed(9) && !t.rotate,
t.noRotation = !+t.shear.toFixed(9) && !t.rotate,
t
},
t.toTransformString = function(e) {
var t = e || this.split();
return + t.shear.toFixed(9) ? "m" + [this.get(0), this.get(1), this.get(2), this.get(3), this.get(4), this.get(5)] : (t.scalex = +t.scalex.toFixed(4), t.scaley = +t.scaley.toFixed(4), t.rotate = +t.rotate.toFixed(4), (t.dx || t.dy ? "t" + [ + t.dx.toFixed(4), +t.dy.toFixed(4)] : l) + (1 != t.scalex || 1 != t.scaley ? "s" + [t.scalex, t.scaley, 0, 0] : l) + (t.rotate ? "r" + [ + t.rotate.toFixed(4), 0, 0] : l))
}
} (o.prototype),
e.Matrix = o,
e.matrix = function(e, t, n, r, i, a) {
return new o(e, t, n, r, i, a)
}
}),
r.plugin(function(e, n, r, i, o) {
function a(r) {
return function(i) {
if (t.stop(), i instanceof o && 1 == i.node.childNodes.length && ("radialGradient" == i.node.firstChild.tagName || "linearGradient" == i.node.firstChild.tagName || "pattern" == i.node.firstChild.tagName) && (i = i.node.firstChild, h(this).appendChild(i), i = p(i)), i instanceof n) if ("radialGradient" == i.type || "linearGradient" == i.type || "pattern" == i.type) {
i.node.id || m(i.node, {
id: i.id
});
var a = y(i.node.id)
} else a = i.attr(r);
else if (a = e.color(i), a.error) {
var s = e(h(this).ownerSVGElement).gradient(i);
s ? (s.node.id || m(s.node, {
id: s.id
}), a = y(s.node.id)) : a = i
} else a = g(a);
var c = {};
c[r] = a,
m(this.node, c),
this.node.style[r] = x
}
}
function s(e) {
t.stop(),
e == +e && (e += "px"),
this.node.style.fontSize = e
}
function c(e) {
for (var t = [], n = e.childNodes, r = 0, i = n.length; r < i; r++) {
var o = n[r];
3 == o.nodeType && t.push(o.nodeValue),
"tspan" == o.tagName && (1 == o.childNodes.length && 3 == o.firstChild.nodeType ? t.push(o.firstChild.nodeValue) : t.push(c(o)))
}
return t
}
function l() {
return t.stop(),
this.node.style.fontSize
}
var u = e._.make,
p = e._.wrap,
f = e.is,
h = e._.getSomeDefs,
d = /^url\(#?([^)]+)\)$/,
m = e._.$,
y = e.url,
g = String,
v = e._.separator,
x = "";
t.on("snap.util.attr.mask",
function(e) {
if (e instanceof n || e instanceof o) {
if (t.stop(), e instanceof o && 1 == e.node.childNodes.length && (e = e.node.firstChild, h(this).appendChild(e), e = p(e)), "mask" == e.type) var r = e;
else r = u("mask", h(this)),
r.node.appendChild(e.node); ! r.node.id && m(r.node, {
id: r.id
}),
m(this.node, {
mask: y(r.id)
})
}
}),
function(e) {
t.on("snap.util.attr.clip", e),
t.on("snap.util.attr.clip-path", e),
t.on("snap.util.attr.clipPath", e)
} (function(e) {
if (e instanceof n || e instanceof o) {
if (t.stop(), "clipPath" == e.type) var r = e;
else r = u("clipPath", h(this)),
r.node.appendChild(e.node),
!r.node.id && m(r.node, {
id: r.id
});
m(this.node, {
"clip-path": y(r.node.id || r.id)
})
}
}),
t.on("snap.util.attr.fill", a("fill")),
t.on("snap.util.attr.stroke", a("stroke"));
var b = /^([lr])(?:\(([^)]*)\))?(.*)$/i;
t.on("snap.util.grad.parse",
function(e) {
e = g(e);
var t = e.match(b);
if (!t) return null;
var n = t[1],
r = t[2],
i = t[3];
return r = r.split(/\s*,\s*/).map(function(e) {
return + e == e ? +e: e
}),
1 == r.length && 0 == r[0] && (r = []),
i = i.split("-"),
i = i.map(function(e) {
e = e.split(":");
var t = {
color: e[0]
};
return e[1] && (t.offset = parseFloat(e[1])),
t
}),
{
type: n,
params: r,
stops: i
}
}),
t.on("snap.util.attr.d",
function(n) {
t.stop(),
f(n, "array") && f(n[0], "array") && (n = e.path.toString.call(n)),
n = g(n),
n.match(/[ruo]/i) && (n = e.path.toAbsolute(n)),
m(this.node, {
d: n
})
})( - 1),
t.on("snap.util.attr.#text",
function(e) {
t.stop(),
e = g(e);
for (var n = i.doc.createTextNode(e); this.node.firstChild;) this.node.removeChild(this.node.firstChild);
this.node.appendChild(n)
})( - 1),
t.on("snap.util.attr.path",
function(e) {
t.stop(),
this.attr({
d: e
})
})( - 1),
t.on("snap.util.attr.class",
function(e) {
t.stop(),
this.node.className.baseVal = e
})( - 1),
t.on("snap.util.attr.viewBox",
function(e) {
var n;
n = f(e, "object") && "x" in e ? [e.x, e.y, e.width, e.height].join(" ") : f(e, "array") ? e.join(" ") : e,
m(this.node, {
viewBox: n
}),
t.stop()
})( - 1),
t.on("snap.util.attr.transform",
function(e) {
this.transform(e),
t.stop()
})( - 1),
t.on("snap.util.attr.r",
function(e) {
"rect" == this.type && (t.stop(), m(this.node, {
rx: e,
ry: e
}))
})( - 1),
t.on("snap.util.attr.textpath",
function(e) {
if (t.stop(), "text" == this.type) {
var r, i, o;
if (!e && this.textPath) {
for (i = this.textPath; i.node.firstChild;) this.node.appendChild(i.node.firstChild);
return i.remove(),
void delete this.textPath
}
if (f(e, "string")) {
var a = h(this),
s = p(a.parentNode).path(e);
a.appendChild(s.node),
r = s.id,
s.attr({
id: r
})
} else e = p(e),
e instanceof n && (r = e.attr("id"), r || (r = e.id, e.attr({
id: r
})));
if (r) if (i = this.textPath, o = this.node, i) i.attr({
"xlink:href": "#" + r
});
else {
for (i = m("textPath", {
"xlink:href": "#" + r
}); o.firstChild;) i.appendChild(o.firstChild);
o.appendChild(i),
this.textPath = p(i)
}
}
})( - 1),
t.on("snap.util.attr.text",
function(e) {
if ("text" == this.type) {
for (var n = this.node,
r = function(e) {
var t = m("tspan");
if (f(e, "array")) for (var n = 0; n < e.length; n++) t.appendChild(r(e[n]));
else t.appendChild(i.doc.createTextNode(e));
return t.normalize && t.normalize(),
t
}; n.firstChild;) n.removeChild(n.firstChild);
for (var o = r(e); o.firstChild;) n.appendChild(o.firstChild)
}
t.stop()
})( - 1),
t.on("snap.util.attr.fontSize", s)( - 1),
t.on("snap.util.attr.font-size", s)( - 1),
t.on("snap.util.getattr.transform",
function() {
return t.stop(),
this.transform()
})( - 1),
t.on("snap.util.getattr.textpath",
function() {
return t.stop(),
this.textPath
})( - 1),
function() {
function n(n) {
return function() {
t.stop();
var r = i.doc.defaultView.getComputedStyle(this.node, null).getPropertyValue("marker-" + n);
return "none" == r ? r: e(i.doc.getElementById(r.match(d)[1]))
}
}
function r(e) {
return function(n) {
t.stop();
var r = "marker" + e.charAt(0).toUpperCase() + e.substring(1);
if ("" == n || !n) return void(this.node.style[r] = "none");
if ("marker" == n.type) {
var i = n.node.id;
return i || m(n.node, {
id: n.id
}),
void(this.node.style[r] = y(i))
}
}
}
t.on("snap.util.getattr.marker-end", n("end"))( - 1),
t.on("snap.util.getattr.markerEnd", n("end"))( - 1),
t.on("snap.util.getattr.marker-start", n("start"))( - 1),
t.on("snap.util.getattr.markerStart", n("start"))( - 1),
t.on("snap.util.getattr.marker-mid", n("mid"))( - 1),
t.on("snap.util.getattr.markerMid", n("mid"))( - 1),
t.on("snap.util.attr.marker-end", r("end"))( - 1),
t.on("snap.util.attr.markerEnd", r("end"))( - 1),
t.on("snap.util.attr.marker-start", r("start"))( - 1),
t.on("snap.util.attr.markerStart", r("start"))( - 1),
t.on("snap.util.attr.marker-mid", r("mid"))( - 1),
t.on("snap.util.attr.markerMid", r("mid"))( - 1)
} (),
t.on("snap.util.getattr.r",
function() {
if ("rect" == this.type && m(this.node, "rx") == m(this.node, "ry")) return t.stop(),
m(this.node, "rx")
})( - 1),
t.on("snap.util.getattr.text",
function() {
if ("text" == this.type || "tspan" == this.type) {
t.stop();
var e = c(this.node);
return 1 == e.length ? e[0] : e
}
})( - 1),
t.on("snap.util.getattr.#text",
function() {
return this.node.textContent
})( - 1),
t.on("snap.util.getattr.viewBox",
function() {
t.stop();
var n = m(this.node, "viewBox");
return n ? (n = n.split(v), e._.box( + n[0], +n[1], +n[2], +n[3])) : void 0
})( - 1),
t.on("snap.util.getattr.points",
function() {
var e = m(this.node, "points");
return t.stop(),
e ? e.split(v) : void 0
})( - 1),
t.on("snap.util.getattr.path",
function() {
var e = m(this.node, "d");
return t.stop(),
e
})( - 1),
t.on("snap.util.getattr.class",
function() {
return this.node.className.baseVal
})( - 1),
t.on("snap.util.getattr.fontSize", l)( - 1),
t.on("snap.util.getattr.font-size", l)( - 1)
}),
r.plugin(function(n, r, i, o, a) {
var s = i.prototype,
c = n.is;
s.rect = function(e, t, n, r, i, o) {
var a;
return null == o && (o = i),
c(e, "object") && "[object Object]" == e ? a = e: null != e && (a = {
x: e,
y: t,
width: n,
height: r
},
null != i && (a.rx = i, a.ry = o)),
this.el("rect", a)
},
s.circle = function(e, t, n) {
var r;
return c(e, "object") && "[object Object]" == e ? r = e: null != e && (r = {
cx: e,
cy: t,
r: n
}),
this.el("circle", r)
};
var l = function() {
function e() {
this.parentNode.removeChild(this)
}
return function(t, n) {
var r = o.doc.createElement("img"),
i = o.doc.body;
r.style.cssText = "position:absolute;left:-9999em;top:-9999em",
r.onload = function() {
n.call(r),
r.onload = r.onerror = null,
i.removeChild(r)
},
r.onerror = e,
i.appendChild(r),
r.src = t
}
} ();
s.image = function(e, t, r, i, o) {
var a = this.el("image");
if (c(e, "object") && "src" in e) a.attr(e);
else if (null != e) {
var s = {
"xlink:href": e,
preserveAspectRatio: "none"
};
null != t && null != r && (s.x = t, s.y = r),
null != i && null != o ? (s.width = i, s.height = o) : l(e,
function() {
n._.$(a.node, {
width: this.offsetWidth,
height: this.offsetHeight
})
}),
n._.$(a.node, s)
}
return a
},
s.ellipse = function(e, t, n, r) {
var i;
return c(e, "object") && "[object Object]" == e ? i = e: null != e && (i = {
cx: e,
cy: t,
rx: n,
ry: r
}),
this.el("ellipse", i)
},
s.path = function(e) {
var t;
return c(e, "object") && !c(e, "array") ? t = e: e && (t = {
d: e
}),
this.el("path", t)
},
s.group = s.g = function(e) {
var t = this.el("g");
return 1 == arguments.length && e && !e.type ? t.attr(e) : arguments.length && t.add(Array.prototype.slice.call(arguments, 0)),
t
},
s.svg = function(e, t, n, r, i, o, a, s) {
var l = {};
return c(e, "object") && null == t ? l = e: (null != e && (l.x = e), null != t && (l.y = t), null != n && (l.width = n), null != r && (l.height = r), null != i && null != o && null != a && null != s && (l.viewBox = [i, o, a, s])),
this.el("svg", l)
},
s.mask = function(e) {
var t = this.el("mask");
return 1 == arguments.length && e && !e.type ? t.attr(e) : arguments.length && t.add(Array.prototype.slice.call(arguments, 0)),
t
},
s.ptrn = function(e, t, n, r, i, o, a, s) {
if (c(e, "object")) var l = e;
else l = {
patternUnits: "userSpaceOnUse"
},
e && (l.x = e),
t && (l.y = t),
null != n && (l.width = n),
null != r && (l.height = r),
null != i && null != o && null != a && null != s && (l.viewBox = [i, o, a, s]);
return this.el("pattern", l)
},
s.use = function(e) {
return null != e ? (e instanceof r && (e.attr("id") || e.attr({
id: n._.id(e)
}), e = e.attr("id")), "#" == String(e).charAt() && (e = e.substring(1)), this.el("use", {
"xlink:href": "#" + e
})) : r.prototype.use.call(this)
},
s.symbol = function(e, t, n, r) {
var i = {};
return null != e && null != t && null != n && null != r && (i.viewBox = [e, t, n, r]),
this.el("symbol", i)
},
s.text = function(e, t, n) {
var r = {};
return c(e, "object") ? r = e: null != e && (r = {
x: e,
y: t,
text: n || ""
}),
this.el("text", r)
},
s.line = function(e, t, n, r) {
var i = {};
return c(e, "object") ? i = e: null != e && (i = {
x1: e,
x2: n,
y1: t,
y2: r
}),
this.el("line", i)
},
s.polyline = function(e) {
arguments.length > 1 && (e = Array.prototype.slice.call(arguments, 0));
var t = {};
return c(e, "object") && !c(e, "array") ? t = e: null != e && (t = {
points: e
}),
this.el("polyline", t)
},
s.polygon = function(e) {
arguments.length > 1 && (e = Array.prototype.slice.call(arguments, 0));
var t = {};
return c(e, "object") && !c(e, "array") ? t = e: null != e && (t = {
points: e
}),
this.el("polygon", t)
},
function() {
function r() {
return this.selectAll("stop")
}
function i(e, t) {
var r = u("stop"),
i = {
offset: +t + "%"
};
return e = n.color(e),
i["stop-color"] = e.hex,
e.opacity < 1 && (i["stop-opacity"] = e.opacity),
u(r, i),
this.node.appendChild(r),
this
}
function o() {
if ("linearGradient" == this.type) {
var e = u(this.node, "x1") || 0,
t = u(this.node, "x2") || 1,
r = u(this.node, "y1") || 0,
i = u(this.node, "y2") || 0;
return n._.box(e, r, math.abs(t - e), math.abs(i - r))
}
var o = this.node.cx || .5,
a = this.node.cy || .5,
s = this.node.r || 0;
return n._.box(o - s, a - s, 2 * s, 2 * s)
}
function a(e, n) {
function r(e, t) {
for (var n = (t - p) / (e - f), r = f; r < e; r++) a[r].offset = +( + p + n * (r - f)).toFixed(2);
f = e,
p = t
}
var i, o = t("snap.util.grad.parse", null, n).firstDefined();
if (!o) return null;
o.params.unshift(e),
i = "l" == o.type.toLowerCase() ? c.apply(0, o.params) : l.apply(0, o.params),
o.type != o.type.toLowerCase() && u(i.node, {
gradientUnits: "userSpaceOnUse"
});
var a = o.stops,
s = a.length,
p = 0,
f = 0;
s--;
for (var h = 0; h < s; h++)"offset" in a[h] && r(h, a[h].offset);
for (a[s].offset = a[s].offset || 100, r(s, a[s].offset), h = 0; h <= s; h++) {
var d = a[h];
i.addStop(d.color, d.offset)
}
return i
}
function c(e, t, a, s, c) {
var l = n._.make("linearGradient", e);
return l.stops = r,
l.addStop = i,
l.getBBox = o,
null != t && u(l.node, {
x1: t,
y1: a,
x2: s,
y2: c
}),
l
}
function l(e, t, a, s, c, l) {
var p = n._.make("radialGradient", e);
return p.stops = r,
p.addStop = i,
p.getBBox = o,
null != t && u(p.node, {
cx: t,
cy: a,
r: s
}),
null != c && null != l && u(p.node, {
fx: c,
fy: l
}),
p
}
var u = n._.$;
s.gradient = function(e) {
return a(this.defs, e)
},
s.gradientLinear = function(e, t, n, r) {
return c(this.defs, e, t, n, r)
},
s.gradientRadial = function(e, t, n, r, i) {
return l(this.defs, e, t, n, r, i)
},
s.toString = function() {
var e, t = this.node.ownerDocument,
r = t.createDocumentFragment(),
i = t.createElement("div"),
o = this.node.cloneNode(!0);
return r.appendChild(i),
i.appendChild(o),
n._.$(o, {
xmlns: "http://www.w3.org/2000/svg"
}),
e = i.innerHTML,
r.removeChild(r.firstChild),
e
},
s.toDataURL = function() {
if (e && e.btoa) return "data:image/svg+xml;base64," + btoa(unescape(encodeURIComponent(this)))
},
s.clear = function() {
for (var e, t = this.node.firstChild; t;) e = t.nextSibling,
"defs" != t.tagName ? t.parentNode.removeChild(t) : s.clear.call({
node: t
}),
t = e
}
} ()
}),
r.plugin(function(e, t, n, r) {
function i(e) {
var t = i.ps = i.ps || {};
return t[e] ? t[e].sleep = 100 : t[e] = {
sleep: 100
},
setTimeout(function() {
for (var n in t) t[F](n) && n != e && (t[n].sleep--, !t[n].sleep && delete t[n])
}),
t[e]
}
function o(e, t, n, r) {
return null == e && (e = t = n = r = 0),
null == t && (t = e.y, n = e.width, r = e.height, e = e.x),
{
x: e,
y: t,
width: n,
w: n,
height: r,
h: r,
x2: e + n,
y2: t + r,
cx: e + n / 2,
cy: t + r / 2,
r1: G.min(n, r) / 2,
r2: G.max(n, r) / 2,
r0: G.sqrt(n * n + r * r) / 2,
path: _(e, t, n, r),
vb: [e, t, n, r].join(" ")
}
}
function a() {
return this.join(",").replace(j, "$1")
}
function s(e) {
var t = L(e);
return t.toString = a,
t
}
function c(e, t, n, r, i, o, a, s, c) {
return null == c ? m(e, t, n, r, i, o, a, s) : u(e, t, n, r, i, o, a, s, y(e, t, n, r, i, o, a, s, c))
}
function l(n, r) {
function i(e) {
return + ( + e).toFixed(3)
}
return e._.cacher(function(e, o, a) {
e instanceof t && (e = e.attr("d")),
e = D(e);
for (var s, l, p, f, h, d = "",
m = {},
y = 0,
g = 0,
v = e.length; g < v; g++) {
if (p = e[g], "M" == p[0]) s = +p[1],
l = +p[2];
else {
if (f = c(s, l, p[1], p[2], p[3], p[4], p[5], p[6]), y + f > o) {
if (r && !m.start) {
if (h = c(s, l, p[1], p[2], p[3], p[4], p[5], p[6], o - y), d += ["C" + i(h.start.x), i(h.start.y), i(h.m.x), i(h.m.y), i(h.x), i(h.y)], a) return d;
m.start = d,
d = ["M" + i(h.x), i(h.y) + "C" + i(h.n.x), i(h.n.y), i(h.end.x), i(h.end.y), i(p[5]), i(p[6])].join(),
y += f,
s = +p[5],
l = +p[6];
continue
}
if (!n && !r) return h = c(s, l, p[1], p[2], p[3], p[4], p[5], p[6], o - y)
}
y += f,
s = +p[5],
l = +p[6]
}
d += p.shift() + p
}
return m.end = d,
h = n ? y: r ? m: u(s, l, p[0], p[1], p[2], p[3], p[4], p[5], 1)
},
null, e._.clone)
}
function u(e, t, n, r, i, o, a, s, c) {
var l = 1 - c,
u = q(l, 3),
p = q(l, 2),
f = c * c,
h = f * c,
d = u * e + 3 * p * c * n + 3 * l * c * c * i + h * a,
m = u * t + 3 * p * c * r + 3 * l * c * c * o + h * s,
y = e + 2 * c * (n - e) + f * (i - 2 * n + e),
g = t + 2 * c * (r - t) + f * (o - 2 * r + t),
v = n + 2 * c * (i - n) + f * (a - 2 * i + n),
x = r + 2 * c * (o - r) + f * (s - 2 * o + r),
b = l * e + c * n,
E = l * t + c * r,
w = l * i + c * a,
A = l * o + c * s,
_ = 90 - 180 * G.atan2(y - v, g - x) / U;
return {
x: d,
y: m,
m: {
x: y,
y: g
},
n: {
x: v,
y: x
},
start: {
x: b,
y: E
},
end: {
x: w,
y: A
},
alpha: _
}
}
function p(t, n, r, i, a, s, c, l) {
e.is(t, "array") || (t = [t, n, r, i, a, s, c, l]);
var u = P.apply(null, t);
return o(u.min.x, u.min.y, u.max.x - u.min.x, u.max.y - u.min.y)
}
function f(e, t, n) {
return t >= e.x && t <= e.x + e.width && n >= e.y && n <= e.y + e.height
}
function h(e, t) {
return e = o(e),
t = o(t),
f(t, e.x, e.y) || f(t, e.x2, e.y) || f(t, e.x, e.y2) || f(t, e.x2, e.y2) || f(e, t.x, t.y) || f(e, t.x2, t.y) || f(e, t.x, t.y2) || f(e, t.x2, t.y2) || (e.x < t.x2 && e.x > t.x || t.x < e.x2 && t.x > e.x) && (e.y < t.y2 && e.y > t.y || t.y < e.y2 && t.y > e.y)
}
function d(e, t, n, r, i) {
var o = -3 * t + 9 * n - 9 * r + 3 * i,
a = e * o + 6 * t - 12 * n + 6 * r;
return e * a - 3 * t + 3 * n
}
function m(e, t, n, r, i, o, a, s, c) {
null == c && (c = 1),
c = c > 1 ? 1 : c < 0 ? 0 : c;
for (var l = c / 2,
u = 12,
p = [ - .1252, .1252, -.3678, .3678, -.5873, .5873, -.7699, .7699, -.9041, .9041, -.9816, .9816], f = [.2491, .2491, .2335, .2335, .2032, .2032, .1601, .1601, .1069, .1069, .0472, .0472], h = 0, m = 0; m < u; m++) {
var y = l * p[m] + l,
g = d(y, e, n, i, a),
v = d(y, t, r, o, s),
x = g * g + v * v;
h += f[m] * G.sqrt(x)
}
return l * h
}
function y(e, t, n, r, i, o, a, s, c) {
if (! (c < 0 || m(e, t, n, r, i, o, a, s) < c)) {
var l, u = 1,
p = u / 2,
f = u - p,
h = .01;
for (l = m(e, t, n, r, i, o, a, s, f); H(l - c) > h;) p /= 2,
f += (l < c ? 1 : -1) * p,
l = m(e, t, n, r, i, o, a, s, f);
return f
}
}
function g(e, t, n, r, i, o, a, s) {
if (! (z(e, n) < W(i, a) || W(e, n) > z(i, a) || z(t, r) < W(o, s) || W(t, r) > z(o, s))) {
var c = (e * r - t * n) * (i - a) - (e - n) * (i * s - o * a),
l = (e * r - t * n) * (o - s) - (t - r) * (i * s - o * a),
u = (e - n) * (o - s) - (t - r) * (i - a);
if (u) {
var p = c / u,
f = l / u,
h = +p.toFixed(2),
d = +f.toFixed(2);
if (! (h < +W(e, n).toFixed(2) || h > +z(e, n).toFixed(2) || h < +W(i, a).toFixed(2) || h > +z(i, a).toFixed(2) || d < +W(t, r).toFixed(2) || d > +z(t, r).toFixed(2) || d < +W(o, s).toFixed(2) || d > +z(o, s).toFixed(2))) return {
x: p,
y: f
}
}
}
}
function v(e, t, n) {
var r = p(e),
i = p(t);
if (!h(r, i)) return n ? 0 : [];
for (var o = m.apply(0, e), a = m.apply(0, t), s = ~~ (o / 8), c = ~~ (a / 8), l = [], f = [], d = {},
y = n ? 0 : [], v = 0; v < s + 1; v++) {
var x = u.apply(0, e.concat(v / s));
l.push({
x: x.x,
y: x.y,
t: v / s
})
}
for (v = 0; v < c + 1; v++) x = u.apply(0, t.concat(v / c)),
f.push({
x: x.x,
y: x.y,
t: v / c
});
for (v = 0; v < s; v++) for (var b = 0; b < c; b++) {
var E = l[v],
w = l[v + 1],
A = f[b],
_ = f[b + 1],
S = H(w.x - E.x) < .001 ? "y": "x",
T = H(_.x - A.x) < .001 ? "y": "x",
C = g(E.x, E.y, w.x, w.y, A.x, A.y, _.x, _.y);
if (C) {
if (d[C.x.toFixed(4)] == C.y.toFixed(4)) continue;
d[C.x.toFixed(4)] = C.y.toFixed(4);
var R = E.t + H((C[S] - E[S]) / (w[S] - E[S])) * (w.t - E.t),
N = A.t + H((C[T] - A[T]) / (_[T] - A[T])) * (_.t - A.t);
R >= 0 && R <= 1 && N >= 0 && N <= 1 && (n ? y++:y.push({
x: C.x,
y: C.y,
t1: R,
t2: N
}))
}
}
return y
}
function x(e, t) {
return E(e, t)
}
function b(e, t) {
return E(e, t, 1)
}
function E(e, t, n) {
e = D(e),
t = D(t);
for (var r, i, o, a, s, c, l, u, p, f, h = n ? 0 : [], d = 0, m = e.length; d < m; d++) {
var y = e[d];
if ("M" == y[0]) r = s = y[1],
i = c = y[2];
else {
"C" == y[0] ? (p = [r, i].concat(y.slice(1)), r = p[6], i = p[7]) : (p = [r, i, r, i, s, c, s, c], r = s, i = c);
for (var g = 0,
x = t.length; g < x; g++) {
var b = t[g];
if ("M" == b[0]) o = l = b[1],
a = u = b[2];
else {
"C" == b[0] ? (f = [o, a].concat(b.slice(1)), o = f[6], a = f[7]) : (f = [o, a, o, a, l, u, l, u], o = l, a = u);
var E = v(p, f, n);
if (n) h += E;
else {
for (var w = 0,
A = E.length; w < A; w++) E[w].segment1 = d,
E[w].segment2 = g,
E[w].bez1 = p,
E[w].bez2 = f;
h = h.concat(E)
}
}
}
}
}
return h
}
function w(e, t, n) {
var r = A(e);
return f(r, t, n) && E(e, [["M", t, n], ["H", r.x2 + 10]], 1) % 2 == 1
}
function A(e) {
var t = i(e);
if (t.bbox) return L(t.bbox);
if (!e) return o();
e = D(e);
for (var n, r = 0,
a = 0,
s = [], c = [], l = 0, u = e.length; l < u; l++) if (n = e[l], "M" == n[0]) r = n[1],
a = n[2],
s.push(r),
c.push(a);
else {
var p = P(r, a, n[1], n[2], n[3], n[4], n[5], n[6]);
s = s.concat(p.min.x, p.max.x),
c = c.concat(p.min.y, p.max.y),
r = n[5],
a = n[6]
}
var f = W.apply(0, s),
h = W.apply(0, c),
d = z.apply(0, s),
m = z.apply(0, c),
y = o(f, h, d - f, m - h);
return t.bbox = L(y),
y
}
function _(e, t, n, r, i) {
if (i) return [["M", +e + +i, t], ["l", n - 2 * i, 0], ["a", i, i, 0, 0, 1, i, i], ["l", 0, r - 2 * i], ["a", i, i, 0, 0, 1, -i, i], ["l", 2 * i - n, 0], ["a", i, i, 0, 0, 1, -i, -i], ["l", 0, 2 * i - r], ["a", i, i, 0, 0, 1, i, -i], ["z"]];
var o = [["M", e, t], ["l", n, 0], ["l", 0, r], ["l", -n, 0], ["z"]];
return o.toString = a,
o
}
function S(e, t, n, r, i) {
if (null == i && null == r && (r = n), e = +e, t = +t, n = +n, r = +r, null != i) var o = Math.PI / 180,
s = e + n * Math.cos( - r * o),
c = e + n * Math.cos( - i * o),
l = t + n * Math.sin( - r * o),
u = t + n * Math.sin( - i * o),
p = [["M", s, l], ["A", n, n, 0, +(i - r > 180), 0, c, u]];
else p = [["M", e, t], ["m", 0, -r], ["a", n, r, 0, 1, 1, 0, 2 * r], ["a", n, r, 0, 1, 1, 0, -2 * r], ["z"]];
return p.toString = a,
p
}
function T(t) {
var n = i(t),
r = String.prototype.toLowerCase;
if (n.rel) return s(n.rel);
e.is(t, "array") && e.is(t && t[0], "array") || (t = e.parsePathString(t));
var o = [],
c = 0,
l = 0,
u = 0,
p = 0,
f = 0;
"M" == t[0][0] && (c = t[0][1], l = t[0][2], u = c, p = l, f++, o.push(["M", c, l]));
for (var h = f,
d = t.length; h < d; h++) {
var m = o[h] = [],
y = t[h];
if (y[0] != r.call(y[0])) switch (m[0] = r.call(y[0]), m[0]) {
case "a":
m[1] = y[1],
m[2] = y[2],
m[3] = y[3],
m[4] = y[4],
m[5] = y[5],
m[6] = +(y[6] - c).toFixed(3),
m[7] = +(y[7] - l).toFixed(3);
break;
case "v":
m[1] = +(y[1] - l).toFixed(3);
break;
case "m":
u = y[1],
p = y[2];
default:
for (var g = 1,
v = y.length; g < v; g++) m[g] = +(y[g] - (g % 2 ? c: l)).toFixed(3)
} else {
m = o[h] = [],
"m" == y[0] && (u = y[1] + c, p = y[2] + l);
for (var x = 0,
b = y.length; x < b; x++) o[h][x] = y[x]
}
var E = o[h].length;
switch (o[h][0]) {
case "z":
c = u,
l = p;
break;
case "h":
c += +o[h][E - 1];
break;
case "v":
l += +o[h][E - 1];
break;
default:
c += +o[h][E - 2],
l += +o[h][E - 1]
}
}
return o.toString = a,
n.rel = s(o),
o
}
function C(t) {
var n = i(t);
if (n.abs) return s(n.abs);
if (I(t, "array") && I(t && t[0], "array") || (t = e.parsePathString(t)), !t || !t.length) return [["M", 0, 0]];
var r, o = [],
c = 0,
l = 0,
u = 0,
p = 0,
f = 0;
"M" == t[0][0] && (c = +t[0][1], l = +t[0][2], u = c, p = l, f++, o[0] = ["M", c, l]);
for (var h, d, m = 3 == t.length && "M" == t[0][0] && "R" == t[1][0].toUpperCase() && "Z" == t[2][0].toUpperCase(), y = f, g = t.length; y < g; y++) {
if (o.push(h = []), d = t[y], r = d[0], r != r.toUpperCase()) switch (h[0] = r.toUpperCase(), h[0]) {
case "A":
h[1] = d[1],
h[2] = d[2],
h[3] = d[3],
h[4] = d[4],
h[5] = d[5],
h[6] = +d[6] + c,
h[7] = +d[7] + l;
break;
case "V":
h[1] = +d[1] + l;
break;
case "H":
h[1] = +d[1] + c;
break;
case "R":
for (var v = [c, l].concat(d.slice(1)), x = 2, b = v.length; x < b; x++) v[x] = +v[x] + c,
v[++x] = +v[x] + l;
o.pop(),
o = o.concat(O(v, m));
break;
case "O":
o.pop(),
v = S(c, l, d[1], d[2]),
v.push(v[0]),
o = o.concat(v);
break;
case "U":
o.pop(),
o = o.concat(S(c, l, d[1], d[2], d[3])),
h = ["U"].concat(o[o.length - 1].slice( - 2));
break;
case "M":
u = +d[1] + c,
p = +d[2] + l;
default:
for (x = 1, b = d.length; x < b; x++) h[x] = +d[x] + (x % 2 ? c: l)
} else if ("R" == r) v = [c, l].concat(d.slice(1)),
o.pop(),
o = o.concat(O(v, m)),
h = ["R"].concat(d.slice( - 2));
else if ("O" == r) o.pop(),
v = S(c, l, d[1], d[2]),
v.push(v[0]),
o = o.concat(v);
else if ("U" == r) o.pop(),
o = o.concat(S(c, l, d[1], d[2], d[3])),
h = ["U"].concat(o[o.length - 1].slice( - 2));
else for (var E = 0,
w = d.length; E < w; E++) h[E] = d[E];
if (r = r.toUpperCase(), "O" != r) switch (h[0]) {
case "Z":
c = +u,
l = +p;
break;
case "H":
c = h[1];
break;
case "V":
l = h[1];
break;
case "M":
u = h[h.length - 2],
p = h[h.length - 1];
default:
c = h[h.length - 2],
l = h[h.length - 1]
}
}
return o.toString = a,
n.abs = s(o),
o
}
function R(e, t, n, r) {
return [e, t, n, r, n, r]
}
function N(e, t, n, r, i, o) {
var a = 1 / 3,
s = 2 / 3;
return [a * e + s * n, a * t + s * r, a * i + s * n, a * o + s * r, i, o]
}
function M(t, n, r, i, o, a, s, c, l, u) {
var p, f = 120 * U / 180,
h = U / 180 * ( + o || 0),
d = [],
m = e._.cacher(function(e, t, n) {
var r = e * G.cos(n) - t * G.sin(n),
i = e * G.sin(n) + t * G.cos(n);
return {
x: r,
y: i
}
});
if (u) _ = u[0],
S = u[1],
w = u[2],
A = u[3];
else {
p = m(t, n, -h),
t = p.x,
n = p.y,
p = m(c, l, -h),
c = p.x,
l = p.y;
var y = (G.cos(U / 180 * o), G.sin(U / 180 * o), (t - c) / 2),
g = (n - l) / 2,
v = y * y / (r * r) + g * g / (i * i);
v > 1 && (v = G.sqrt(v), r = v * r, i = v * i);
var x = r * r,
b = i * i,
E = (a == s ? -1 : 1) * G.sqrt(H((x * b - x * g * g - b * y * y) / (x * g * g + b * y * y))),
w = E * r * g / i + (t + c) / 2,
A = E * -i * y / r + (n + l) / 2,
_ = G.asin(((n - A) / i).toFixed(9)),
S = G.asin(((l - A) / i).toFixed(9));
_ = t < w ? U - _: _,
S = c < w ? U - S: S,
_ < 0 && (_ = 2 * U + _),
S < 0 && (S = 2 * U + S),
s && _ > S && (_ -= 2 * U),
!s && S > _ && (S -= 2 * U)
}
var T = S - _;
if (H(T) > f) {
var C = S,
R = c,
N = l;
S = _ + f * (s && S > _ ? 1 : -1),
c = w + r * G.cos(S),
l = A + i * G.sin(S),
d = M(c, l, r, i, o, 0, s, R, N, [S, C, w, A])
}
T = S - _;
var P = G.cos(_),
D = G.sin(_),
k = G.cos(S),
O = G.sin(S),
B = G.tan(T / 4),
I = 4 / 3 * r * B,
L = 4 / 3 * i * B,
F = [t, n],
j = [t + I * D, n - L * P],
V = [c + I * O, l - L * k],
W = [c, l];
if (j[0] = 2 * F[0] - j[0], j[1] = 2 * F[1] - j[1], u) return [j, V, W].concat(d);
d = [j, V, W].concat(d).join().split(",");
for (var z = [], q = 0, Y = d.length; q < Y; q++) z[q] = q % 2 ? m(d[q - 1], d[q], h).y: m(d[q], d[q + 1], h).x;
return z
}
function P(e, t, n, r, i, o, a, s) {
for (var c, l, u, p, f, h, d, m, y = [], g = [[], []], v = 0; v < 2; ++v) if (0 == v ? (l = 6 * e - 12 * n + 6 * i, c = -3 * e + 9 * n - 9 * i + 3 * a, u = 3 * n - 3 * e) : (l = 6 * t - 12 * r + 6 * o, c = -3 * t + 9 * r - 9 * o + 3 * s, u = 3 * r - 3 * t), H(c) < 1e-12) {
if (H(l) < 1e-12) continue;
p = -u / l,
0 < p && p < 1 && y.push(p)
} else d = l * l - 4 * u * c,
m = G.sqrt(d),
d < 0 || (f = ( - l + m) / (2 * c), 0 < f && f < 1 && y.push(f), h = ( - l - m) / (2 * c), 0 < h && h < 1 && y.push(h));
for (var x, b = y.length,
E = b; b--;) p = y[b],
x = 1 - p,
g[0][b] = x * x * x * e + 3 * x * x * p * n + 3 * x * p * p * i + p * p * p * a,
g[1][b] = x * x * x * t + 3 * x * x * p * r + 3 * x * p * p * o + p * p * p * s;
return g[0][E] = e,
g[1][E] = t,
g[0][E + 1] = a,
g[1][E + 1] = s,
g[0].length = g[1].length = E + 2,
{
min: {
x: W.apply(0, g[0]),
y: W.apply(0, g[1])
},
max: {
x: z.apply(0, g[0]),
y: z.apply(0, g[1])
}
}
}
function D(e, t) {
var n = !t && i(e);
if (!t && n.curve) return s(n.curve);
for (var r = C(e), o = t && C(t), a = {
x: 0,
y: 0,
bx: 0,
by: 0,
X: 0,
Y: 0,
qx: null,
qy: null
},
c = {
x: 0,
y: 0,
bx: 0,
by: 0,
X: 0,
Y: 0,
qx: null,
qy: null
},
l = (function(e, t, n) {
var r, i;
if (!e) return ["C", t.x, t.y, t.x, t.y, t.x, t.y];
switch (! (e[0] in {
T: 1,
Q: 1
}) && (t.qx = t.qy = null), e[0]) {
case "M":
t.X = e[1],
t.Y = e[2];
break;
case "A":
e = ["C"].concat(M.apply(0, [t.x, t.y].concat(e.slice(1))));
break;
case "S":
"C" == n || "S" == n ? (r = 2 * t.x - t.bx, i = 2 * t.y - t.by) : (r = t.x, i = t.y),
e = ["C", r, i].concat(e.slice(1));
break;
case "T":
"Q" == n || "T" == n ? (t.qx = 2 * t.x - t.qx, t.qy = 2 * t.y - t.qy) : (t.qx = t.x, t.qy = t.y),
e = ["C"].concat(N(t.x, t.y, t.qx, t.qy, e[1], e[2]));
break;
case "Q":
t.qx = e[1],
t.qy = e[2],
e = ["C"].concat(N(t.x, t.y, e[1], e[2], e[3], e[4]));
break;
case "L":
e = ["C"].concat(R(t.x, t.y, e[1], e[2]));
break;
case "H":
e = ["C"].concat(R(t.x, t.y, e[1], t.y));
break;
case "V":
e = ["C"].concat(R(t.x, t.y, t.x, e[1]));
break;
case "Z":
e = ["C"].concat(R(t.x, t.y, t.X, t.Y))
}
return e
}), u = function(e, t) {
if (e[t].length > 7) {
e[t].shift();
for (var n = e[t]; n.length;) f[t] = "A",
o && (h[t] = "A"),
e.splice(t++, 0, ["C"].concat(n.splice(0, 6)));
e.splice(t, 1),
g = z(r.length, o && o.length || 0)
}
},
p = function(e, t, n, i, a) {
e && t && "M" == e[a][0] && "M" != t[a][0] && (t.splice(a, 0, ["M", i.x, i.y]), n.bx = 0, n.by = 0, n.x = e[a][1], n.y = e[a][2], g = z(r.length, o && o.length || 0))
},
f = [], h = [], d = "", m = "", y = 0, g = z(r.length, o && o.length || 0); y < g; y++) {
r[y] && (d = r[y][0]),
"C" != d && (f[y] = d, y && (m = f[y - 1])),
r[y] = l(r[y], a, m),
"A" != f[y] && "C" == d && (f[y] = "C"),
u(r, y),
o && (o[y] && (d = o[y][0]), "C" != d && (h[y] = d, y && (m = h[y - 1])), o[y] = l(o[y], c, m), "A" != h[y] && "C" == d && (h[y] = "C"), u(o, y)),
p(r, o, a, c, y),
p(o, r, c, a, y);
var v = r[y],
x = o && o[y],
b = v.length,
E = o && x.length;
a.x = v[b - 2],
a.y = v[b - 1],
a.bx = V(v[b - 4]) || a.x,
a.by = V(v[b - 3]) || a.y,
c.bx = o && (V(x[E - 4]) || c.x),
c.by = o && (V(x[E - 3]) || c.y),
c.x = o && x[E - 2],
c.y = o && x[E - 1]
}
return o || (n.curve = s(r)),
o ? [r, o] : r
}
function k(e, t) {
if (!t) return e;
var n, r, i, o, a, s, c;
for (e = D(e), i = 0, a = e.length; i < a; i++) for (c = e[i], o = 1, s = c.length; o < s; o += 2) n = t.x(c[o], c[o + 1]),
r = t.y(c[o], c[o + 1]),
c[o] = n,
c[o + 1] = r;
return e
}
function O(e, t) {
for (var n = [], r = 0, i = e.length; i - 2 * !t > r; r += 2) {
var o = [{
x: +e[r - 2],
y: +e[r - 1]
},
{
x: +e[r],
y: +e[r + 1]
},
{
x: +e[r + 2],
y: +e[r + 3]
},
{
x: +e[r + 4],
y: +e[r + 5]
}];
t ? r ? i - 4 == r ? o[3] = {
x: +e[0],
y: +e[1]
}: i - 2 == r && (o[2] = {
x: +e[0],
y: +e[1]
},
o[3] = {
x: +e[2],
y: +e[3]
}) : o[0] = {
x: +e[i - 2],
y: +e[i - 1]
}: i - 4 == r ? o[3] = o[2] : r || (o[0] = {
x: +e[r],
y: +e[r + 1]
}),
n.push(["C", ( - o[0].x + 6 * o[1].x + o[2].x) / 6, ( - o[0].y + 6 * o[1].y + o[2].y) / 6, (o[1].x + 6 * o[2].x - o[3].x) / 6, (o[1].y + 6 * o[2].y - o[3].y) / 6, o[2].x, o[2].y])
}
return n
}
var B = t.prototype,
I = e.is,
L = e._.clone,
F = "hasOwnProperty",
j = /,?([a-z]),?/gi,
V = parseFloat,
G = Math,
U = G.PI,
W = G.min,
z = G.max,
q = G.pow,
H = G.abs,
Y = l(1),
$ = l(),
K = l(0, 1),
X = e._unit2px,
Q = {
path: function(e) {
return e.attr("path")
},
circle: function(e) {
var t = X(e);
return S(t.cx, t.cy, t.r)
},
ellipse: function(e) {
var t = X(e);
return S(t.cx || 0, t.cy || 0, t.rx, t.ry)
},
rect: function(e) {
var t = X(e);
return _(t.x || 0, t.y || 0, t.width, t.height, t.rx, t.ry)
},
image: function(e) {
var t = X(e);
return _(t.x || 0, t.y || 0, t.width, t.height)
},
line: function(e) {
return "M" + [e.attr("x1") || 0, e.attr("y1") || 0, e.attr("x2"), e.attr("y2")]
},
polyline: function(e) {
return "M" + e.attr("points")
},
polygon: function(e) {
return "M" + e.attr("points") + "z"
},
deflt: function(e) {
var t = e.node.getBBox();
return _(t.x, t.y, t.width, t.height)
}
};
e.path = i,
e.path.getTotalLength = Y,
e.path.getPointAtLength = $,
e.path.getSubpath = function(e, t, n) {
if (this.getTotalLength(e) - n < 1e-6) return K(e, t).end;
var r = K(e, n, 1);
return t ? K(r, t).end: r
},
B.getTotalLength = function() {
if (this.node.getTotalLength) return this.node.getTotalLength()
},
B.getPointAtLength = function(e) {
return $(this.attr("d"), e)
},
B.getSubpath = function(t, n) {
return e.path.getSubpath(this.attr("d"), t, n)
},
e._.box = o,
e.path.findDotsAtSegment = u,
e.path.bezierBBox = p,
e.path.isPointInsideBBox = f,
e.path.isBBoxIntersect = h,
e.path.intersection = x,
e.path.intersectionNumber = b,
e.path.isPointInside = w,
e.path.getBBox = A,
e.path.get = Q,
e.path.toRelative = T,
e.path.toAbsolute = C,
e.path.toCubic = D,
e.path.map = k,
e.path.toString = a,
e.path.clone = s
}),
r.plugin(function(e, n, r, i) {
for (var o = n.prototype,
a = "hasOwnProperty",
s = ("createTouch" in i.doc), c = ["click", "dblclick", "mousedown", "mousemove", "mouseout", "mouseover", "mouseup", "touchstart", "touchmove", "touchend", "touchcancel"], l = {
mousedown: "touchstart",
mousemove: "touchmove",
mouseup: "touchend"
},
u = (function(e, t) {
var n = "y" == e ? "scrollTop": "scrollLeft",
r = t && t.node ? t.node.ownerDocument: i.doc;
return r[n in r.documentElement ? "documentElement": "body"][n]
}), p = function() {
this.returnValue = !1
},
f = function() {
return this.originalEvent.preventDefault()
},
h = function() {
this.cancelBubble = !0
},
d = function() {
return this.originalEvent.stopPropagation()
},
m = function() {
return i.doc.addEventListener ?
function(e, t, n, r) {
var i = s && l[t] ? l[t] : t,
o = function(i) {
var o = u("y", r),
c = u("x", r);
if (s && l[a](t)) for (var p = 0,
h = i.targetTouches && i.targetTouches.length; p < h; p++) if (i.targetTouches[p].target == e || e.contains(i.targetTouches[p].target)) {
var m = i;
i = i.targetTouches[p],
i.originalEvent = m,
i.preventDefault = f,
i.stopPropagation = d;
break
}
var y = i.clientX + c,
g = i.clientY + o;
return n.call(r, i, y, g)
};
return t !== i && e.addEventListener(t, o, !1),
e.addEventListener(i, o, !1),
function() {
return t !== i && e.removeEventListener(t, o, !1),
e.removeEventListener(i, o, !1),
!0
}
}: i.doc.attachEvent ?
function(e, t, n, r) {
var i = function(e) {
e = e || r.node.ownerDocument.window.event;
var t = u("y", r),
i = u("x", r),
o = e.clientX + i,
a = e.clientY + t;
return e.preventDefault = e.preventDefault || p,
e.stopPropagation = e.stopPropagation || h,
n.call(r, e, o, a)
};
e.attachEvent("on" + t, i);
var o = function() {
return e.detachEvent("on" + t, i),
!0
};
return o
}: void 0
} (), y = [], g = function(e) {
for (var n, r = e.clientX,
i = e.clientY,
o = u("y"), a = u("x"), c = y.length; c--;) {
if (n = y[c], s) {
for (var l, p = e.touches && e.touches.length; p--;) if (l = e.touches[p], l.identifier == n.el._drag.id || n.el.node.contains(l.target)) {
r = l.clientX,
i = l.clientY,
(e.originalEvent ? e.originalEvent: e).preventDefault();
break
}
} else e.preventDefault();
var f = n.el.node;
f.nextSibling,
f.parentNode,
f.style.display;
r += a,
i += o,
t("snap.drag.move." + n.el.id, n.move_scope || n.el, r - n.el._drag.x, i - n.el._drag.y, r, i, e)
}
},
v = function(n) {
e.unmousemove(g).unmouseup(v);
for (var r, i = y.length; i--;) r = y[i],
r.el._drag = {},
t("snap.drag.end." + r.el.id, r.end_scope || r.start_scope || r.move_scope || r.el, n);
y = []
},
x = c.length; x--;) !
function(t) {
e[t] = o[t] = function(n, r) {
return e.is(n, "function") && (this.events = this.events || [], this.events.push({
name: t,
f: n,
unbind: m(this.node || document, t, n, r || this)
})),
this
},
e["un" + t] = o["un" + t] = function(e) {
for (var n = this.events || [], r = n.length; r--;) if (n[r].name == t && (n[r].f == e || !e)) return n[r].unbind(),
n.splice(r, 1),
!n.length && delete this.events,
this;
return this
}
} (c[x]);
o.hover = function(e, t, n, r) {
return this.mouseover(e, n).mouseout(t, r || n)
},
o.unhover = function(e, t) {
return this.unmouseover(e).unmouseout(t)
};
var b = [];
o.drag = function(n, r, i, o, a, s) {
function c(c, l, u) { (c.originalEvent || c).preventDefault(),
this._drag.x = l,
this._drag.y = u,
this._drag.id = c.identifier,
!y.length && e.mousemove(g).mouseup(v),
y.push({
el: this,
move_scope: o,
start_scope: a,
end_scope: s
}),
r && t.on("snap.drag.start." + this.id, r),
n && t.on("snap.drag.move." + this.id, n),
i && t.on("snap.drag.end." + this.id, i),
t("snap.drag.start." + this.id, a || o || this, l, u, c)
}
if (!arguments.length) {
var l;
return this.drag(function(e, t) {
this.attr({
transform: l + (l ? "T": "t") + [e, t]
})
},
function() {
l = this.transform().local
})
}
return this._drag = {},
b.push({
el: this,
start: c
}),
this.mousedown(c),
this
},
o.undrag = function() {
for (var n = b.length; n--;) b[n].el == this && (this.unmousedown(b[n].start), b.splice(n, 1), t.unbind("snap.drag.*." + this.id));
return ! b.length && e.unmousemove(g).unmouseup(v),
this
}
}),
r.plugin(function(e, n, r, i) {
var o = (n.prototype, r.prototype),
a = /^\s*url\((.+)\)/,
s = String,
c = e._.$;
e.filter = {},
o.filter = function(t) {
var r = this;
"svg" != r.type && (r = r.paper);
var i = e.parse(s(t)),
o = e._.id(),
a = (r.node.offsetWidth, r.node.offsetHeight, c("filter"));
return c(a, {
id: o,
filterUnits: "userSpaceOnUse"
}),
a.appendChild(i.node),
r.defs.appendChild(a),
new n(a)
},
t.on("snap.util.getattr.filter",
function() {
t.stop();
var n = c(this.node, "filter");
if (n) {
var r = s(n).match(a);
return r && e.select(r[1])
}
}),
t.on("snap.util.attr.filter",
function(r) {
if (r instanceof n && "filter" == r.type) {
t.stop();
var i = r.node.id;
i || (c(r.node, {
id: r.id
}), i = r.id),
c(this.node, {
filter: e.url(i)
})
}
r && "none" != r || (t.stop(), this.node.removeAttribute("filter"))
}),
e.filter.blur = function(t, n) {
null == t && (t = 2);
var r = null == n ? t: [t, n];
return e.format('', {
def: r
})
},
e.filter.blur.toString = function() {
return this()
},
e.filter.shadow = function(t, n, r, i, o) {
return "string" == typeof r && (i = r, o = i, r = 4),
"string" != typeof i && (o = i, i = "#000"),
i = i || "#000",
null == r && (r = 4),
null == o && (o = 1),
null == t && (t = 0, n = 2),
null == n && (n = t),
i = e.color(i),
e.format('', {
color: i,
dx: t,
dy: n,
blur: r,
opacity: o
})
},
e.filter.shadow.toString = function() {
return this()
},
e.filter.grayscale = function(t) {
return null == t && (t = 1),
e.format('', {
a: .2126 + .7874 * (1 - t),
b: .7152 - .7152 * (1 - t),
c: .0722 - .0722 * (1 - t),
d: .2126 - .2126 * (1 - t),
e: .7152 + .2848 * (1 - t),
f: .0722 - .0722 * (1 - t),
g: .2126 - .2126 * (1 - t),
h: .0722 + .9278 * (1 - t)
})
},
e.filter.grayscale.toString = function() {
return this()
},
e.filter.sepia = function(t) {
return null == t && (t = 1),
e.format('', {
a: .393 + .607 * (1 - t),
b: .769 - .769 * (1 - t),
c: .189 - .189 * (1 - t),
d: .349 - .349 * (1 - t),
e: .686 + .314 * (1 - t),
f: .168 - .168 * (1 - t),
g: .272 - .272 * (1 - t),
h: .534 - .534 * (1 - t),
i: .131 + .869 * (1 - t)
})
},
e.filter.sepia.toString = function() {
return this()
},
e.filter.saturate = function(t) {
return null == t && (t = 1),
e.format('', {
amount: 1 - t
})
},
e.filter.saturate.toString = function() {
return this()
},
e.filter.hueRotate = function(t) {
return t = t || 0,
e.format('', {
angle: t
})
},
e.filter.hueRotate.toString = function() {
return this()
},
e.filter.invert = function(t) {
return null == t && (t = 1),
e.format('', {
amount: t,
amount2: 1 - t
})
},
e.filter.invert.toString = function() {
return this()
},
e.filter.brightness = function(t) {
return null == t && (t = 1),
e.format('', {
amount: t
})
},
e.filter.brightness.toString = function() {
return this()
},
e.filter.contrast = function(t) {
return null == t && (t = 1),
e.format('', {
amount: t,
amount2: .5 - t / 2
})
},
e.filter.contrast.toString = function() {
return this()
}
}),
r
})
},
{
74 : 74
}],
76 : [function(e, t, n) {
"use strict";
var r = t.exports = e(75);
r.plugin(function(e, t) {
t.prototype.children = function() {
for (var t = [], n = this.node.childNodes, r = 0, i = n.length; r < i; r++) t[r] = new e(n[r]);
return t
}
}),
r.plugin(function(e, t, n, r) {
function i(e) {
return e.split(/\s+/)
}
function o(e) {
return e.join(" ")
}
function a(e) {
return i(e.attr("class") || "")
}
function s(e, t) {
e.attr("class", o(t))
}
t.prototype.addClass = function(e) {
var t, n, r = a(this),
o = i(e);
for (t = 0, n; n = o[t]; t++) r.indexOf(n) === -1 && r.push(n);
return s(this, r),
this
},
t.prototype.hasClass = function(e) {
if (!e) throw new Error("[snapsvg] syntax: hasClass(clsStr)");
return a(this).indexOf(e) !== -1
},
t.prototype.removeClass = function(e) {
var t, n, r, o = a(this),
c = i(e);
for (t = 0, n; n = c[t]; t++) r = o.indexOf(n),
r !== -1 && o.splice(r, 1);
return s(this, o),
this
}
}),
r.plugin(function(e, t, n, r) {
t.prototype.translate = function(t, n) {
var r = new e.Matrix;
return r.translate(t, n),
this.transform(r)
}
}),
r.plugin(function(e) {
e.create = function(t, n) {
return e._.wrap(e._.$(t, n))
}
}),
r.plugin(function(e, t, n, r) {
e.createSnapAt = function(t, n, r) {
var i = document.createElementNS("http://www.w3.org/2000/svg", "svg");
return i.setAttribute("width", t),
i.setAttribute("height", n),
r || (r = document.body),
r.appendChild(i),
new e(i)
}
})
},
{
75 : 75
}],
77 : [function(e, t, n) {
"function" == typeof Object.create ? t.exports = function(e, t) {
e.super_ = t,
e.prototype = Object.create(t.prototype, {
constructor: {
value: e,
enumerable: !1,
writable: !0,
configurable: !0
}
})
}: t.exports = function(e, t) {
e.super_ = t;
var n = function() {};
n.prototype = t.prototype,
e.prototype = new n,
e.prototype.constructor = e
}
},
{}],
78 : [function(e, t, n) {
function r(e) {
var t = e ? e.length: 0;
return t ? e[t - 1] : void 0
}
t.exports = r
},
{}],
79 : [function(e, t, n) {
function r(e) {
if (c(e) && !s(e) && !(e instanceof i)) {
if (e instanceof o) return e;
if (p.call(e, "__chain__") && p.call(e, "__wrapped__")) return l(e)
}
return new o(e)
}
var i = e(94),
o = e(95),
a = e(126),
s = e(188),
c = e(173),
l = e(186),
u = Object.prototype,
p = u.hasOwnProperty;
r.prototype = a.prototype,
t.exports = r
},
{
126 : 126,
173 : 173,
186 : 186,
188 : 188,
94 : 94,
95 : 95
}],
80 : [function(e, t, n) {
function r(e, t, n) {
var r = s(e) ? i: a;
return n && c(e, t, n) && (t = void 0),
"function" == typeof t && void 0 === n || (t = o(t, n, 3)),
r(e, t)
}
var i = e(99),
o = e(107),
a = e(113),
s = e(188),
c = e(169);
t.exports = r
},
{
107 : 107,
113 : 113,
169 : 169,
188 : 188,
99 : 99
}],
81 : [function(e, t, n) {
function r(e, t, n) {
var r = s(e) ? i: a;
return t = o(t, n, 3),
r(e, t)
}
var i = e(100),
o = e(107),
a = e(114),
s = e(188);
t.exports = r
},
{
100 : 100,
107 : 107,
114 : 114,
188 : 188
}],
82 : [function(e, t, n) {
var r = e(112),
i = e(152),
o = i(r);
t.exports = o
},
{
112 : 112,
152 : 152
}],
83 : [function(e, t, n) {
var r = e(98),
i = e(112),
o = e(153),
a = o(r, i);
t.exports = a
},
{
112 : 112,
153 : 153,
98 : 98
}],
84 : [function(e, t, n) {
var r = e(145),
i = Object.prototype,
o = i.hasOwnProperty,
a = r(function(e, t, n) {
o.call(e, n) ? e[n].push(t) : e[n] = [t]
});
t.exports = a
},
{
145 : 145
}],
85 : [function(e, t, n) {
function r(e, t, n, r) {
var f = e ? o(e) : 0;
return c(f) || (e = u(e), f = e.length),
n = "number" != typeof n || r && s(t, n, r) ? 0 : n < 0 ? p(f + n, 0) : n || 0,
"string" == typeof e || !a(e) && l(e) ? n <= f && e.indexOf(t, n) > -1 : !!f && i(e, t, n) > -1
}
var i = e(122),
o = e(163),
a = e(188),
s = e(169),
c = e(172),
l = e(194),
u = e(204),
p = Math.max;
t.exports = r
},
{
122 : 122,
163 : 163,
169 : 169,
172 : 172,
188 : 188,
194 : 194,
204 : 204
}],
86 : [function(e, t, n) {
function r(e, t, n) {
var r = s(e) ? i: a;
return t = o(t, n, 3),
r(e, t)
}
var i = e(101),
o = e(107),
a = e(127),
s = e(188);
t.exports = r
},
{
101 : 101,
107 : 107,
127 : 127,
188 : 188
}],
87 : [function(e, t, n) {
var r = e(103),
i = e(112),
o = e(156),
a = o(r, i);
t.exports = a
},
{
103 : 103,
112 : 112,
156 : 156
}],
88 : [function(e, t, n) {
function r(e, t, n) {
var r = s(e) ? i: a;
return n && c(e, t, n) && (t = void 0),
"function" == typeof t && void 0 === n || (t = o(t, n, 3)),
r(e, t)
}
var i = e(104),
o = e(107),
a = e(137),
s = e(188),
c = e(169);
t.exports = r
},
{
104 : 104,
107 : 107,
137 : 137,
169 : 169,
188 : 188
}],
89 : [function(e, t, n) {
var r = e(165),
i = r(Date, "now"),
o = i ||
function() {
return (new Date).getTime()
};
t.exports = o
},
{
165 : 165
}],
90 : [function(e, t, n) {
var r = e(157),
i = e(181),
o = e(93),
a = 1,
s = 32,
c = o(function(e, t, n) {
var o = a;
if (n.length) {
var l = i(n, c.placeholder);
o |= s
}
return r(e, o, t, n, l)
});
c.placeholder = {},
t.exports = c
},
{
157 : 157,
181 : 181,
93 : 93
}],
91 : [function(e, t, n) {
function r(e, t, n) {
function r() {
g && clearTimeout(g),
h && clearTimeout(h),
x = 0,
h = g = v = void 0
}
function c(t, n) {
n && clearTimeout(n),
h = g = v = void 0,
t && (x = o(), d = e.apply(y, f), g || h || (f = y = void 0))
}
function l() {
var e = t - (o() - m);
e <= 0 || e > t ? c(v, h) : g = setTimeout(l, e)
}
function u() {
c(E, g)
}
function p() {
if (f = arguments, m = o(), y = this, v = E && (g || !w), b === !1) var n = w && !g;
else {
h || w || (x = m);
var r = b - (m - x),
i = r <= 0 || r > b;
i ? (h && (h = clearTimeout(h)), x = m, d = e.apply(y, f)) : h || (h = setTimeout(u, r))
}
return i && g ? g = clearTimeout(g) : g || t === b || (g = setTimeout(l, t)),
n && (i = !0, d = e.apply(y, f)),
!i || g || h || (f = y = void 0),
d
}
var f, h, d, m, y, g, v, x = 0,
b = !1,
E = !0;
if ("function" != typeof e) throw new TypeError(a);
if (t = t < 0 ? 0 : +t || 0, n === !0) {
var w = !0;
E = !1
} else i(n) && (w = !!n.leading, b = "maxWait" in n && s( + n.maxWait || 0, t), E = "trailing" in n ? !!n.trailing: E);
return p.cancel = r,
p
}
var i = e(192),
o = e(89),
a = "Expected a function",
s = Math.max;
t.exports = r
},
{
192 : 192,
89 : 89
}],
92 : [function(e, t, n) {
var r = e(110),
i = e(93),
o = i(function(e, t) {
return r(e, 1, t)
});
t.exports = o
},
{
110 : 110,
93 : 93
}],
93 : [function(e, t, n) {
function r(e, t) {
if ("function" != typeof e) throw new TypeError(i);
return t = o(void 0 === t ? e.length - 1 : +t || 0, 0),
function() {
for (var n = arguments,
r = -1,
i = o(n.length - t, 0), a = Array(i); ++r < i;) a[r] = n[t + r];
switch (t) {
case 0:
return e.call(this, a);
case 1:
return e.call(this, n[0], a);
case 2:
return e.call(this, n[0], n[1], a)
}
var s = Array(t + 1);
for (r = -1; ++r < t;) s[r] = n[r];
return s[t] = a,
e.apply(this, s)
}
}
var i = "Expected a function",
o = Math.max;
t.exports = r
},
{}],
94 : [function(e, t, n) {
function r(e) {
this.__wrapped__ = e,
this.__actions__ = [],
this.__dir__ = 1,
this.__filtered__ = !1,
this.__iteratees__ = [],
this.__takeCount__ = a,
this.__views__ = []
}
var i = e(109),
o = e(126),
a = Number.POSITIVE_INFINITY;
r.prototype = i(o.prototype),
r.prototype.constructor = r,
t.exports = r
},
{
109 : 109,
126 : 126
}],
95 : [function(e, t, n) {
function r(e, t, n) {
this.__wrapped__ = e,
this.__actions__ = n || [],
this.__chain__ = !!t
}
var i = e(109),
o = e(126);
r.prototype = i(o.prototype),
r.prototype.constructor = r,
t.exports = r
},
{
109 : 109,
126 : 126
}],
96 : [function(e, t, n) { (function(n) {
function r(e) {
var t = e ? e.length: 0;
for (this.data = {
hash: s(null),
set: new a
}; t--;) this.push(e[t])
}
var i = e(142),
o = e(165),
a = o(n, "Set"),
s = o(Object, "create");
r.prototype.push = i,
t.exports = r
}).call(this, "undefined" != typeof global ? global: "undefined" != typeof self ? self: "undefined" != typeof window ? window: {})
},
{
142 : 142,
165 : 165
}],
97 : [function(e, t, n) {
function r(e, t) {
var n = -1,
r = e.length;
for (t || (t = Array(r)); ++n < r;) t[n] = e[n];
return t
}
t.exports = r
},
{}],
98 : [function(e, t, n) {
function r(e, t) {
for (var n = -1,
r = e.length; ++n < r && t(e[n], n, e) !== !1;);
return e
}
t.exports = r
},
{}],
99 : [function(e, t, n) {
function r(e, t) {
for (var n = -1,
r = e.length; ++n < r;) if (!t(e[n], n, e)) return ! 1;
return ! 0
}
t.exports = r
},
{}],
100 : [function(e, t, n) {
function r(e, t) {
for (var n = -1,
r = e.length,
i = -1,
o = []; ++n < r;) {
var a = e[n];
t(a, n, e) && (o[++i] = a)
}
return o
}
t.exports = r
},
{}],
101 : [function(e, t, n) {
function r(e, t) {
for (var n = -1,
r = e.length,
i = Array(r); ++n < r;) i[n] = t(e[n], n, e);
return i
}
t.exports = r
},
{}],
102 : [function(e, t, n) {
function r(e, t) {
for (var n = -1,
r = t.length,
i = e.length; ++n < r;) e[i + n] = t[n];
return e
}
t.exports = r
},
{}],
103 : [function(e, t, n) {
function r(e, t, n, r) {
var i = -1,
o = e.length;
for (r && o && (n = e[++i]); ++i < o;) n = t(n, e[i], i, e);
return n
}
t.exports = r
},
{}],
104 : [function(e, t, n) {
function r(e, t) {
for (var n = -1,
r = e.length; ++n < r;) if (t(e[n], n, e)) return ! 0;
return ! 1
}
t.exports = r
},
{}],
105 : [function(e, t, n) {
function r(e, t, n) {
for (var r = -1,
o = i(t), a = o.length; ++r < a;) {
var s = o[r],
c = e[s],
l = n(c, t[s], s, e, t); (l === l ? l === c: c !== c) && (void 0 !== c || s in e) || (e[s] = l)
}
return e
}
var i = e(198);
t.exports = r
},
{
198 : 198
}],
106 : [function(e, t, n) {
function r(e, t) {
return null == t ? e: i(t, o(t), e)
}
var i = e(108),
o = e(198);
t.exports = r
},
{
108 : 108,
198 : 198
}],
107 : [function(e, t, n) {
function r(e, t, n) {
var r = typeof e;
return "function" == r ? void 0 === t ? e: a(e, t, n) : null == e ? s: "object" == r ? i(e) : void 0 === t ? c(e) : o(e, t)
}
var i = e(128),
o = e(129),
a = e(140),
s = e(205),
c = e(207);
t.exports = r
},
{
128 : 128,
129 : 129,
140 : 140,
205 : 205,
207 : 207
}],
108 : [function(e, t, n) {
function r(e, t, n) {
n || (n = {});
for (var r = -1,
i = t.length; ++r < i;) {
var o = t[r];
n[o] = e[o]
}
return n
}
t.exports = r
},
{}],
109 : [function(e, t, n) {
var r = e(192),
i = function() {
function e() {}
return function(t) {
if (r(t)) {
e.prototype = t;
var n = new e;
e.prototype = void 0
}
return n || {}
}
} ();
t.exports = i
},
{
192 : 192
}],
110 : [function(e, t, n) {
function r(e, t, n) {
if ("function" != typeof e) throw new TypeError(i);
return setTimeout(function() {
e.apply(void 0, n)
},
t)
}
var i = "Expected a function";
t.exports = r
},
{}],
111 : [function(e, t, n) {
function r(e, t) {
var n = e ? e.length: 0,
r = [];
if (!n) return r;
var c = -1,
l = i,
u = !0,
p = u && t.length >= s ? a(t) : null,
f = t.length;
p && (l = o, u = !1, t = p);
e: for (; ++c < n;) {
var h = e[c];
if (u && h === h) {
for (var d = f; d--;) if (t[d] === h) continue e;
r.push(h)
} else l(t, h, 0) < 0 && r.push(h)
}
return r
}
var i = e(122),
o = e(141),
a = e(150),
s = 200;
t.exports = r
},
{
122 : 122,
141 : 141,
150 : 150
}],
112 : [function(e, t, n) {
var r = e(120),
i = e(147),
o = i(r);
t.exports = o
},
{
120 : 120,
147 : 147
}],
113 : [function(e, t, n) {
function r(e, t) {
var n = !0;
return i(e,
function(e, r, i) {
return n = !!t(e, r, i)
}),
n
}
var i = e(112);
t.exports = r
},
{
112 : 112
}],
114 : [function(e, t, n) {
function r(e, t) {
var n = [];
return i(e,
function(e, r, i) {
t(e, r, i) && n.push(e)
}),
n
}
var i = e(112);
t.exports = r
},
{
112 : 112
}],
115 : [function(e, t, n) {
function r(e, t, n, r) {
var i;
return n(e,
function(e, n, o) {
if (t(e, n, o)) return i = r ? n: e,
!1
}),
i
}
t.exports = r
},
{}],
116 : [function(e, t, n) {
function r(e, t, n) {
for (var r = e.length,
i = n ? r: -1; n ? i--:++i < r;) if (t(e[i], i, e)) return i;
return - 1
}
t.exports = r
},
{}],
117 : [function(e, t, n) {
function r(e, t, n, l) {
l || (l = []);
for (var u = -1,
p = e.length; ++u < p;) {
var f = e[u];
c(f) && s(f) && (n || a(f) || o(f)) ? t ? r(f, t, n, l) : i(l, f) : n || (l[l.length] = f)
}
return l
}
var i = e(102),
o = e(187),
a = e(188),
s = e(167),
c = e(173);
t.exports = r
},
{
102 : 102,
167 : 167,
173 : 173,
187 : 187,
188 : 188
}],
118 : [function(e, t, n) {
var r = e(148),
i = r();
t.exports = i
},
{
148 : 148
}],
119 : [function(e, t, n) {
function r(e, t) {
return i(e, t, o)
}
var i = e(118),
o = e(199);
t.exports = r
},
{
118 : 118,
199 : 199
}],
120 : [function(e, t, n) {
function r(e, t) {
return i(e, t, o)
}
var i = e(118),
o = e(198);
t.exports = r
},
{
118 : 118,
198 : 198
}],
121 : [function(e, t, n) {
function r(e, t, n) {
if (null != e) {
void 0 !== n && n in i(e) && (t = [n]);
for (var r = 0,
o = t.length; null != e && r < o;) e = e[t[r++]];
return r && r == o ? e: void 0
}
}
var i = e(184);
t.exports = r
},
{
184 : 184
}],
122 : [function(e, t, n) {
function r(e, t, n) {
if (t !== t) return i(e, n);
for (var r = n - 1,
o = e.length; ++r < o;) if (e[r] === t) return r;
return - 1
}
var i = e(166);
t.exports = r
},
{
166 : 166
}],
123 : [function(e, t, n) {
function r(e, t, n, s, c, l) {
return e === t || (null == e || null == t || !o(e) && !a(t) ? e !== e && t !== t: i(e, t, r, n, s, c, l))
}
var i = e(124),
o = e(192),
a = e(173);
t.exports = r
},
{
124 : 124,
173 : 173,
192 : 192
}],
124 : [function(e, t, n) {
function r(e, t, n, r, f, m, y) {
var g = s(e),
v = s(t),
x = u,
b = u;
g || (x = d.call(e), x == l ? x = p: x != p && (g = c(e))),
v || (b = d.call(t), b == l ? b = p: b != p && (v = c(t)));
var E = x == p,
w = b == p,
A = x == b;
if (A && !g && !E) return o(e, t, x);
if (!f) {
var _ = E && h.call(e, "__wrapped__"),
S = w && h.call(t, "__wrapped__");
if (_ || S) return n(_ ? e.value() : e, S ? t.value() : t, r, f, m, y)
}
if (!A) return ! 1;
m || (m = []),
y || (y = []);
for (var T = m.length; T--;) if (m[T] == e) return y[T] == t;
m.push(e),
y.push(t);
var C = (g ? i: a)(e, t, n, r, f, m, y);
return m.pop(),
y.pop(),
C
}
var i = e(158),
o = e(159),
a = e(160),
s = e(188),
c = e(195),
l = "[object Arguments]",
u = "[object Array]",
p = "[object Object]",
f = Object.prototype,
h = f.hasOwnProperty,
d = f.toString;
t.exports = r
},
{
158 : 158,
159 : 159,
160 : 160,
188 : 188,
195 : 195
}],
125 : [function(e, t, n) {
function r(e, t, n) {
var r = t.length,
a = r,
s = !n;
if (null == e) return ! a;
for (e = o(e); r--;) {
var c = t[r];
if (s && c[2] ? c[1] !== e[c[0]] : !(c[0] in e)) return ! 1
}
for (; ++r < a;) {
c = t[r];
var l = c[0],
u = e[l],
p = c[1];
if (s && c[2]) {
if (void 0 === u && !(l in e)) return ! 1
} else {
var f = n ? n(u, p, l) : void 0;
if (! (void 0 === f ? i(p, u, n, !0) : f)) return ! 1
}
}
return ! 0
}
var i = e(123),
o = e(184);
t.exports = r
},
{
123 : 123,
184 : 184
}],
126 : [function(e, t, n) {
function r() {}
t.exports = r
},
{}],
127 : [function(e, t, n) {
function r(e, t) {
var n = -1,
r = o(e) ? Array(e.length) : [];
return i(e,
function(e, i, o) {
r[++n] = t(e, i, o)
}),
r
}
var i = e(112),
o = e(167);
t.exports = r
},
{
112 : 112,
167 : 167
}],
128 : [function(e, t, n) {
function r(e) {
var t = o(e);
if (1 == t.length && t[0][2]) {
var n = t[0][0],
r = t[0][1];
return function(e) {
return null != e && (e[n] === r && (void 0 !== r || n in a(e)))
}
}
return function(e) {
return i(e, t)
}
}
var i = e(125),
o = e(164),
a = e(184);
t.exports = r
},
{
125 : 125,
164 : 164,
184 : 184
}],
129 : [function(e, t, n) {
function r(e, t) {
var n = s(e),
r = c(e) && l(t),
h = e + "";
return e = f(e),
function(s) {
if (null == s) return ! 1;
var c = h;
if (s = p(s), (n || !r) && !(c in s)) {
if (s = 1 == e.length ? s: i(s, a(e, 0, -1)), null == s) return ! 1;
c = u(e),
s = p(s)
}
return s[c] === t ? void 0 !== t || c in s: o(t, s[c], void 0, !0)
}
}
var i = e(121),
o = e(123),
a = e(136),
s = e(188),
c = e(170),
l = e(174),
u = e(78),
p = e(184),
f = e(185);
t.exports = r
},
{
121 : 121,
123 : 123,
136 : 136,
170 : 170,
174 : 174,
184 : 184,
185 : 185,
188 : 188,
78 : 78
}],
130 : [function(e, t, n) {
function r(e, t, n, f, h) {
if (!c(e)) return e;
var d = s(t) && (a(t) || u(t)),
m = d ? void 0 : p(t);
return i(m || t,
function(i, a) {
if (m && (a = i, i = t[a]), l(i)) f || (f = []),
h || (h = []),
o(e, t, a, r, n, f, h);
else {
var s = e[a],
c = n ? n(s, i, a, e, t) : void 0,
u = void 0 === c;
u && (c = i),
void 0 === c && (!d || a in e) || !u && (c === c ? c === s: s !== s) || (e[a] = c)
}
}),
e
}
var i = e(98),
o = e(131),
a = e(188),
s = e(167),
c = e(192),
l = e(173),
u = e(195),
p = e(198);
t.exports = r
},
{
131 : 131,
167 : 167,
173 : 173,
188 : 188,
192 : 192,
195 : 195,
198 : 198,
98 : 98
}],
131 : [function(e, t, n) {
function r(e, t, n, r, p, f, h) {
for (var d = f.length,
m = t[n]; d--;) if (f[d] == m) return void(e[n] = h[d]);
var y = e[n],
g = p ? p(y, m, n, e, t) : void 0,
v = void 0 === g;
v && (g = m, s(m) && (a(m) || l(m)) ? g = a(y) ? y: s(y) ? i(y) : [] : c(m) || o(m) ? g = o(y) ? u(y) : c(y) ? y: {}: v = !1),
f.push(m),
h.push(g),
v ? e[n] = r(g, m, p, f, h) : (g === g ? g !== y: y === y) && (e[n] = g)
}
var i = e(97),
o = e(187),
a = e(188),
s = e(167),
c = e(193),
l = e(195),
u = e(196);
t.exports = r
},
{
167 : 167,
187 : 187,
188 : 188,
193 : 193,
195 : 195,
196 : 196,
97 : 97
}],
132 : [function(e, t, n) {
function r(e) {
return function(t) {
return null == t ? void 0 : t[e]
}
}
t.exports = r
},
{}],
133 : [function(e, t, n) {
function r(e) {
var t = e + "";
return e = o(e),
function(n) {
return i(n, e, t)
}
}
var i = e(121),
o = e(185);
t.exports = r
},
{
121 : 121,
185 : 185
}],
134 : [function(e, t, n) {
function r(e, t, n, r, i) {
return i(e,
function(e, i, o) {
n = r ? (r = !1, e) : t(n, e, i, o)
}),
n
}
t.exports = r
},
{}],
135 : [function(e, t, n) {
var r = e(205),
i = e(176),
o = i ?
function(e, t) {
return i.set(e, t),
e
}: r;
t.exports = o
},
{
176 : 176,
205 : 205
}],
136 : [function(e, t, n) {
function r(e, t, n) {
var r = -1,
i = e.length;
t = null == t ? 0 : +t || 0,
t < 0 && (t = -t > i ? 0 : i + t),
n = void 0 === n || n > i ? i: +n || 0,
n < 0 && (n += i),
i = t > n ? 0 : n - t >>> 0,
t >>>= 0;
for (var o = Array(i); ++r < i;) o[r] = e[r + t];
return o
}
t.exports = r
},
{}],
137 : [function(e, t, n) {
function r(e, t) {
var n;
return i(e,
function(e, r, i) {
return n = t(e, r, i),
!n
}),
!!n
}
var i = e(112);
t.exports = r
},
{
112 : 112
}],
138 : [function(e, t, n) {
function r(e) {
return null == e ? "": e + ""
}
t.exports = r
},
{}],
139 : [function(e, t, n) {
function r(e, t) {
for (var n = -1,
r = t.length,
i = Array(r); ++n < r;) i[n] = e[t[n]];
return i
}
t.exports = r
},
{}],
140 : [function(e, t, n) {
function r(e, t, n) {
if ("function" != typeof e) return i;
if (void 0 === t) return e;
switch (n) {
case 1:
return function(n) {
return e.call(t, n)
};
case 3:
return function(n, r, i) {
return e.call(t, n, r, i)
};
case 4:
return function(n, r, i, o) {
return e.call(t, n, r, i, o)
};
case 5:
return function(n, r, i, o, a) {
return e.call(t, n, r, i, o, a)
}
}
return function() {
return e.apply(t, arguments)
}
}
var i = e(205);
t.exports = r
},
{
205 : 205
}],
141 : [function(e, t, n) {
function r(e, t) {
var n = e.data,
r = "string" == typeof t || i(t) ? n.set.has(t) : n.hash[t];
return r ? 0 : -1
}
var i = e(192);
t.exports = r
},
{
192 : 192
}],
142 : [function(e, t, n) {
function r(e) {
var t = this.data;
"string" == typeof e || i(e) ? t.set.add(e) : t.hash[e] = !0
}
var i = e(192);
t.exports = r
},
{
192 : 192
}],
143 : [function(e, t, n) {
function r(e, t, n) {
for (var r = n.length,
o = -1,
a = i(e.length - r, 0), s = -1, c = t.length, l = Array(c + a); ++s < c;) l[s] = t[s];
for (; ++o < r;) l[n[o]] = e[o];
for (; a--;) l[s++] = e[o++];
return l
}
var i = Math.max;
t.exports = r
},
{}],
144 : [function(e, t, n) {
function r(e, t, n) {
for (var r = -1,
o = n.length,
a = -1,
s = i(e.length - o, 0), c = -1, l = t.length, u = Array(s + l); ++a < s;) u[a] = e[a];
for (var p = a; ++c < l;) u[p + c] = t[c];
for (; ++r < o;) u[p + n[r]] = e[a++];
return u
}
var i = Math.max;
t.exports = r
},
{}],
145 : [function(e, t, n) {
function r(e, t) {
return function(n, r, s) {
var c = t ? t() : {};
if (r = i(r, s, 3), a(n)) for (var l = -1,
u = n.length; ++l < u;) {
var p = n[l];
e(c, p, r(p, l, n), n)
} else o(n,
function(t, n, i) {
e(c, t, r(t, n, i), i)
});
return c
}
}
var i = e(107),
o = e(112),
a = e(188);
t.exports = r
},
{
107 : 107,
112 : 112,
188 : 188
}],
146 : [function(e, t, n) {
function r(e) {
return a(function(t, n) {
var r = -1,
a = null == t ? 0 : n.length,
s = a > 2 ? n[a - 2] : void 0,
c = a > 2 ? n[2] : void 0,
l = a > 1 ? n[a - 1] : void 0;
for ("function" == typeof s ? (s = i(s, l, 5), a -= 2) : (s = "function" == typeof l ? l: void 0, a -= s ? 1 : 0), c && o(n[0], n[1], c) && (s = a < 3 ? void 0 : s, a = 1); ++r < a;) {
var u = n[r];
u && e(t, u, s)
}
return t
})
}
var i = e(140),
o = e(169),
a = e(93);
t.exports = r
},
{
140 : 140,
169 : 169,
93 : 93
}],
147 : [function(e, t, n) {
function r(e, t) {
return function(n, r) {
var s = n ? i(n) : 0;
if (!o(s)) return e(n, r);
for (var c = t ? s: -1, l = a(n); (t ? c--:++c < s) && r(l[c], c, l) !== !1;);
return n
}
}
var i = e(163),
o = e(172),
a = e(184);
t.exports = r
},
{
163 : 163,
172 : 172,
184 : 184
}],
148 : [function(e, t, n) {
function r(e) {
return function(t, n, r) {
for (var o = i(t), a = r(t), s = a.length, c = e ? s: -1; e ? c--:++c < s;) {
var l = a[c];
if (n(o[l], l, o) === !1) break
}
return t
}
}
var i = e(184);
t.exports = r
},
{
184 : 184
}],
149 : [function(e, t, n) { (function(n) {
function r(e, t) {
function r() {
var i = this && this !== n && this instanceof r ? o: e;
return i.apply(t, arguments)
}
var o = i(e);
return r
}
var i = e(151);
t.exports = r
}).call(this, "undefined" != typeof global ? global: "undefined" != typeof self ? self: "undefined" != typeof window ? window: {})
},
{
151 : 151
}],
150 : [function(e, t, n) { (function(n) {
function r(e) {
return s && a ? new i(e) : null
}
var i = e(96),
o = e(165),
a = o(n, "Set"),
s = o(Object, "create");
t.exports = r
}).call(this, "undefined" != typeof global ? global: "undefined" != typeof self ? self: "undefined" != typeof window ? window: {})
},
{
165 : 165,
96 : 96
}],
151 : [function(e, t, n) {
function r(e) {
return function() {
var t = arguments;
switch (t.length) {
case 0:
return new e;
case 1:
return new e(t[0]);
case 2:
return new e(t[0], t[1]);
case 3:
return new e(t[0], t[1], t[2]);
case 4:
return new e(t[0], t[1], t[2], t[3]);
case 5:
return new e(t[0], t[1], t[2], t[3], t[4]);
case 6:
return new e(t[0], t[1], t[2], t[3], t[4], t[5]);
case 7:
return new e(t[0], t[1], t[2], t[3], t[4], t[5], t[6])
}
var n = i(e.prototype),
r = e.apply(n, t);
return o(r) ? r: n
}
}
var i = e(109),
o = e(192);
t.exports = r
},
{
109 : 109,
192 : 192
}],
152 : [function(e, t, n) {
function r(e, t) {
return function(n, r, c) {
if (r = i(r, c, 3), s(n)) {
var l = a(n, r, t);
return l > -1 ? n[l] : void 0
}
return o(n, r, e)
}
}
var i = e(107),
o = e(115),
a = e(116),
s = e(188);
t.exports = r
},
{
107 : 107,
115 : 115,
116 : 116,
188 : 188
}],
153 : [function(e, t, n) {
function r(e, t) {
return function(n, r, a) {
return "function" == typeof r && void 0 === a && o(n) ? e(n, r) : t(n, i(r, a, 3))
}
}
var i = e(140),
o = e(188);
t.exports = r
},
{
140 : 140,
188 : 188
}],
154 : [function(e, t, n) { (function(n) {
function r(e, t, E, w, A, _, S, T, C, R) {
function N() {
for (var d = arguments.length,
m = d,
y = Array(d); m--;) y[m] = arguments[m];
if (w && (y = o(y, w, A)), _ && (y = a(y, _, S)), k || B) {
var x = N.placeholder,
L = u(y, x);
if (d -= L.length, d < R) {
var F = T ? i(T) : void 0,
j = b(R - d, 0),
V = k ? L: void 0,
G = k ? void 0 : L,
U = k ? y: void 0,
W = k ? void 0 : y;
t |= k ? g: v,
t &= ~ (k ? v: g),
O || (t &= ~ (f | h));
var z = [e, t, E, U, V, W, G, F, C, j],
q = r.apply(void 0, z);
return c(e) && p(q, z),
q.placeholder = x,
q
}
}
var H = P ? E: this,
Y = D ? H[e] : e;
return T && (y = l(y, T)),
M && C < y.length && (y.length = C),
this && this !== n && this instanceof N && (Y = I || s(e)),
Y.apply(H, y)
}
var M = t & x,
P = t & f,
D = t & h,
k = t & m,
O = t & d,
B = t & y,
I = D ? void 0 : s(e);
return N
}
var i = e(97),
o = e(143),
a = e(144),
s = e(151),
c = e(171),
l = e(180),
u = e(181),
p = e(182),
f = 1,
h = 2,
d = 4,
m = 8,
y = 16,
g = 32,
v = 64,
x = 128,
b = Math.max;
t.exports = r
}).call(this, "undefined" != typeof global ? global: "undefined" != typeof self ? self: "undefined" != typeof window ? window: {})
},
{
143 : 143,
144 : 144,
151 : 151,
171 : 171,
180 : 180,
181 : 181,
182 : 182,
97 : 97
}],
155 : [function(e, t, n) { (function(n) {
function r(e, t, r, a) {
function s() {
for (var t = -1,
i = arguments.length,
o = -1,
u = a.length,
p = Array(u + i); ++o < u;) p[o] = a[o];
for (; i--;) p[o++] = arguments[++t];
var f = this && this !== n && this instanceof s ? l: e;
return f.apply(c ? r: this, p)
}
var c = t & o,
l = i(e);
return s
}
var i = e(151),
o = 1;
t.exports = r
}).call(this, "undefined" != typeof global ? global: "undefined" != typeof self ? self: "undefined" != typeof window ? window: {})
},
{
151 : 151
}],
156 : [function(e, t, n) {
function r(e, t) {
return function(n, r, s, c) {
var l = arguments.length < 3;
return "function" == typeof r && void 0 === c && a(n) ? e(n, r, s, l) : o(n, i(r, c, 4), s, l, t)
}
}
var i = e(107),
o = e(134),
a = e(188);
t.exports = r
},
{
107 : 107,
134 : 134,
188 : 188
}],
157 : [function(e, t, n) {
function r(e, t, n, r, g, v, x, b) {
var E = t & f;
if (!E && "function" != typeof e) throw new TypeError(m);
var w = r ? r.length: 0;
if (w || (t &= ~ (h | d), r = g = void 0), w -= g ? g.length: 0, t & d) {
var A = r,
_ = g;
r = g = void 0
}
var S = E ? void 0 : c(e),
T = [e, t, n, r, g, A, _, v, x, b];
if (S && (l(T, S), t = T[1], b = T[9]), T[9] = null == b ? E ? 0 : e.length: y(b - w, 0) || 0, t == p) var C = o(T[0], T[2]);
else C = t != h && t != (p | h) || T[4].length ? a.apply(void 0, T) : s.apply(void 0, T);
var R = S ? i: u;
return R(C, T)
}
var i = e(135),
o = e(149),
a = e(154),
s = e(155),
c = e(161),
l = e(175),
u = e(182),
p = 1,
f = 2,
h = 32,
d = 64,
m = "Expected a function",
y = Math.max;
t.exports = r
},
{
135 : 135,
149 : 149,
154 : 154,
155 : 155,
161 : 161,
175 : 175,
182 : 182
}],
158 : [function(e, t, n) {
function r(e, t, n, r, o, a, s) {
var c = -1,
l = e.length,
u = t.length;
if (l != u && !(o && u > l)) return ! 1;
for (; ++c < l;) {
var p = e[c],
f = t[c],
h = r ? r(o ? f: p, o ? p: f, c) : void 0;
if (void 0 !== h) {
if (h) continue;
return ! 1
}
if (o) {
if (!i(t,
function(e) {
return p === e || n(p, e, r, o, a, s)
})) return ! 1
} else if (p !== f && !n(p, f, r, o, a, s)) return ! 1
}
return ! 0
}
var i = e(104);
t.exports = r
},
{
104 : 104
}],
159 : [function(e, t, n) {
function r(e, t, n) {
switch (n) {
case i:
case o:
return + e == +t;
case a:
return e.name == t.name && e.message == t.message;
case s:
return e != +e ? t != +t: e == +t;
case c:
case l:
return e == t + ""
}
return ! 1
}
var i = "[object Boolean]",
o = "[object Date]",
a = "[object Error]",
s = "[object Number]",
c = "[object RegExp]",
l = "[object String]";
t.exports = r
},
{}],
160 : [function(e, t, n) {
function r(e, t, n, r, o, s, c) {
var l = i(e),
u = l.length,
p = i(t),
f = p.length;
if (u != f && !o) return ! 1;
for (var h = u; h--;) {
var d = l[h];
if (! (o ? d in t: a.call(t, d))) return ! 1
}
for (var m = o; ++h < u;) {
d = l[h];
var y = e[d],
g = t[d],
v = r ? r(o ? g: y, o ? y: g, d) : void 0;
if (! (void 0 === v ? n(y, g, r, o, s, c) : v)) return ! 1;
m || (m = "constructor" == d)
}
if (!m) {
var x = e.constructor,
b = t.constructor;
if (x != b && "constructor" in e && "constructor" in t && !("function" == typeof x && x instanceof x && "function" == typeof b && b instanceof b)) return ! 1
}
return ! 0
}
var i = e(198),
o = Object.prototype,
a = o.hasOwnProperty;
t.exports = r
},
{
198 : 198
}],
161 : [function(e, t, n) {
var r = e(176),
i = e(206),
o = r ?
function(e) {
return r.get(e)
}: i;
t.exports = o
},
{
176 : 176,
206 : 206
}],
162 : [function(e, t, n) {
function r(e) {
for (var t = e.name + "",
n = i[t], r = n ? n.length: 0; r--;) {
var o = n[r],
a = o.func;
if (null == a || a == e) return o.name
}
return t
}
var i = e(179);
t.exports = r
},
{
179 : 179
}],
163 : [function(e, t, n) {
var r = e(132),
i = r("length");
t.exports = i
},
{
132 : 132
}],
164 : [function(e, t, n) {
function r(e) {
for (var t = o(e), n = t.length; n--;) t[n][2] = i(t[n][1]);
return t
}
var i = e(174),
o = e(202);
t.exports = r
},
{
174 : 174,
202 : 202
}],
165 : [function(e, t, n) {
function r(e, t) {
var n = null == e ? void 0 : e[t];
return i(n) ? n: void 0
}
var i = e(190);
t.exports = r
},
{
190 : 190
}],
166 : [function(e, t, n) {
function r(e, t, n) {
for (var r = e.length,
i = t + (n ? 0 : -1); n ? i--:++i < r;) {
var o = e[i];
if (o !== o) return i
}
return - 1
}
t.exports = r
},
{}],
167 : [function(e, t, n) {
function r(e) {
return null != e && o(i(e))
}
var i = e(163),
o = e(172);
t.exports = r
},
{
163 : 163,
172 : 172
}],
168 : [function(e, t, n) {
function r(e, t) {
return e = "number" == typeof e || i.test(e) ? +e: -1,
t = null == t ? o: t,
e > -1 && e % 1 == 0 && e < t
}
var i = /^\d+$/,
o = 9007199254740991;
t.exports = r
},
{}],
169 : [function(e, t, n) {
function r(e, t, n) {
if (!a(n)) return ! 1;
var r = typeof t;
if ("number" == r ? i(n) && o(t, n.length) : "string" == r && t in n) {
var s = n[t];
return e === e ? e === s: s !== s
}
return ! 1
}
var i = e(167),
o = e(168),
a = e(192);
t.exports = r
},
{
167 : 167,
168 : 168,
192 : 192
}],
170 : [function(e, t, n) {
function r(e, t) {
var n = typeof e;
if ("string" == n && s.test(e) || "number" == n) return ! 0;
if (i(e)) return ! 1;
var r = !a.test(e);
return r || null != t && e in o(t)
}
var i = e(188),
o = e(184),
a = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\n\\]|\\.)*?\1)\]/,
s = /^\w*$/;
t.exports = r
},
{
184 : 184,
188 : 188
}],
171 : [function(e, t, n) {
function r(e) {
var t = a(e),
n = s[t];
if ("function" != typeof n || !(t in i.prototype)) return ! 1;
if (e === n) return ! 0;
var r = o(n);
return !! r && e === r[0]
}
var i = e(94),
o = e(161),
a = e(162),
s = e(79);
t.exports = r
},
{
161 : 161,
162 : 162,
79 : 79,
94 : 94
}],
172 : [function(e, t, n) {
function r(e) {
return "number" == typeof e && e > -1 && e % 1 == 0 && e <= i
}
var i = 9007199254740991;
t.exports = r
},
{}],
173 : [function(e, t, n) {
function r(e) {
return !! e && "object" == typeof e
}
t.exports = r
},
{}],
174 : [function(e, t, n) {
function r(e) {
return e === e && !i(e)
}
var i = e(192);
t.exports = r
},
{
192 : 192
}],
175 : [function(e, t, n) {
function r(e, t) {
var n = e[1],
r = t[1],
m = n | r,
y = m < p,
g = r == p && n == u || r == p && n == f && e[7].length <= t[8] || r == (p | f) && n == u;
if (!y && !g) return e;
r & c && (e[2] = t[2], m |= n & c ? 0 : l);
var v = t[3];
if (v) {
var x = e[3];
e[3] = x ? o(x, v, t[4]) : i(v),
e[4] = x ? s(e[3], h) : i(t[4])
}
return v = t[5],
v && (x = e[5], e[5] = x ? a(x, v, t[6]) : i(v), e[6] = x ? s(e[5], h) : i(t[6])),
v = t[7],
v && (e[7] = i(v)),
r & p && (e[8] = null == e[8] ? t[8] : d(e[8], t[8])),
null == e[9] && (e[9] = t[9]),
e[0] = t[0],
e[1] = m,
e
}
var i = e(97),
o = e(143),
a = e(144),
s = e(181),
c = 1,
l = 4,
u = 8,
p = 128,
f = 256,
h = "__lodash_placeholder__",
d = Math.min;
t.exports = r
},
{
143 : 143,
144 : 144,
181 : 181,
97 : 97
}],
176 : [function(e, t, n) { (function(n) {
var r = e(165),
i = r(n, "WeakMap"),
o = i && new i;
t.exports = o
}).call(this, "undefined" != typeof global ? global: "undefined" != typeof self ? self: "undefined" != typeof window ? window: {})
},
{
165 : 165
}],
177 : [function(e, t, n) {
function r(e, t) {
e = i(e);
for (var n = -1,
r = t.length,
o = {}; ++n < r;) {
var a = t[n];
a in e && (o[a] = e[a])
}
return o
}
var i = e(184);
t.exports = r
},
{
184 : 184
}],
178 : [function(e, t, n) {
function r(e, t) {
var n = {};
return i(e,
function(e, r, i) {
t(e, r, i) && (n[r] = e)
}),
n
}
var i = e(119);
t.exports = r
},
{
119 : 119
}],
179 : [function(e, t, n) {
var r = {};
t.exports = r
},
{}],
180 : [function(e, t, n) {
function r(e, t) {
for (var n = e.length,
r = a(t.length, n), s = i(e); r--;) {
var c = t[r];
e[r] = o(c, n) ? s[c] : void 0
}
return e
}
var i = e(97),
o = e(168),
a = Math.min;
t.exports = r
},
{
168 : 168,
97 : 97
}],
181 : [function(e, t, n) {
function r(e, t) {
for (var n = -1,
r = e.length,
o = -1,
a = []; ++n < r;) e[n] === t && (e[n] = i, a[++o] = n);
return a
}
var i = "__lodash_placeholder__";
t.exports = r
},
{}],
182 : [function(e, t, n) {
var r = e(135),
i = e(89),
o = 150,
a = 16,
s = function() {
var e = 0,
t = 0;
return function(n, s) {
var c = i(),
l = a - (c - t);
if (t = c, l > 0) {
if (++e >= o) return n
} else e = 0;
return r(n, s)
}
} ();
t.exports = s
},
{
135 : 135,
89 : 89
}],
183 : [function(e, t, n) {
function r(e) {
for (var t = c(e), n = t.length, r = n && e.length, l = !!r && s(r) && (o(e) || i(e)), p = -1, f = []; ++p < n;) {
var h = t[p]; (l && a(h, r) || u.call(e, h)) && f.push(h)
}
return f
}
var i = e(187),
o = e(188),
a = e(168),
s = e(172),
c = e(199),
l = Object.prototype,
u = l.hasOwnProperty;
t.exports = r
},
{
168 : 168,
172 : 172,
187 : 187,
188 : 188,
199 : 199
}],
184 : [function(e, t, n) {
function r(e) {
return i(e) ? e: Object(e)
}
var i = e(192);
t.exports = r
},
{
192 : 192
}],
185 : [function(e, t, n) {
function r(e) {
if (o(e)) return e;
var t = [];
return i(e).replace(a,
function(e, n, r, i) {
t.push(r ? i.replace(s, "$1") : n || e)
}),
t
}
var i = e(138),
o = e(188),
a = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\n\\]|\\.)*?)\2)\]/g,
s = /\\(\\)?/g;
t.exports = r
},
{
138 : 138,
188 : 188
}],
186 : [function(e, t, n) {
function r(e) {
return e instanceof i ? e.clone() : new o(e.__wrapped__, e.__chain__, a(e.__actions__))
}
var i = e(94),
o = e(95),
a = e(97);
t.exports = r
},
{
94 : 94,
95 : 95,
97 : 97
}],
187 : [function(e, t, n) {
function r(e) {
return o(e) && i(e) && s.call(e, "callee") && !c.call(e, "callee")
}
var i = e(167),
o = e(173),
a = Object.prototype,
s = a.hasOwnProperty,
c = a.propertyIsEnumerable;
t.exports = r
},
{
167 : 167,
173 : 173
}],
188 : [function(e, t, n) {
var r = e(165),
i = e(172),
o = e(173),
a = "[object Array]",
s = Object.prototype,
c = s.toString,
l = r(Array, "isArray"),
u = l ||
function(e) {
return o(e) && i(e.length) && c.call(e) == a
};
t.exports = u
},
{
165 : 165,
172 : 172,
173 : 173
}],
189 : [function(e, t, n) {
function r(e) {
return i(e) && s.call(e) == o
}
var i = e(192),
o = "[object Function]",
a = Object.prototype,
s = a.toString;
t.exports = r
},
{
192 : 192
}],
190 : [function(e, t, n) {
function r(e) {
return null != e && (i(e) ? u.test(c.call(e)) : o(e) && a.test(e))
}
var i = e(189),
o = e(173),
a = /^\[object .+?Constructor\]$/,
s = Object.prototype,
c = Function.prototype.toString,
l = s.hasOwnProperty,
u = RegExp("^" + c.call(l).replace(/[\\^$.*+?()[\]{}|]/g, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$");
t.exports = r
},
{
173 : 173,
189 : 189
}],
191 : [function(e, t, n) {
function r(e) {
return "number" == typeof e || i(e) && s.call(e) == o
}
var i = e(173),
o = "[object Number]",
a = Object.prototype,
s = a.toString;
t.exports = r
},
{
173 : 173
}],
192 : [function(e, t, n) {
function r(e) {
var t = typeof e;
return !! e && ("object" == t || "function" == t)
}
t.exports = r
},
{}],
193 : [function(e, t, n) {
function r(e) {
var t;
if (!a(e) || u.call(e) != s || o(e) || !l.call(e, "constructor") && (t = e.constructor, "function" == typeof t && !(t instanceof t))) return ! 1;
var n;
return i(e,
function(e, t) {
n = t
}),
void 0 === n || l.call(e, n)
}
var i = e(119),
o = e(187),
a = e(173),
s = "[object Object]",
c = Object.prototype,
l = c.hasOwnProperty,
u = c.toString;
t.exports = r
},
{
119 : 119,
173 : 173,
187 : 187
}],
194 : [function(e, t, n) {
function r(e) {
return "string" == typeof e || i(e) && s.call(e) == o
}
var i = e(173),
o = "[object String]",
a = Object.prototype,
s = a.toString;
t.exports = r
},
{
173 : 173
}],
195 : [function(e, t, n) {
function r(e) {
return o(e) && i(e.length) && !!N[P.call(e)]
}
var i = e(172),
o = e(173),
a = "[object Arguments]",
s = "[object Array]",
c = "[object Boolean]",
l = "[object Date]",
u = "[object Error]",
p = "[object Function]",
f = "[object Map]",
h = "[object Number]",
d = "[object Object]",
m = "[object RegExp]",
y = "[object Set]",
g = "[object String]",
v = "[object WeakMap]",
x = "[object ArrayBuffer]",
b = "[object Float32Array]",
E = "[object Float64Array]",
w = "[object Int8Array]",
A = "[object Int16Array]",
_ = "[object Int32Array]",
S = "[object Uint8Array]",
T = "[object Uint8ClampedArray]",
C = "[object Uint16Array]",
R = "[object Uint32Array]",
N = {};
N[b] = N[E] = N[w] = N[A] = N[_] = N[S] = N[T] = N[C] = N[R] = !0,
N[a] = N[s] = N[x] = N[c] = N[l] = N[u] = N[p] = N[f] = N[h] = N[d] = N[m] = N[y] = N[g] = N[v] = !1;
var M = Object.prototype,
P = M.toString;
t.exports = r
},
{
172 : 172,
173 : 173
}],
196 : [function(e, t, n) {
function r(e) {
return i(e, o(e))
}
var i = e(108),
o = e(199);
t.exports = r
},
{
108 : 108,
199 : 199
}],
197 : [function(e, t, n) {
var r = e(105),
i = e(106),
o = e(146),
a = o(function(e, t, n) {
return n ? r(e, t, n) : i(e, t)
});
t.exports = a
},
{
105 : 105,
106 : 106,
146 : 146
}],
198 : [function(e, t, n) {
var r = e(165),
i = e(167),
o = e(192),
a = e(183),
s = r(Object, "keys"),
c = s ?
function(e) {
var t = null == e ? void 0 : e.constructor;
return "function" == typeof t && t.prototype === e || "function" != typeof e && i(e) ? a(e) : o(e) ? s(e) : []
}: a;
t.exports = c
},
{
165 : 165,
167 : 167,
183 : 183,
192 : 192
}],
199 : [function(e, t, n) {
function r(e) {
if (null == e) return [];
c(e) || (e = Object(e));
var t = e.length;
t = t && s(t) && (o(e) || i(e)) && t || 0;
for (var n = e.constructor,
r = -1,
l = "function" == typeof n && n.prototype === e,
p = Array(t), f = t > 0; ++r < t;) p[r] = r + "";
for (var h in e) f && a(h, t) || "constructor" == h && (l || !u.call(e, h)) || p.push(h);
return p
}
var i = e(187),
o = e(188),
a = e(168),
s = e(172),
c = e(192),
l = Object.prototype,
u = l.hasOwnProperty;
t.exports = r
},
{
168 : 168,
172 : 172,
187 : 187,
188 : 188,
192 : 192
}],
200 : [function(e, t, n) {
var r = e(130),
i = e(146),
o = i(r);
t.exports = o
},
{
130 : 130,
146 : 146
}],
201 : [function(e, t, n) {
var r = e(101),
i = e(111),
o = e(117),
a = e(140),
s = e(199),
c = e(177),
l = e(178),
u = e(93),
p = u(function(e, t) {
if (null == e) return {};
if ("function" != typeof t[0]) {
var t = r(o(t), String);
return c(e, i(s(e), t))
}
var n = a(t[0], t[1], 3);
return l(e,
function(e, t, r) {
return ! n(e, t, r)
})
});
t.exports = p
},
{
101 : 101,
111 : 111,
117 : 117,
140 : 140,
177 : 177,
178 : 178,
199 : 199,
93 : 93
}],
202 : [function(e, t, n) {
function r(e) {
e = o(e);
for (var t = -1,
n = i(e), r = n.length, a = Array(r); ++t < r;) {
var s = n[t];
a[t] = [s, e[s]]
}
return a
}
var i = e(198),
o = e(184);
t.exports = r
},
{
184 : 184,
198 : 198
}],
203 : [function(e, t, n) {
var r = e(117),
i = e(140),
o = e(177),
a = e(178),
s = e(93),
c = s(function(e, t) {
return null == e ? {}: "function" == typeof t[0] ? a(e, i(t[0], t[1], 3)) : o(e, r(t))
});
t.exports = c
},
{
117 : 117,
140 : 140,
177 : 177,
178 : 178,
93 : 93
}],
204 : [function(e, t, n) {
function r(e) {
return i(e, o(e))
}
var i = e(139),
o = e(198);
t.exports = r
},
{
139 : 139,
198 : 198
}],
205 : [function(e, t, n) {
function r(e) {
return e
}
t.exports = r
},
{}],
206 : [function(e, t, n) {
function r() {}
t.exports = r
},
{}],
207 : [function(e, t, n) {
function r(e) {
return a(e) ? i(e) : o(e)
}
var i = e(132),
o = e(133),
a = e(170);
t.exports = r
},
{
132 : 132,
133 : 133,
170 : 170
}],
208 : [function(e, t, n) {
t.exports = function(e, t, n) {
return 2 == arguments.length ? e.getAttribute(t) : null === n ? e.removeAttribute(t) : (e.setAttribute(t, n), e)
}
},
{}],
209 : [function(e, t, n) {
t.exports = e(216)
},
{
216 : 216
}],
210 : [function(e, t, n) {
t.exports = function(e) {
for (var t; e.childNodes.length;) t = e.childNodes[0],
e.removeChild(t);
return e
}
},
{}],
211 : [function(e, t, n) {
t.exports = e(219)
},
{
219 : 219
}],
212 : [function(e, t, n) {
t.exports = e(223)
},
{
223 : 223
}],
213 : [function(e, t, n) {
t.exports = e(220)
},
{
220 : 220
}],
214 : [function(e, t, n) {
t.exports = e(222)
},
{
222 : 222
}],
215 : [function(e, t, n) {
t.exports = function(e) {
e.parentNode && e.parentNode.removeChild(e)
}
},
{}],
216 : [function(e, t, n) {
function r(e) {
if (!e || !e.nodeType) throw new Error("A DOM element reference is required");
this.el = e,
this.list = e.classList
}
try {
var i = e(217)
} catch(t) {
var i = e(217)
}
var o = /\s+/,
a = Object.prototype.toString;
t.exports = function(e) {
return new r(e)
},
r.prototype.add = function(e) {
if (this.list) return this.list.add(e),
this;
var t = this.array(),
n = i(t, e);
return~n || t.push(e),
this.el.className = t.join(" "),
this
},
r.prototype.remove = function(e) {
if ("[object RegExp]" == a.call(e)) return this.removeMatching(e);
if (this.list) return this.list.remove(e),
this;
var t = this.array(),
n = i(t, e);
return~n && t.splice(n, 1),
this.el.className = t.join(" "),
this
},
r.prototype.removeMatching = function(e) {
for (var t = this.array(), n = 0; n < t.length; n++) e.test(t[n]) && this.remove(t[n]);
return this
},
r.prototype.toggle = function(e, t) {
return this.list ? ("undefined" != typeof t ? t !== this.list.toggle(e, t) && this.list.toggle(e) : this.list.toggle(e), this) : ("undefined" != typeof t ? t ? this.add(e) : this.remove(e) : this.has(e) ? this.remove(e) : this.add(e), this)
},
r.prototype.array = function() {
var e = this.el.getAttribute("class") || "",
t = e.replace(/^\s+|\s+$/g, ""),
n = t.split(o);
return "" === n[0] && n.shift(),
n
},
r.prototype.has = r.prototype.contains = function(e) {
return this.list ? this.list.contains(e) : !!~i(this.array(), e)
}
},
{
217 : 217
}],
217 : [function(e, t, n) {
t.exports = function(e, t) {
if (e.indexOf) return e.indexOf(t);
for (var n = 0; n < e.length; ++n) if (e[n] === t) return n;
return - 1
}
},
{}],
218 : [function(e, t, n) {
var r = e(221);
t.exports = function(e, t, n, i) {
for (e = n ? {
parentNode: e
}: e, i = i || document; (e = e.parentNode) && e !== document;) {
if (r(e, t)) return e;
if (e === i) return
}
}
},
{
221 : 221
}],
219 : [function(e, t, n) {
try {
var r = e(218)
} catch(t) {
var r = e(218)
}
try {
var i = e(220)
} catch(t) {
var i = e(220)
}
n.bind = function(e, t, n, o, a) {
return i.bind(e, n,
function(n) {
var i = n.target || n.srcElement;
n.delegateTarget = r(i, t, !0, e),
n.delegateTarget && o.call(e, n)
},
a)
},
n.unbind = function(e, t, n, r) {
i.unbind(e, t, n, r)
}
},
{
218 : 218,
220 : 220
}],
220 : [function(e, t, n) {
var r = window.addEventListener ? "addEventListener": "attachEvent",
i = window.removeEventListener ? "removeEventListener": "detachEvent",
o = "addEventListener" !== r ? "on": "";
n.bind = function(e, t, n, i) {
return e[r](o + t, n, i || !1),
n
},
n.unbind = function(e, t, n, r) {
return e[i](o + t, n, r || !1),
n
}
},
{}],
221 : [function(e, t, n) {
function r(e, t) {
if (!e || 1 !== e.nodeType) return ! 1;
if (a) return a.call(e, t);
for (var n = i.all(t, e.parentNode), r = 0; r < n.length; ++r) if (n[r] == e) return ! 0;
return ! 1
}
try {
var i = e(222)
} catch(t) {
var i = e(222)
}
var o = Element.prototype,
a = o.matches || o.webkitMatchesSelector || o.mozMatchesSelector || o.msMatchesSelector || o.oMatchesSelector;
t.exports = r
},
{
222 : 222
}],
222 : [function(e, t, n) {
function r(e, t) {
return t.querySelector(e)
}
n = t.exports = function(e, t) {
return t = t || document,
r(e, t)
},
n.all = function(e, t) {
return t = t || document,
t.querySelectorAll(e)
},
n.engine = function(e) {
if (!e.one) throw new Error(".one callback required");
if (!e.all) throw new Error(".all callback required");
return r = e.one,
n.all = e.all,
n
}
},
{}],
223 : [function(e, t, n) {
function r(e, t) {
if ("string" != typeof e) throw new TypeError("String expected");
t || (t = document);
var n = /<([\w:]+)/.exec(e);
if (!n) return t.createTextNode(e);
e = e.replace(/^\s+|\s+$/g, "");
var r = n[1];
if ("body" == r) {
var i = t.createElement("html");
return i.innerHTML = e,
i.removeChild(i.lastChild)
}
var o = a[r] || a._default,
s = o[0],
c = o[1],
l = o[2],
i = t.createElement("div");
for (i.innerHTML = c + e + l; s--;) i = i.lastChild;
if (i.firstChild == i.lastChild) return i.removeChild(i.firstChild);
for (var u = t.createDocumentFragment(); i.firstChild;) u.appendChild(i.removeChild(i.firstChild));
return u
}
t.exports = r;
var i, o = !1;
"undefined" != typeof document && (i = document.createElement("div"), i.innerHTML = '
a', o = !i.getElementsByTagName("link").length, i = void 0);
var a = {
legend: [1, ""],
tr: [2, "