KUJUNTI.ID MINISH3LL
Path : /var/www/html/mini-moneyexchange/public/assets/libs/chart/
(S)h3ll Cr3at0r :
F!le Upl0ad :

B-Con CMD Config cPanel C-Rdp D-Log Info Jump Mass Ransom Symlink vHost Zone-H

Current File : /var/www/html/mini-moneyexchange/public/assets/libs/chart/jquery.flot.min.js


/* Javascript plotting library for jQuery, v. 0.7.
 *
 * Released under the MIT license by IOLA, December 2007.
 *
 */
(function (b) {
  b.color = {};
  b.color.make = function (d, e, g, f) {
    var c = {};
    c.r = d || 0;
    c.g = e || 0;
    c.b = g || 0;
    c.a = f != null ? f : 1;
    c.add = function (h, j) {
      for (var k = 0; k < h.length; ++k) {
        c[h.charAt(k)] += j;
      }
      return c.normalize();
    };
    c.scale = function (h, j) {
      for (var k = 0; k < h.length; ++k) {
        c[h.charAt(k)] *= j;
      }
      return c.normalize();
    };
    c.toString = function () {
      if (c.a >= 1) {
        return "rgb(" + [c.r, c.g, c.b].join(",") + ")";
      } else {
        return "rgba(" + [c.r, c.g, c.b, c.a].join(",") + ")";
      }
    };
    c.normalize = function () {
      function h(k, j, l) {
        return j < k ? k : j > l ? l : j;
      }
      c.r = h(0, parseInt(c.r), 255);
      c.g = h(0, parseInt(c.g), 255);
      c.b = h(0, parseInt(c.b), 255);
      c.a = h(0, c.a, 1);
      return c;
    };
    c.clone = function () {
      return b.color.make(c.r, c.b, c.g, c.a);
    };
    return c.normalize();
  };
  b.color.extract = function (d, e) {
    var c;
    do {
      c = d.css(e).toLowerCase();
      if (c != "" && c != "transparent") {
        break;
      }
      d = d.parent();
    } while (!b.nodeName(d.get(0), "body"));
    if (c == "rgba(0, 0, 0, 0)") {
      c = "transparent";
    }
    return b.color.parse(c);
  };
  b.color.parse = function (c) {
    var d,
      f = b.color.make;
    if (
      (d =
        /rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(
          c
        ))
    ) {
      return f(parseInt(d[1], 10), parseInt(d[2], 10), parseInt(d[3], 10));
    }
    if (
      (d =
        /rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(
          c
        ))
    ) {
      return f(
        parseInt(d[1], 10),
        parseInt(d[2], 10),
        parseInt(d[3], 10),
        parseFloat(d[4])
      );
    }
    if (
      (d =
        /rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(
          c
        ))
    ) {
      return f(
        parseFloat(d[1]) * 2.55,
        parseFloat(d[2]) * 2.55,
        parseFloat(d[3]) * 2.55
      );
    }
    if (
      (d =
        /rgba\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(
          c
        ))
    ) {
      return f(
        parseFloat(d[1]) * 2.55,
        parseFloat(d[2]) * 2.55,
        parseFloat(d[3]) * 2.55,
        parseFloat(d[4])
      );
    }
    if ((d = /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(c))) {
      return f(parseInt(d[1], 16), parseInt(d[2], 16), parseInt(d[3], 16));
    }
    if ((d = /#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(c))) {
      return f(
        parseInt(d[1] + d[1], 16),
        parseInt(d[2] + d[2], 16),
        parseInt(d[3] + d[3], 16)
      );
    }
    var e = b.trim(c).toLowerCase();
    if (e == "transparent") {
      return f(255, 255, 255, 0);
    } else {
      d = a[e] || [0, 0, 0];
      return f(d[0], d[1], d[2]);
    }
  };
  var a = {
    aqua: [0, 255, 255],
    azure: [240, 255, 255],
    beige: [245, 245, 220],
    black: [0, 0, 0],
    blue: [0, 0, 255],
    brown: [165, 42, 42],
    cyan: [0, 255, 255],
    darkblue: [0, 0, 139],
    darkcyan: [0, 139, 139],
    darkgrey: [169, 169, 169],
    darkgreen: [0, 100, 0],
    darkkhaki: [189, 183, 107],
    darkmagenta: [139, 0, 139],
    darkolivegreen: [85, 107, 47],
    darkorange: [255, 140, 0],
    darkorchid: [153, 50, 204],
    darkred: [139, 0, 0],
    darksalmon: [233, 150, 122],
    darkviolet: [148, 0, 211],
    fuchsia: [255, 0, 255],
    gold: [255, 215, 0],
    green: [0, 128, 0],
    indigo: [75, 0, 130],
    khaki: [240, 230, 140],
    lightblue: [173, 216, 230],
    lightcyan: [224, 255, 255],
    lightgreen: [144, 238, 144],
    lightgrey: [211, 211, 211],
    lightpink: [255, 182, 193],
    lightyellow: [255, 255, 224],
    lime: [0, 255, 0],
    magenta: [255, 0, 255],
    maroon: [128, 0, 0],
    navy: [0, 0, 128],
    olive: [128, 128, 0],
    orange: [255, 165, 0],
    pink: [255, 192, 203],
    purple: [128, 0, 128],
    violet: [128, 0, 128],
    red: [255, 0, 0],
    silver: [192, 192, 192],
    white: [255, 255, 255],
    yellow: [255, 255, 0],
  };
})(jQuery);
(function (c) {
  function b(av, ai, J, af) {
    var Q = [],
      O = {
        colors: ["#488c13", "#da4b0f", "#e9b104", "#97080e", "#1b55c0"],
        legend: {
          show: true,
          noColumns: 1,
          labelFormatter: null,
          labelBoxBorderColor: "#ccc",
          container: null,
          position: "ne",
          margin: 5,
          backgroundColor: null,
          backgroundOpacity: 0.85,
        },
        xaxis: {
          show: null,
          position: "bottom",
          mode: null,
          color: null,
          tickColor: null,
          transform: null,
          inverseTransform: null,
          min: null,
          max: null,
          autoscaleMargin: null,
          ticks: null,
          tickFormatter: null,
          labelWidth: null,
          labelHeight: null,
          reserveSpace: null,
          tickLength: null,
          alignTicksWithAxis: null,
          tickDecimals: null,
          tickSize: null,
          minTickSize: null,
          monthNames: null,
          timeformat: null,
          twelveHourClock: false,
        },
        yaxis: { autoscaleMargin: 0.02, position: "left" },
        xaxes: [],
        yaxes: [],
        series: {
          points: {
            show: false,
            radius: 3,
            lineWidth: 2,
            fill: true,
            fillColor: "#ffffff",
            symbol: "circle",
          },
          lines: { lineWidth: 2, fill: false, fillColor: null, steps: false },
          bars: {
            show: false,
            lineWidth: 2,
            barWidth: 1,
            fill: true,
            fillColor: null,
            align: "left",
            horizontal: false,
          },
          shadowSize: 3,
        },
        grid: {
          show: true,
          aboveData: false,
          color: "#545454",
          backgroundColor: null,
          borderColor: "#cdcdcd",
          tickColor: "#ebebeb",
          labelMargin: 5,
          axisMargin: 8,
          borderWidth: 1,
          minBorderMargin: null,
          markings: null,
          markingsColor: "#f4f4f4",
          markingsLineWidth: 2,
          clickable: false,
          hoverable: false,
          autoHighlight: true,
          mouseActiveRadius: 10,
        },
        hooks: {},
      },
      az = null,
      ad = null,
      y = null,
      H = null,
      A = null,
      p = [],
      aw = [],
      q = { left: 0, right: 0, top: 0, bottom: 0 },
      G = 0,
      I = 0,
      h = 0,
      w = 0,
      ak = {
        processOptions: [],
        processRawData: [],
        processDatapoints: [],
        drawSeries: [],
        draw: [],
        bindEvents: [],
        drawOverlay: [],
        shutdown: [],
      },
      aq = this;
    aq.setData = aj;
    aq.setupGrid = t;
    aq.draw = W;
    aq.getPlaceholder = function () {
      return av;
    };
    aq.getCanvas = function () {
      return az;
    };
    aq.getPlotOffset = function () {
      return q;
    };
    aq.width = function () {
      return h;
    };
    aq.height = function () {
      return w;
    };
    aq.offset = function () {
      var aB = y.offset();
      aB.left += q.left;
      aB.top += q.top;
      return aB;
    };
    aq.getData = function () {
      return Q;
    };
    aq.getAxes = function () {
      var aC = {},
        aB;
      c.each(p.concat(aw), function (aD, aE) {
        if (aE) {
          aC[aE.direction + (aE.n != 1 ? aE.n : "") + "axis"] = aE;
        }
      });
      return aC;
    };
    aq.getXAxes = function () {
      return p;
    };
    aq.getYAxes = function () {
      return aw;
    };
    aq.c2p = C;
    aq.p2c = ar;
    aq.getOptions = function () {
      return O;
    };
    aq.highlight = x;
    aq.unhighlight = T;
    aq.triggerRedrawOverlay = f;
    aq.pointOffset = function (aB) {
      return {
        left: parseInt(p[aA(aB, "x") - 1].p2c(+aB.x) + q.left),
        top: parseInt(aw[aA(aB, "y") - 1].p2c(+aB.y) + q.top),
      };
    };
    aq.shutdown = ag;
    aq.resize = function () {
      B();
      g(az);
      g(ad);
    };
    aq.hooks = ak;
    F(aq);
    Z(J);
    X();
    aj(ai);
    t();
    W();
    ah();

    function an(aD, aB) {
      aB = [aq].concat(aB);
      for (var aC = 0; aC < aD.length; ++aC) {
        aD[aC].apply(this, aB);
      }
    }

    function F() {
      for (var aB = 0; aB < af.length; ++aB) {
        var aC = af[aB];
        aC.init(aq);
        if (aC.options) {
          c.extend(true, O, aC.options);
        }
      }
    }

    function Z(aC) {
      var aB;
      c.extend(true, O, aC);
      if (O.xaxis.color == null) {
        O.xaxis.color = O.grid.color;
      }
      if (O.yaxis.color == null) {
        O.yaxis.color = O.grid.color;
      }
      if (O.xaxis.tickColor == null) {
        O.xaxis.tickColor = O.grid.tickColor;
      }
      if (O.yaxis.tickColor == null) {
        O.yaxis.tickColor = O.grid.tickColor;
      }
      if (O.grid.borderColor == null) {
        O.grid.borderColor = O.grid.color;
      }
      if (O.grid.tickColor == null) {
        O.grid.tickColor = c.color
          .parse(O.grid.color)
          .scale("a", 0.22)
          .toString();
      }
      for (aB = 0; aB < Math.max(1, O.xaxes.length); ++aB) {
        O.xaxes[aB] = c.extend(true, {}, O.xaxis, O.xaxes[aB]);
      }
      for (aB = 0; aB < Math.max(1, O.yaxes.length); ++aB) {
        O.yaxes[aB] = c.extend(true, {}, O.yaxis, O.yaxes[aB]);
      }
      if (O.xaxis.noTicks && O.xaxis.ticks == null) {
        O.xaxis.ticks = O.xaxis.noTicks;
      }
      if (O.yaxis.noTicks && O.yaxis.ticks == null) {
        O.yaxis.ticks = O.yaxis.noTicks;
      }
      if (O.x2axis) {
        O.xaxes[1] = c.extend(true, {}, O.xaxis, O.x2axis);
        O.xaxes[1].position = "top";
      }
      if (O.y2axis) {
        O.yaxes[1] = c.extend(true, {}, O.yaxis, O.y2axis);
        O.yaxes[1].position = "right";
      }
      if (O.grid.coloredAreas) {
        O.grid.markings = O.grid.coloredAreas;
      }
      if (O.grid.coloredAreasColor) {
        O.grid.markingsColor = O.grid.coloredAreasColor;
      }
      if (O.lines) {
        c.extend(true, O.series.lines, O.lines);
      }
      if (O.points) {
        c.extend(true, O.series.points, O.points);
      }
      if (O.bars) {
        c.extend(true, O.series.bars, O.bars);
      }
      if (O.shadowSize != null) {
        O.series.shadowSize = O.shadowSize;
      }
      for (aB = 0; aB < O.xaxes.length; ++aB) {
        V(p, aB + 1).options = O.xaxes[aB];
      }
      for (aB = 0; aB < O.yaxes.length; ++aB) {
        V(aw, aB + 1).options = O.yaxes[aB];
      }
      for (var aD in ak) {
        if (O.hooks[aD] && O.hooks[aD].length) {
          ak[aD] = ak[aD].concat(O.hooks[aD]);
        }
      }
      an(ak.processOptions, [O]);
    }

    function aj(aB) {
      Q = Y(aB);
      ax();
      z();
    }

    function Y(aE) {
      var aC = [];
      for (var aB = 0; aB < aE.length; ++aB) {
        var aD = c.extend(true, {}, O.series);
        if (aE[aB].data != null) {
          aD.data = aE[aB].data;
          delete aE[aB].data;
          c.extend(true, aD, aE[aB]);
          aE[aB].data = aD.data;
        } else {
          aD.data = aE[aB];
        }
        aC.push(aD);
      }
      return aC;
    }

    function aA(aC, aD) {
      var aB = aC[aD + "axis"];
      if (typeof aB == "object") {
        aB = aB.n;
      }
      if (typeof aB != "number") {
        aB = 1;
      }
      return aB;
    }

    function m() {
      return c.grep(p.concat(aw), function (aB) {
        return aB;
      });
    }

    function C(aE) {
      var aC = {},
        aB,
        aD;
      for (aB = 0; aB < p.length; ++aB) {
        aD = p[aB];
        if (aD && aD.used) {
          aC["x" + aD.n] = aD.c2p(aE.left);
        }
      }
      for (aB = 0; aB < aw.length; ++aB) {
        aD = aw[aB];
        if (aD && aD.used) {
          aC["y" + aD.n] = aD.c2p(aE.top);
        }
      }
      if (aC.x1 !== undefined) {
        aC.x = aC.x1;
      }
      if (aC.y1 !== undefined) {
        aC.y = aC.y1;
      }
      return aC;
    }

    function ar(aF) {
      var aD = {},
        aC,
        aE,
        aB;
      for (aC = 0; aC < p.length; ++aC) {
        aE = p[aC];
        if (aE && aE.used) {
          aB = "x" + aE.n;
          if (aF[aB] == null && aE.n == 1) {
            aB = "x";
          }
          if (aF[aB] != null) {
            aD.left = aE.p2c(aF[aB]);
            break;
          }
        }
      }
      for (aC = 0; aC < aw.length; ++aC) {
        aE = aw[aC];
        if (aE && aE.used) {
          aB = "y" + aE.n;
          if (aF[aB] == null && aE.n == 1) {
            aB = "y";
          }
          if (aF[aB] != null) {
            aD.top = aE.p2c(aF[aB]);
            break;
          }
        }
      }
      return aD;
    }

    function V(aC, aB) {
      if (!aC[aB - 1]) {
        aC[aB - 1] = {
          n: aB,
          direction: aC == p ? "x" : "y",
          options: c.extend(true, {}, aC == p ? O.xaxis : O.yaxis),
        };
      }
      return aC[aB - 1];
    }

    function ax() {
      var aG;
      var aM = Q.length,
        aB = [],
        aE = [];
      for (aG = 0; aG < Q.length; ++aG) {
        var aJ = Q[aG].color;
        if (aJ != null) {
          --aM;
          if (typeof aJ == "number") {
            aE.push(aJ);
          } else {
            aB.push(c.color.parse(Q[aG].color));
          }
        }
      }
      for (aG = 0; aG < aE.length; ++aG) {
        aM = Math.max(aM, aE[aG] + 1);
      }
      var aC = [],
        aF = 0;
      aG = 0;
      while (aC.length < aM) {
        var aI;
        if (O.colors.length == aG) {
          aI = c.color.make(100, 100, 100);
        } else {
          aI = c.color.parse(O.colors[aG]);
        }
        var aD = aF % 2 == 1 ? -1 : 1;
        aI.scale("rgb", 1 + aD * Math.ceil(aF / 2) * 0.2);
        aC.push(aI);
        ++aG;
        if (aG >= O.colors.length) {
          aG = 0;
          ++aF;
        }
      }
      var aH = 0,
        aN;
      for (aG = 0; aG < Q.length; ++aG) {
        aN = Q[aG];
        if (aN.color == null) {
          aN.color = aC[aH].toString();
          ++aH;
        } else {
          if (typeof aN.color == "number") {
            aN.color = aC[aN.color].toString();
          }
        }
        if (aN.lines.show == null) {
          var aL,
            aK = true;
          for (aL in aN) {
            if (aN[aL] && aN[aL].show) {
              aK = false;
              break;
            }
          }
          if (aK) {
            aN.lines.show = true;
          }
        }
        aN.xaxis = V(p, aA(aN, "x"));
        aN.yaxis = V(aw, aA(aN, "y"));
      }
    }

    function z() {
      var aO = Number.POSITIVE_INFINITY,
        aI = Number.NEGATIVE_INFINITY,
        aB = Number.MAX_VALUE,
        aU,
        aS,
        aR,
        aN,
        aD,
        aJ,
        aT,
        aP,
        aH,
        aG,
        aC,
        a0,
        aX,
        aL;

      function aF(a3, a2, a1) {
        if (a2 < a3.datamin && a2 != -aB) {
          a3.datamin = a2;
        }
        if (a1 > a3.datamax && a1 != aB) {
          a3.datamax = a1;
        }
      }
      c.each(m(), function (a1, a2) {
        a2.datamin = aO;
        a2.datamax = aI;
        a2.used = false;
      });
      for (aU = 0; aU < Q.length; ++aU) {
        aJ = Q[aU];
        aJ.datapoints = { points: [] };
        an(ak.processRawData, [aJ, aJ.data, aJ.datapoints]);
      }
      for (aU = 0; aU < Q.length; ++aU) {
        aJ = Q[aU];
        var aZ = aJ.data,
          aW = aJ.datapoints.format;
        if (!aW) {
          aW = [];
          aW.push({ x: true, number: true, required: true });
          aW.push({ y: true, number: true, required: true });
          if (aJ.bars.show || (aJ.lines.show && aJ.lines.fill)) {
            aW.push({
              y: true,
              number: true,
              required: false,
              defaultValue: 0,
            });
            if (aJ.bars.horizontal) {
              delete aW[aW.length - 1].y;
              aW[aW.length - 1].x = true;
            }
          }
          aJ.datapoints.format = aW;
        }
        if (aJ.datapoints.pointsize != null) {
          continue;
        }
        aJ.datapoints.pointsize = aW.length;
        aP = aJ.datapoints.pointsize;
        aT = aJ.datapoints.points;
        insertSteps = aJ.lines.show && aJ.lines.steps;
        aJ.xaxis.used = aJ.yaxis.used = true;
        for (aS = aR = 0; aS < aZ.length; ++aS, aR += aP) {
          aL = aZ[aS];
          var aE = aL == null;
          if (!aE) {
            for (aN = 0; aN < aP; ++aN) {
              a0 = aL[aN];
              aX = aW[aN];
              if (aX) {
                if (aX.number && a0 != null) {
                  a0 = +a0;
                  if (isNaN(a0)) {
                    a0 = null;
                  } else {
                    if (a0 == Infinity) {
                      a0 = aB;
                    } else {
                      if (a0 == -Infinity) {
                        a0 = -aB;
                      }
                    }
                  }
                }
                if (a0 == null) {
                  if (aX.required) {
                    aE = true;
                  }
                  if (aX.defaultValue != null) {
                    a0 = aX.defaultValue;
                  }
                }
              }
              aT[aR + aN] = a0;
            }
          }
          if (aE) {
            for (aN = 0; aN < aP; ++aN) {
              a0 = aT[aR + aN];
              if (a0 != null) {
                aX = aW[aN];
                if (aX.x) {
                  aF(aJ.xaxis, a0, a0);
                }
                if (aX.y) {
                  aF(aJ.yaxis, a0, a0);
                }
              }
              aT[aR + aN] = null;
            }
          } else {
            if (
              insertSteps &&
              aR > 0 &&
              aT[aR - aP] != null &&
              aT[aR - aP] != aT[aR] &&
              aT[aR - aP + 1] != aT[aR + 1]
            ) {
              for (aN = 0; aN < aP; ++aN) {
                aT[aR + aP + aN] = aT[aR + aN];
              }
              aT[aR + 1] = aT[aR - aP + 1];
              aR += aP;
            }
          }
        }
      }
      for (aU = 0; aU < Q.length; ++aU) {
        aJ = Q[aU];
        an(ak.processDatapoints, [aJ, aJ.datapoints]);
      }
      for (aU = 0; aU < Q.length; ++aU) {
        aJ = Q[aU];
        (aT = aJ.datapoints.points), (aP = aJ.datapoints.pointsize);
        var aK = aO,
          aQ = aO,
          aM = aI,
          aV = aI;
        for (aS = 0; aS < aT.length; aS += aP) {
          if (aT[aS] == null) {
            continue;
          }
          for (aN = 0; aN < aP; ++aN) {
            a0 = aT[aS + aN];
            aX = aW[aN];
            if (!aX || a0 == aB || a0 == -aB) {
              continue;
            }
            if (aX.x) {
              if (a0 < aK) {
                aK = a0;
              }
              if (a0 > aM) {
                aM = a0;
              }
            }
            if (aX.y) {
              if (a0 < aQ) {
                aQ = a0;
              }
              if (a0 > aV) {
                aV = a0;
              }
            }
          }
        }
        if (aJ.bars.show) {
          var aY = aJ.bars.align == "left" ? 0 : -aJ.bars.barWidth / 2;
          if (aJ.bars.horizontal) {
            aQ += aY;
            aV += aY + aJ.bars.barWidth;
          } else {
            aK += aY;
            aM += aY + aJ.bars.barWidth;
          }
        }
        aF(aJ.xaxis, aK, aM);
        aF(aJ.yaxis, aQ, aV);
      }
      c.each(m(), function (a1, a2) {
        if (a2.datamin == aO) {
          a2.datamin = null;
        }
        if (a2.datamax == aI) {
          a2.datamax = null;
        }
      });
    }

    function j(aB, aC) {
      var aD = document.createElement("canvas");
      aD.className = aC;
      aD.width = G;
      aD.height = I;
      if (!aB) {
        c(aD).css({ position: "absolute", left: 0, top: 0 });
      }
      c(aD).appendTo(av);
      if (!aD.getContext) {
        aD = window.G_vmlCanvasManager.initElement(aD);
      }
      aD.getContext("2d").save();
      return aD;
    }

    function B() {
      G = av.width();
      I = av.height();
      if (G <= 0 || I <= 0) {
        throw "Invalid dimensions for plot, width = " + G + ", height = " + I;
      }
    }

    function g(aC) {
      if (aC.width != G) {
        aC.width = G;
      }
      if (aC.height != I) {
        aC.height = I;
      }
      var aB = aC.getContext("2d");
      aB.restore();
      aB.save();
    }

    function X() {
      var aC,
        aB = av.children("canvas.base"),
        aD = av.children("canvas.overlay");
      if (aB.length == 0 || aD == 0) {
        av.html("");
        av.css({ padding: 0 });
        if (av.css("position") == "static") {
          av.css("position", "relative");
        }
        B();
        az = j(true, "base");
        ad = j(false, "overlay");
        aC = false;
      } else {
        az = aB.get(0);
        ad = aD.get(0);
        aC = true;
      }
      H = az.getContext("2d");
      A = ad.getContext("2d");
      y = c([ad, az]);
      if (aC) {
        av.data("plot").shutdown();
        aq.resize();
        A.clearRect(0, 0, G, I);
        y.unbind();
        av.children().not([az, ad]).remove();
      }
      av.data("plot", aq);
    }

    function ah() {
      if (O.grid.hoverable) {
        y.mousemove(aa);
        y.mouseleave(l);
      }
      if (O.grid.clickable) {
        y.click(R);
      }
      an(ak.bindEvents, [y]);
    }

    function ag() {
      if (M) {
        clearTimeout(M);
      }
      y.unbind("mousemove", aa);
      y.unbind("mouseleave", l);
      y.unbind("click", R);
      an(ak.shutdown, [y]);
    }

    function r(aG) {
      function aC(aH) {
        return aH;
      }
      var aF,
        aB,
        aD = aG.options.transform || aC,
        aE = aG.options.inverseTransform;
      if (aG.direction == "x") {
        aF = aG.scale = h / Math.abs(aD(aG.max) - aD(aG.min));
        aB = Math.min(aD(aG.max), aD(aG.min));
      } else {
        aF = aG.scale = w / Math.abs(aD(aG.max) - aD(aG.min));
        aF = -aF;
        aB = Math.max(aD(aG.max), aD(aG.min));
      }
      if (aD == aC) {
        aG.p2c = function (aH) {
          return (aH - aB) * aF;
        };
      } else {
        aG.p2c = function (aH) {
          return (aD(aH) - aB) * aF;
        };
      }
      if (!aE) {
        aG.c2p = function (aH) {
          return aB + aH / aF;
        };
      } else {
        aG.c2p = function (aH) {
          return aE(aB + aH / aF);
        };
      }
    }

    function L(aD) {
      var aB = aD.options,
        aF,
        aJ = aD.ticks || [],
        aI = [],
        aE,
        aK = aB.labelWidth,
        aG = aB.labelHeight,
        aC;

      function aH(aM, aL) {
        return c(
          '<div style="position:absolute;top:-10000px;' +
            aL +
            'font-size:smaller"><div class="' +
            aD.direction +
            "Axis " +
            aD.direction +
            aD.n +
            'Axis">' +
            aM.join("") +
            "</div></div>"
        ).appendTo(av);
      }
      if (aD.direction == "x") {
        if (aK == null) {
          aK = Math.floor(G / (aJ.length > 0 ? aJ.length : 1));
        }
        if (aG == null) {
          aI = [];
          for (aF = 0; aF < aJ.length; ++aF) {
            aE = aJ[aF].label;
            if (aE) {
              aI.push(
                '<div class="tickLabel" style="float:left;width:' +
                  aK +
                  'px">' +
                  aE +
                  "</div>"
              );
            }
          }
          if (aI.length > 0) {
            aI.push('<div style="clear:left"></div>');
            aC = aH(aI, "width:10000px;");
            aG = aC.height();
            aC.remove();
          }
        }
      } else {
        if (aK == null || aG == null) {
          for (aF = 0; aF < aJ.length; ++aF) {
            aE = aJ[aF].label;
            if (aE) {
              aI.push('<div class="tickLabel">' + aE + "</div>");
            }
          }
          if (aI.length > 0) {
            aC = aH(aI, "");
            if (aK == null) {
              aK = aC.children().width();
            }
            if (aG == null) {
              aG = aC.find("div.tickLabel").height();
            }
            aC.remove();
          }
        }
      }
      if (aK == null) {
        aK = 0;
      }
      if (aG == null) {
        aG = 0;
      }
      aD.labelWidth = aK;
      aD.labelHeight = aG;
    }

    function au(aD) {
      var aC = aD.labelWidth,
        aL = aD.labelHeight,
        aH = aD.options.position,
        aF = aD.options.tickLength,
        aG = O.grid.axisMargin,
        aJ = O.grid.labelMargin,
        aK = aD.direction == "x" ? p : aw,
        aE;
      var aB = c.grep(aK, function (aN) {
        return aN && aN.options.position == aH && aN.reserveSpace;
      });
      if (c.inArray(aD, aB) == aB.length - 1) {
        aG = 0;
      }
      if (aF == null) {
        aF = "full";
      }
      var aI = c.grep(aK, function (aN) {
        return aN && aN.reserveSpace;
      });
      var aM = c.inArray(aD, aI) == 0;
      if (!aM && aF == "full") {
        aF = 5;
      }
      if (!isNaN(+aF)) {
        aJ += +aF;
      }
      if (aD.direction == "x") {
        aL += aJ;
        if (aH == "bottom") {
          q.bottom += aL + aG;
          aD.box = { top: I - q.bottom, height: aL };
        } else {
          aD.box = { top: q.top + aG, height: aL };
          q.top += aL + aG;
        }
      } else {
        aC += aJ;
        if (aH == "left") {
          aD.box = { left: q.left + aG, width: aC };
          q.left += aC + aG;
        } else {
          q.right += aC + aG;
          aD.box = { left: G - q.right, width: aC };
        }
      }
      aD.position = aH;
      aD.tickLength = aF;
      aD.box.padding = aJ;
      aD.innermost = aM;
    }

    function U(aB) {
      if (aB.direction == "x") {
        aB.box.left = q.left;
        aB.box.width = h;
      } else {
        aB.box.top = q.top;
        aB.box.height = w;
      }
    }

    function t() {
      var aC,
        aE = m();
      c.each(aE, function (aF, aG) {
        aG.show = aG.options.show;
        if (aG.show == null) {
          aG.show = aG.used;
        }
        aG.reserveSpace = aG.show || aG.options.reserveSpace;
        n(aG);
      });
      allocatedAxes = c.grep(aE, function (aF) {
        return aF.reserveSpace;
      });
      q.left = q.right = q.top = q.bottom = 0;
      if (O.grid.show) {
        c.each(allocatedAxes, function (aF, aG) {
          S(aG);
          P(aG);
          ap(aG, aG.ticks);
          L(aG);
        });
        for (aC = allocatedAxes.length - 1; aC >= 0; --aC) {
          au(allocatedAxes[aC]);
        }
        var aD = O.grid.minBorderMargin;
        if (aD == null) {
          aD = 0;
          for (aC = 0; aC < Q.length; ++aC) {
            aD = Math.max(aD, Q[aC].points.radius + Q[aC].points.lineWidth / 2);
          }
        }
        for (var aB in q) {
          q[aB] += O.grid.borderWidth;
          q[aB] = Math.max(aD, q[aB]);
        }
      }
      h = G - q.left - q.right;
      w = I - q.bottom - q.top;
      c.each(aE, function (aF, aG) {
        r(aG);
      });
      if (O.grid.show) {
        c.each(allocatedAxes, function (aF, aG) {
          U(aG);
        });
        k();
      }
      o();
    }

    function n(aE) {
      var aF = aE.options,
        aD = +(aF.min != null ? aF.min : aE.datamin),
        aB = +(aF.max != null ? aF.max : aE.datamax),
        aH = aB - aD;
      if (aH == 0) {
        var aC = aB == 0 ? 1 : 0.01;
        if (aF.min == null) {
          aD -= aC;
        }
        if (aF.max == null || aF.min != null) {
          aB += aC;
        }
      } else {
        var aG = aF.autoscaleMargin;
        if (aG != null) {
          if (aF.min == null) {
            aD -= aH * aG;
            if (aD < 0 && aE.datamin != null && aE.datamin >= 0) {
              aD = 0;
            }
          }
          if (aF.max == null) {
            aB += aH * aG;
            if (aB > 0 && aE.datamax != null && aE.datamax <= 0) {
              aB = 0;
            }
          }
        }
      }
      aE.min = aD;
      aE.max = aB;
    }

    function S(aG) {
      var aM = aG.options;
      var aH;
      if (typeof aM.ticks == "number" && aM.ticks > 0) {
        aH = aM.ticks;
      } else {
        aH = 0.3 * Math.sqrt(aG.direction == "x" ? G : I);
      }
      var aT = (aG.max - aG.min) / aH,
        aO,
        aB,
        aN,
        aR,
        aS,
        aQ,
        aI;
      if (aM.mode == "time") {
        var aJ = {
          second: 1000,
          minute: 60 * 1000,
          hour: 60 * 60 * 1000,
          day: 24 * 60 * 60 * 1000,
          month: 30 * 24 * 60 * 60 * 1000,
          year: 365.2425 * 24 * 60 * 60 * 1000,
        };
        var aK = [
          [1, "second"],
          [2, "second"],
          [5, "second"],
          [10, "second"],
          [30, "second"],
          [1, "minute"],
          [2, "minute"],
          [5, "minute"],
          [10, "minute"],
          [30, "minute"],
          [1, "hour"],
          [2, "hour"],
          [4, "hour"],
          [8, "hour"],
          [12, "hour"],
          [1, "day"],
          [2, "day"],
          [3, "day"],
          [0.25, "month"],
          [0.5, "month"],
          [1, "month"],
          [2, "month"],
          [3, "month"],
          [6, "month"],
          [1, "year"],
        ];
        var aC = 0;
        if (aM.minTickSize != null) {
          if (typeof aM.tickSize == "number") {
            aC = aM.tickSize;
          } else {
            aC = aM.minTickSize[0] * aJ[aM.minTickSize[1]];
          }
        }
        for (var aS = 0; aS < aK.length - 1; ++aS) {
          if (
            aT <
              (aK[aS][0] * aJ[aK[aS][1]] + aK[aS + 1][0] * aJ[aK[aS + 1][1]]) /
                2 &&
            aK[aS][0] * aJ[aK[aS][1]] >= aC
          ) {
            break;
          }
        }
        aO = aK[aS][0];
        aN = aK[aS][1];
        if (aN == "year") {
          aQ = Math.pow(10, Math.floor(Math.log(aT / aJ.year) / Math.LN10));
          aI = aT / aJ.year / aQ;
          if (aI < 1.5) {
            aO = 1;
          } else {
            if (aI < 3) {
              aO = 2;
            } else {
              if (aI < 7.5) {
                aO = 5;
              } else {
                aO = 10;
              }
            }
          }
          aO *= aQ;
        }
        aG.tickSize = aM.tickSize || [aO, aN];
        aB = function (aX) {
          var a2 = [],
            a0 = aX.tickSize[0],
            a3 = aX.tickSize[1],
            a1 = new Date(aX.min);
          var aW = a0 * aJ[a3];
          if (a3 == "second") {
            a1.setUTCSeconds(a(a1.getUTCSeconds(), a0));
          }
          if (a3 == "minute") {
            a1.setUTCMinutes(a(a1.getUTCMinutes(), a0));
          }
          if (a3 == "hour") {
            a1.setUTCHours(a(a1.getUTCHours(), a0));
          }
          if (a3 == "month") {
            a1.setUTCMonth(a(a1.getUTCMonth(), a0));
          }
          if (a3 == "year") {
            a1.setUTCFullYear(a(a1.getUTCFullYear(), a0));
          }
          a1.setUTCMilliseconds(0);
          if (aW >= aJ.minute) {
            a1.setUTCSeconds(0);
          }
          if (aW >= aJ.hour) {
            a1.setUTCMinutes(0);
          }
          if (aW >= aJ.day) {
            a1.setUTCHours(0);
          }
          if (aW >= aJ.day * 4) {
            a1.setUTCDate(1);
          }
          if (aW >= aJ.year) {
            a1.setUTCMonth(0);
          }
          var a5 = 0,
            a4 = Number.NaN,
            aY;
          do {
            aY = a4;
            a4 = a1.getTime();
            a2.push(a4);
            if (a3 == "month") {
              if (a0 < 1) {
                a1.setUTCDate(1);
                var aV = a1.getTime();
                a1.setUTCMonth(a1.getUTCMonth() + 1);
                var aZ = a1.getTime();
                a1.setTime(a4 + a5 * aJ.hour + (aZ - aV) * a0);
                a5 = a1.getUTCHours();
                a1.setUTCHours(0);
              } else {
                a1.setUTCMonth(a1.getUTCMonth() + a0);
              }
            } else {
              if (a3 == "year") {
                a1.setUTCFullYear(a1.getUTCFullYear() + a0);
              } else {
                a1.setTime(a4 + aW);
              }
            }
          } while (a4 < aX.max && a4 != aY);
          return a2;
        };
        aR = function (aV, aY) {
          var a0 = new Date(aV);
          if (aM.timeformat != null) {
            return c.plot.formatDate(a0, aM.timeformat, aM.monthNames);
          }
          var aW = aY.tickSize[0] * aJ[aY.tickSize[1]];
          var aX = aY.max - aY.min;
          var aZ = aM.twelveHourClock ? " %p" : "";
          if (aW < aJ.minute) {
            fmt = "%h:%M:%S" + aZ;
          } else {
            if (aW < aJ.day) {
              if (aX < 2 * aJ.day) {
                fmt = "%h:%M" + aZ;
              } else {
                fmt = "%b %d %h:%M" + aZ;
              }
            } else {
              if (aW < aJ.month) {
                fmt = "%b %d";
              } else {
                if (aW < aJ.year) {
                  if (aX < aJ.year) {
                    fmt = "%b";
                  } else {
                    fmt = "%b %y";
                  }
                } else {
                  fmt = "%y";
                }
              }
            }
          }
          return c.plot.formatDate(a0, fmt, aM.monthNames);
        };
      } else {
        var aU = aM.tickDecimals;
        var aP = -Math.floor(Math.log(aT) / Math.LN10);
        if (aU != null && aP > aU) {
          aP = aU;
        }
        aQ = Math.pow(10, -aP);
        aI = aT / aQ;
        if (aI < 1.5) {
          aO = 1;
        } else {
          if (aI < 3) {
            aO = 2;
            if (aI > 2.25 && (aU == null || aP + 1 <= aU)) {
              aO = 2.5;
              ++aP;
            }
          } else {
            if (aI < 7.5) {
              aO = 5;
            } else {
              aO = 10;
            }
          }
        }
        aO *= aQ;
        if (aM.minTickSize != null && aO < aM.minTickSize) {
          aO = aM.minTickSize;
        }
        aG.tickDecimals = Math.max(0, aU != null ? aU : aP);
        aG.tickSize = aM.tickSize || aO;
        aB = function (aX) {
          var aZ = [];
          var a0 = a(aX.min, aX.tickSize),
            aW = 0,
            aV = Number.NaN,
            aY;
          do {
            aY = aV;
            aV = a0 + aW * aX.tickSize;
            aZ.push(aV);
            ++aW;
          } while (aV < aX.max && aV != aY);
          return aZ;
        };
        aR = function (aV, aW) {
          return aV.toFixed(aW.tickDecimals);
        };
      }
      if (aM.alignTicksWithAxis != null) {
        var aF = (aG.direction == "x" ? p : aw)[aM.alignTicksWithAxis - 1];
        if (aF && aF.used && aF != aG) {
          var aL = aB(aG);
          if (aL.length > 0) {
            if (aM.min == null) {
              aG.min = Math.min(aG.min, aL[0]);
            }
            if (aM.max == null && aL.length > 1) {
              aG.max = Math.max(aG.max, aL[aL.length - 1]);
            }
          }
          aB = function (aX) {
            var aY = [],
              aV,
              aW;
            for (aW = 0; aW < aF.ticks.length; ++aW) {
              aV = (aF.ticks[aW].v - aF.min) / (aF.max - aF.min);
              aV = aX.min + aV * (aX.max - aX.min);
              aY.push(aV);
            }
            return aY;
          };
          if (aG.mode != "time" && aM.tickDecimals == null) {
            var aE = Math.max(0, -Math.floor(Math.log(aT) / Math.LN10) + 1),
              aD = aB(aG);
            if (
              !(aD.length > 1 && /\..*0$/.test((aD[1] - aD[0]).toFixed(aE)))
            ) {
              aG.tickDecimals = aE;
            }
          }
        }
      }
      aG.tickGenerator = aB;
      if (c.isFunction(aM.tickFormatter)) {
        aG.tickFormatter = function (aV, aW) {
          return "" + aM.tickFormatter(aV, aW);
        };
      } else {
        aG.tickFormatter = aR;
      }
    }

    function P(aF) {
      var aH = aF.options.ticks,
        aG = [];
      if (aH == null || (typeof aH == "number" && aH > 0)) {
        aG = aF.tickGenerator(aF);
      } else {
        if (aH) {
          if (c.isFunction(aH)) {
            aG = aH({ min: aF.min, max: aF.max });
          } else {
            aG = aH;
          }
        }
      }
      var aE, aB;
      aF.ticks = [];
      for (aE = 0; aE < aG.length; ++aE) {
        var aC = null;
        var aD = aG[aE];
        if (typeof aD == "object") {
          aB = +aD[0];
          if (aD.length > 1) {
            aC = aD[1];
          }
        } else {
          aB = +aD;
        }
        if (aC == null) {
          aC = aF.tickFormatter(aB, aF);
        }
        if (!isNaN(aB)) {
          aF.ticks.push({ v: aB, label: aC });
        }
      }
    }

    function ap(aB, aC) {
      if (aB.options.autoscaleMargin && aC.length > 0) {
        if (aB.options.min == null) {
          aB.min = Math.min(aB.min, aC[0].v);
        }
        if (aB.options.max == null && aC.length > 1) {
          aB.max = Math.max(aB.max, aC[aC.length - 1].v);
        }
      }
    }

    function W() {
      H.clearRect(0, 0, G, I);
      var aC = O.grid;
      if (aC.show && aC.backgroundColor) {
        N();
      }
      if (aC.show && !aC.aboveData) {
        ac();
      }
      for (var aB = 0; aB < Q.length; ++aB) {
        an(ak.drawSeries, [H, Q[aB]]);
        d(Q[aB]);
      }
      an(ak.draw, [H]);
      if (aC.show && aC.aboveData) {
        ac();
      }
    }

    function D(aB, aI) {
      var aE,
        aH,
        aG,
        aD,
        aF = m();
      for (i = 0; i < aF.length; ++i) {
        aE = aF[i];
        if (aE.direction == aI) {
          aD = aI + aE.n + "axis";
          if (!aB[aD] && aE.n == 1) {
            aD = aI + "axis";
          }
          if (aB[aD]) {
            aH = aB[aD].from;
            aG = aB[aD].to;
            break;
          }
        }
      }
      if (!aB[aD]) {
        aE = aI == "x" ? p[0] : aw[0];
        aH = aB[aI + "1"];
        aG = aB[aI + "2"];
      }
      if (aH != null && aG != null && aH > aG) {
        var aC = aH;
        aH = aG;
        aG = aC;
      }
      return { from: aH, to: aG, axis: aE };
    }

    function N() {
      H.save();
      H.translate(q.left, q.top);
      H.fillStyle = am(O.grid.backgroundColor, w, 0, "rgba(255, 255, 255, 0)");
      H.fillRect(0, 0, h, w);
      H.restore();
    }

    function ac() {
      var aF;
      H.save();
      H.translate(q.left, q.top);
      var aH = O.grid.markings;
      if (aH) {
        if (c.isFunction(aH)) {
          var aK = aq.getAxes();
          aK.xmin = aK.xaxis.min;
          aK.xmax = aK.xaxis.max;
          aK.ymin = aK.yaxis.min;
          aK.ymax = aK.yaxis.max;
          aH = aH(aK);
        }
        for (aF = 0; aF < aH.length; ++aF) {
          var aD = aH[aF],
            aC = D(aD, "x"),
            aI = D(aD, "y");
          if (aC.from == null) {
            aC.from = aC.axis.min;
          }
          if (aC.to == null) {
            aC.to = aC.axis.max;
          }
          if (aI.from == null) {
            aI.from = aI.axis.min;
          }
          if (aI.to == null) {
            aI.to = aI.axis.max;
          }
          if (
            aC.to < aC.axis.min ||
            aC.from > aC.axis.max ||
            aI.to < aI.axis.min ||
            aI.from > aI.axis.max
          ) {
            continue;
          }
          aC.from = Math.max(aC.from, aC.axis.min);
          aC.to = Math.min(aC.to, aC.axis.max);
          aI.from = Math.max(aI.from, aI.axis.min);
          aI.to = Math.min(aI.to, aI.axis.max);
          if (aC.from == aC.to && aI.from == aI.to) {
            continue;
          }
          aC.from = aC.axis.p2c(aC.from);
          aC.to = aC.axis.p2c(aC.to);
          aI.from = aI.axis.p2c(aI.from);
          aI.to = aI.axis.p2c(aI.to);
          if (aC.from == aC.to || aI.from == aI.to) {
            H.beginPath();
            H.strokeStyle = aD.color || O.grid.markingsColor;
            H.lineWidth = aD.lineWidth || O.grid.markingsLineWidth;
            H.moveTo(aC.from, aI.from);
            H.lineTo(aC.to, aI.to);
            H.stroke();
          } else {
            H.fillStyle = aD.color || O.grid.markingsColor;
            H.fillRect(aC.from, aI.to, aC.to - aC.from, aI.from - aI.to);
          }
        }
      }
      var aK = m(),
        aM = O.grid.borderWidth;
      for (var aE = 0; aE < aK.length; ++aE) {
        var aB = aK[aE],
          aG = aB.box,
          aQ = aB.tickLength,
          aN,
          aL,
          aP,
          aJ;
        if (!aB.show || aB.ticks.length == 0) {
          continue;
        }
        H.strokeStyle =
          aB.options.tickColor ||
          c.color.parse(aB.options.color).scale("a", 0.22).toString();
        H.lineWidth = 1;
        if (aB.direction == "x") {
          aN = 0;
          if (aQ == "full") {
            aL = aB.position == "top" ? 0 : w;
          } else {
            aL = aG.top - q.top + (aB.position == "top" ? aG.height : 0);
          }
        } else {
          aL = 0;
          if (aQ == "full") {
            aN = aB.position == "left" ? 0 : h;
          } else {
            aN = aG.left - q.left + (aB.position == "left" ? aG.width : 0);
          }
        }
        if (!aB.innermost) {
          H.beginPath();
          aP = aJ = 0;
          if (aB.direction == "x") {
            aP = h;
          } else {
            aJ = w;
          }
          if (H.lineWidth == 1) {
            aN = Math.floor(aN) + 0.5;
            aL = Math.floor(aL) + 0.5;
          }
          H.moveTo(aN, aL);
          H.lineTo(aN + aP, aL + aJ);
          H.stroke();
        }
        H.beginPath();
        for (aF = 0; aF < aB.ticks.length; ++aF) {
          var aO = aB.ticks[aF].v;
          aP = aJ = 0;
          if (
            aO < aB.min ||
            aO > aB.max ||
            (aQ == "full" && aM > 0 && (aO == aB.min || aO == aB.max))
          ) {
            continue;
          }
          if (aB.direction == "x") {
            aN = aB.p2c(aO);
            aJ = aQ == "full" ? -w : aQ;
            if (aB.position == "top") {
              aJ = -aJ;
            }
          } else {
            aL = aB.p2c(aO);
            aP = aQ == "full" ? -h : aQ;
            if (aB.position == "left") {
              aP = -aP;
            }
          }
          if (H.lineWidth == 1) {
            if (aB.direction == "x") {
              aN = Math.floor(aN) + 0.5;
            } else {
              aL = Math.floor(aL) + 0.5;
            }
          }
          H.moveTo(aN, aL);
          H.lineTo(aN + aP, aL + aJ);
        }
        H.stroke();
      }
      if (aM) {
        H.lineWidth = aM;
        H.strokeStyle = O.grid.borderColor;
        H.strokeRect(-aM / 2, -aM / 2, h + aM, w + aM);
      }
      H.restore();
    }

    function k() {
      av.find(".tickLabels").remove();
      var aG = ['<div class="tickLabels" style="font-size:smaller">'];
      var aJ = m();
      for (var aD = 0; aD < aJ.length; ++aD) {
        var aC = aJ[aD],
          aF = aC.box;
        if (!aC.show) {
          continue;
        }
        aG.push(
          '<div class="' +
            aC.direction +
            "Axis " +
            aC.direction +
            aC.n +
            'Axis" style="color:' +
            aC.options.color +
            '">'
        );
        for (var aE = 0; aE < aC.ticks.length; ++aE) {
          var aH = aC.ticks[aE];
          if (!aH.label || aH.v < aC.min || aH.v > aC.max) {
            continue;
          }
          var aK = {},
            aI;
          if (aC.direction == "x") {
            aI = "center";
            aK.left = Math.round(q.left + aC.p2c(aH.v) - aC.labelWidth / 2);
            if (aC.position == "bottom") {
              aK.top = aF.top + aF.padding;
            } else {
              aK.bottom = I - (aF.top + aF.height - aF.padding);
            }
          } else {
            aK.top = Math.round(q.top + aC.p2c(aH.v) - aC.labelHeight / 2);
            if (aC.position == "left") {
              aK.right = G - (aF.left + aF.width - aF.padding);
              aI = "right";
            } else {
              aK.left = aF.left + aF.padding;
              aI = "left";
            }
          }
          aK.width = aC.labelWidth;
          var aB = ["position:absolute", "text-align:" + aI];
          for (var aL in aK) {
            aB.push(aL + ":" + aK[aL] + "px");
          }
          aG.push(
            '<div class="tickLabel" style="' +
              aB.join(";") +
              '">' +
              aH.label +
              "</div>"
          );
        }
        aG.push("</div>");
      }
      aG.push("</div>");
      av.append(aG.join(""));
    }

    function d(aB) {
      if (aB.lines.show) {
        at(aB);
      }
      if (aB.bars.show) {
        e(aB);
      }
      if (aB.points.show) {
        ao(aB);
      }
    }

    function at(aE) {
      function aD(aP, aQ, aI, aU, aT) {
        var aV = aP.points,
          aJ = aP.pointsize,
          aN = null,
          aM = null;
        H.beginPath();
        for (var aO = aJ; aO < aV.length; aO += aJ) {
          var aL = aV[aO - aJ],
            aS = aV[aO - aJ + 1],
            aK = aV[aO],
            aR = aV[aO + 1];
          if (aL == null || aK == null) {
            continue;
          }
          if (aS <= aR && aS < aT.min) {
            if (aR < aT.min) {
              continue;
            }
            aL = ((aT.min - aS) / (aR - aS)) * (aK - aL) + aL;
            aS = aT.min;
          } else {
            if (aR <= aS && aR < aT.min) {
              if (aS < aT.min) {
                continue;
              }
              aK = ((aT.min - aS) / (aR - aS)) * (aK - aL) + aL;
              aR = aT.min;
            }
          }
          if (aS >= aR && aS > aT.max) {
            if (aR > aT.max) {
              continue;
            }
            aL = ((aT.max - aS) / (aR - aS)) * (aK - aL) + aL;
            aS = aT.max;
          } else {
            if (aR >= aS && aR > aT.max) {
              if (aS > aT.max) {
                continue;
              }
              aK = ((aT.max - aS) / (aR - aS)) * (aK - aL) + aL;
              aR = aT.max;
            }
          }
          if (aL <= aK && aL < aU.min) {
            if (aK < aU.min) {
              continue;
            }
            aS = ((aU.min - aL) / (aK - aL)) * (aR - aS) + aS;
            aL = aU.min;
          } else {
            if (aK <= aL && aK < aU.min) {
              if (aL < aU.min) {
                continue;
              }
              aR = ((aU.min - aL) / (aK - aL)) * (aR - aS) + aS;
              aK = aU.min;
            }
          }
          if (aL >= aK && aL > aU.max) {
            if (aK > aU.max) {
              continue;
            }
            aS = ((aU.max - aL) / (aK - aL)) * (aR - aS) + aS;
            aL = aU.max;
          } else {
            if (aK >= aL && aK > aU.max) {
              if (aL > aU.max) {
                continue;
              }
              aR = ((aU.max - aL) / (aK - aL)) * (aR - aS) + aS;
              aK = aU.max;
            }
          }
          if (aL != aN || aS != aM) {
            H.moveTo(aU.p2c(aL) + aQ, aT.p2c(aS) + aI);
          }
          aN = aK;
          aM = aR;
          H.lineTo(aU.p2c(aK) + aQ, aT.p2c(aR) + aI);
        }
        H.stroke();
      }

      function aF(aI, aQ, aP) {
        var aW = aI.points,
          aV = aI.pointsize,
          aN = Math.min(Math.max(0, aP.min), aP.max),
          aX = 0,
          aU,
          aT = false,
          aM = 1,
          aL = 0,
          aR = 0;
        while (true) {
          if (aV > 0 && aX > aW.length + aV) {
            break;
          }
          aX += aV;
          var aZ = aW[aX - aV],
            aK = aW[aX - aV + aM],
            aY = aW[aX],
            aJ = aW[aX + aM];
          if (aT) {
            if (aV > 0 && aZ != null && aY == null) {
              aR = aX;
              aV = -aV;
              aM = 2;
              continue;
            }
            if (aV < 0 && aX == aL + aV) {
              H.fill();
              aT = false;
              aV = -aV;
              aM = 1;
              aX = aL = aR + aV;
              continue;
            }
          }
          if (aZ == null || aY == null) {
            continue;
          }
          if (aZ <= aY && aZ < aQ.min) {
            if (aY < aQ.min) {
              continue;
            }
            aK = ((aQ.min - aZ) / (aY - aZ)) * (aJ - aK) + aK;
            aZ = aQ.min;
          } else {
            if (aY <= aZ && aY < aQ.min) {
              if (aZ < aQ.min) {
                continue;
              }
              aJ = ((aQ.min - aZ) / (aY - aZ)) * (aJ - aK) + aK;
              aY = aQ.min;
            }
          }
          if (aZ >= aY && aZ > aQ.max) {
            if (aY > aQ.max) {
              continue;
            }
            aK = ((aQ.max - aZ) / (aY - aZ)) * (aJ - aK) + aK;
            aZ = aQ.max;
          } else {
            if (aY >= aZ && aY > aQ.max) {
              if (aZ > aQ.max) {
                continue;
              }
              aJ = ((aQ.max - aZ) / (aY - aZ)) * (aJ - aK) + aK;
              aY = aQ.max;
            }
          }
          if (!aT) {
            H.beginPath();
            H.moveTo(aQ.p2c(aZ), aP.p2c(aN));
            aT = true;
          }
          if (aK >= aP.max && aJ >= aP.max) {
            H.lineTo(aQ.p2c(aZ), aP.p2c(aP.max));
            H.lineTo(aQ.p2c(aY), aP.p2c(aP.max));
            continue;
          } else {
            if (aK <= aP.min && aJ <= aP.min) {
              H.lineTo(aQ.p2c(aZ), aP.p2c(aP.min));
              H.lineTo(aQ.p2c(aY), aP.p2c(aP.min));
              continue;
            }
          }
          var aO = aZ,
            aS = aY;
          if (aK <= aJ && aK < aP.min && aJ >= aP.min) {
            aZ = ((aP.min - aK) / (aJ - aK)) * (aY - aZ) + aZ;
            aK = aP.min;
          } else {
            if (aJ <= aK && aJ < aP.min && aK >= aP.min) {
              aY = ((aP.min - aK) / (aJ - aK)) * (aY - aZ) + aZ;
              aJ = aP.min;
            }
          }
          if (aK >= aJ && aK > aP.max && aJ <= aP.max) {
            aZ = ((aP.max - aK) / (aJ - aK)) * (aY - aZ) + aZ;
            aK = aP.max;
          } else {
            if (aJ >= aK && aJ > aP.max && aK <= aP.max) {
              aY = ((aP.max - aK) / (aJ - aK)) * (aY - aZ) + aZ;
              aJ = aP.max;
            }
          }
          if (aZ != aO) {
            H.lineTo(aQ.p2c(aO), aP.p2c(aK));
          }
          H.lineTo(aQ.p2c(aZ), aP.p2c(aK));
          H.lineTo(aQ.p2c(aY), aP.p2c(aJ));
          if (aY != aS) {
            H.lineTo(aQ.p2c(aY), aP.p2c(aJ));
            H.lineTo(aQ.p2c(aS), aP.p2c(aJ));
          }
        }
      }
      H.save();
      H.translate(q.left, q.top);
      H.lineJoin = "round";
      var aG = aE.lines.lineWidth,
        aB = aE.shadowSize;
      if (aG > 0 && aB > 0) {
        H.lineWidth = aB;
        H.strokeStyle = "rgba(0,0,0,0.1)";
        var aH = Math.PI / 18;
        aD(
          aE.datapoints,
          Math.sin(aH) * (aG / 2 + aB / 2),
          Math.cos(aH) * (aG / 2 + aB / 2),
          aE.xaxis,
          aE.yaxis
        );
        H.lineWidth = aB / 2;
        aD(
          aE.datapoints,
          Math.sin(aH) * (aG / 2 + aB / 4),
          Math.cos(aH) * (aG / 2 + aB / 4),
          aE.xaxis,
          aE.yaxis
        );
      }
      H.lineWidth = aG;
      H.strokeStyle = aE.color;
      var aC = ae(aE.lines, aE.color, 0, w);
      if (aC) {
        H.fillStyle = aC;
        aF(aE.datapoints, aE.xaxis, aE.yaxis);
      }
      if (aG > 0) {
        aD(aE.datapoints, 0, 0, aE.xaxis, aE.yaxis);
      }
      H.restore();
    }

    function ao(aE) {
      function aH(aN, aM, aU, aK, aS, aT, aQ, aJ) {
        var aR = aN.points,
          aI = aN.pointsize;
        for (var aL = 0; aL < aR.length; aL += aI) {
          var aP = aR[aL],
            aO = aR[aL + 1];
          if (
            aP == null ||
            aP < aT.min ||
            aP > aT.max ||
            aO < aQ.min ||
            aO > aQ.max
          ) {
            continue;
          }
          H.beginPath();
          aP = aT.p2c(aP);
          aO = aQ.p2c(aO) + aK;
          if (aJ == "circle") {
            H.arc(aP, aO, aM, 0, aS ? Math.PI : Math.PI * 2, false);
          } else {
            aJ(H, aP, aO, aM, aS);
          }
          H.closePath();
          if (aU) {
            H.fillStyle = aU;
            H.fill();
          }
          H.stroke();
        }
      }
      H.save();
      H.translate(q.left, q.top);
      var aG = aE.points.lineWidth,
        aC = aE.shadowSize,
        aB = aE.points.radius,
        aF = aE.points.symbol;
      if (aG > 0 && aC > 0) {
        var aD = aC / 2;
        H.lineWidth = aD;
        H.strokeStyle = "rgba(0,0,0,0.1)";
        aH(aE.datapoints, aB, null, aD + aD / 2, true, aE.xaxis, aE.yaxis, aF);
        H.strokeStyle = "rgba(0,0,0,0.2)";
        aH(aE.datapoints, aB, null, aD / 2, true, aE.xaxis, aE.yaxis, aF);
      }
      H.lineWidth = aG;
      H.strokeStyle = aE.color;
      aH(
        aE.datapoints,
        aB,
        ae(aE.points, aE.color),
        0,
        false,
        aE.xaxis,
        aE.yaxis,
        aF
      );
      H.restore();
    }

    function E(aN, aM, aV, aI, aQ, aF, aD, aL, aK, aU, aR, aC) {
      var aE, aT, aJ, aP, aG, aB, aO, aH, aS;
      if (aR) {
        aH = aB = aO = true;
        aG = false;
        aE = aV;
        aT = aN;
        aP = aM + aI;
        aJ = aM + aQ;
        if (aT < aE) {
          aS = aT;
          aT = aE;
          aE = aS;
          aG = true;
          aB = false;
        }
      } else {
        aG = aB = aO = true;
        aH = false;
        aE = aN + aI;
        aT = aN + aQ;
        aJ = aV;
        aP = aM;
        if (aP < aJ) {
          aS = aP;
          aP = aJ;
          aJ = aS;
          aH = true;
          aO = false;
        }
      }
      if (aT < aL.min || aE > aL.max || aP < aK.min || aJ > aK.max) {
        return;
      }
      if (aE < aL.min) {
        aE = aL.min;
        aG = false;
      }
      if (aT > aL.max) {
        aT = aL.max;
        aB = false;
      }
      if (aJ < aK.min) {
        aJ = aK.min;
        aH = false;
      }
      if (aP > aK.max) {
        aP = aK.max;
        aO = false;
      }
      aE = aL.p2c(aE);
      aJ = aK.p2c(aJ);
      aT = aL.p2c(aT);
      aP = aK.p2c(aP);
      if (aD) {
        aU.beginPath();
        aU.moveTo(aE, aJ);
        aU.lineTo(aE, aP);
        aU.lineTo(aT, aP);
        aU.lineTo(aT, aJ);
        aU.fillStyle = aD(aJ, aP);
        aU.fill();
      }
      if (aC > 0 && (aG || aB || aO || aH)) {
        aU.beginPath();
        aU.moveTo(aE, aJ + aF);
        if (aG) {
          aU.lineTo(aE, aP + aF);
        } else {
          aU.moveTo(aE, aP + aF);
        }
        if (aO) {
          aU.lineTo(aT, aP + aF);
        } else {
          aU.moveTo(aT, aP + aF);
        }
        if (aB) {
          aU.lineTo(aT, aJ + aF);
        } else {
          aU.moveTo(aT, aJ + aF);
        }
        if (aH) {
          aU.lineTo(aE, aJ + aF);
        } else {
          aU.moveTo(aE, aJ + aF);
        }
        aU.stroke();
      }
    }

    function e(aD) {
      function aC(aJ, aI, aL, aG, aK, aN, aM) {
        var aO = aJ.points,
          aF = aJ.pointsize;
        for (var aH = 0; aH < aO.length; aH += aF) {
          if (aO[aH] == null) {
            continue;
          }
          E(
            aO[aH],
            aO[aH + 1],
            aO[aH + 2],
            aI,
            aL,
            aG,
            aK,
            aN,
            aM,
            H,
            aD.bars.horizontal,
            aD.bars.lineWidth
          );
        }
      }
      H.save();
      H.translate(q.left, q.top);
      H.lineWidth = aD.bars.lineWidth;
      H.strokeStyle = aD.color;
      var aB = aD.bars.align == "left" ? 0 : -aD.bars.barWidth / 2;
      var aE = aD.bars.fill
        ? function (aF, aG) {
            return ae(aD.bars, aD.color, aF, aG);
          }
        : null;
      aC(aD.datapoints, aB, aB + aD.bars.barWidth, 0, aE, aD.xaxis, aD.yaxis);
      H.restore();
    }

    function ae(aD, aB, aC, aF) {
      var aE = aD.fill;
      if (!aE) {
        return null;
      }
      if (aD.fillColor) {
        return am(aD.fillColor, aC, aF, aB);
      }
      var aG = c.color.parse(aB);
      aG.a = typeof aE == "number" ? aE : 0.4;
      aG.normalize();
      return aG.toString();
    }

    function o() {
      av.find(".legend").remove();
      if (!O.legend.show) {
        return;
      }
      var aH = [],
        aF = false,
        aN = O.legend.labelFormatter,
        aM,
        aJ;
      for (var aE = 0; aE < Q.length; ++aE) {
        aM = Q[aE];
        aJ = aM.label;
        if (!aJ) {
          continue;
        }
        if (aE % O.legend.noColumns == 0) {
          if (aF) {
            aH.push("</tr>");
          }
          aH.push("<tr>");
          aF = true;
        }
        if (aN) {
          aJ = aN(aJ, aM);
        }
        aH.push(
          '<td class="legendColorBox"><div style="border:1px solid ' +
            O.legend.labelBoxBorderColor +
            ';padding:1px"><div style="width:4px;height:0;border:5px solid ' +
            aM.color +
            ';overflow:hidden"></div></div></td><td class="legendLabel">' +
            aJ +
            "</td>"
        );
      }
      if (aF) {
        aH.push("</tr>");
      }
      if (aH.length == 0) {
        return;
      }
      var aL =
        '<table style="font-size:smaller;color:' +
        O.grid.color +
        '">' +
        aH.join("") +
        "</table>";
      if (O.legend.container != null) {
        c(O.legend.container).html(aL);
      } else {
        var aI = "",
          aC = O.legend.position,
          aD = O.legend.margin;
        if (aD[0] == null) {
          aD = [aD, aD];
        }
        if (aC.charAt(0) == "n") {
          aI += "top:" + (aD[1] + q.top) + "px;";
        } else {
          if (aC.charAt(0) == "s") {
            aI += "bottom:" + (aD[1] + q.bottom) + "px;";
          }
        }
        if (aC.charAt(1) == "e") {
          aI += "right:" + (aD[0] + q.right) + "px;";
        } else {
          if (aC.charAt(1) == "w") {
            aI += "left:" + (aD[0] + q.left) + "px;";
          }
        }
        var aK = c(
          '<div class="legend">' +
            aL.replace('style="', 'style="position:absolute;' + aI + ";") +
            "</div>"
        ).appendTo(av);
        if (O.legend.backgroundOpacity != 0) {
          var aG = O.legend.backgroundColor;
          if (aG == null) {
            aG = O.grid.backgroundColor;
            if (aG && typeof aG == "string") {
              aG = c.color.parse(aG);
            } else {
              aG = c.color.extract(aK, "background-color");
            }
            aG.a = 1;
            aG = aG.toString();
          }
          var aB = aK.children();
          c(
            '<div style="position:absolute;width:' +
              aB.width() +
              "px;height:" +
              aB.height() +
              "px;" +
              aI +
              "background-color:" +
              aG +
              ';"> </div>'
          )
            .prependTo(aK)
            .css("opacity", O.legend.backgroundOpacity);
        }
      }
    }
    var ab = [],
      M = null;

    function K(aI, aG, aD) {
      var aO = O.grid.mouseActiveRadius,
        a0 = aO * aO + 1,
        aY = null,
        aR = false,
        aW,
        aU;
      for (aW = Q.length - 1; aW >= 0; --aW) {
        if (!aD(Q[aW])) {
          continue;
        }
        var aP = Q[aW],
          aH = aP.xaxis,
          aF = aP.yaxis,
          aV = aP.datapoints.points,
          aT = aP.datapoints.pointsize,
          aQ = aH.c2p(aI),
          aN = aF.c2p(aG),
          aC = aO / aH.scale,
          aB = aO / aF.scale;
        if (aH.options.inverseTransform) {
          aC = Number.MAX_VALUE;
        }
        if (aF.options.inverseTransform) {
          aB = Number.MAX_VALUE;
        }
        if (aP.lines.show || aP.points.show) {
          for (aU = 0; aU < aV.length; aU += aT) {
            var aK = aV[aU],
              aJ = aV[aU + 1];
            if (aK == null) {
              continue;
            }
            if (
              aK - aQ > aC ||
              aK - aQ < -aC ||
              aJ - aN > aB ||
              aJ - aN < -aB
            ) {
              continue;
            }
            var aM = Math.abs(aH.p2c(aK) - aI),
              aL = Math.abs(aF.p2c(aJ) - aG),
              aS = aM * aM + aL * aL;
            if (aS < a0) {
              a0 = aS;
              aY = [aW, aU / aT];
            }
          }
        }
        if (aP.bars.show && !aY) {
          var aE = aP.bars.align == "left" ? 0 : -aP.bars.barWidth / 2,
            aX = aE + aP.bars.barWidth;
          for (aU = 0; aU < aV.length; aU += aT) {
            var aK = aV[aU],
              aJ = aV[aU + 1],
              aZ = aV[aU + 2];
            if (aK == null) {
              continue;
            }
            if (
              Q[aW].bars.horizontal
                ? aQ <= Math.max(aZ, aK) &&
                  aQ >= Math.min(aZ, aK) &&
                  aN >= aJ + aE &&
                  aN <= aJ + aX
                : aQ >= aK + aE &&
                  aQ <= aK + aX &&
                  aN >= Math.min(aZ, aJ) &&
                  aN <= Math.max(aZ, aJ)
            ) {
              aY = [aW, aU / aT];
            }
          }
        }
      }
      if (aY) {
        aW = aY[0];
        aU = aY[1];
        aT = Q[aW].datapoints.pointsize;
        return {
          datapoint: Q[aW].datapoints.points.slice(aU * aT, (aU + 1) * aT),
          dataIndex: aU,
          series: Q[aW],
          seriesIndex: aW,
        };
      }
      return null;
    }

    function aa(aB) {
      if (O.grid.hoverable) {
        u("plothover", aB, function (aC) {
          return aC.hoverable != false;
        });
      }
    }

    function l(aB) {
      if (O.grid.hoverable) {
        u("plothover", aB, function (aC) {
          return false;
        });
      }
    }

    function R(aB) {
      u("plotclick", aB, function (aC) {
        return aC.clickable != false;
      });
    }

    function u(aC, aB, aD) {
      var aE = y.offset(),
        aH = aB.pageX - aE.left - q.left,
        aF = aB.pageY - aE.top - q.top,
        aJ = C({ left: aH, top: aF });
      aJ.pageX = aB.pageX;
      aJ.pageY = aB.pageY;
      var aK = K(aH, aF, aD);
      if (aK) {
        aK.pageX = parseInt(
          aK.series.xaxis.p2c(aK.datapoint[0]) + aE.left + q.left
        );
        aK.pageY = parseInt(
          aK.series.yaxis.p2c(aK.datapoint[1]) + aE.top + q.top
        );
      }
      if (O.grid.autoHighlight) {
        for (var aG = 0; aG < ab.length; ++aG) {
          var aI = ab[aG];
          if (
            aI.auto == aC &&
            !(
              aK &&
              aI.series == aK.series &&
              aI.point[0] == aK.datapoint[0] &&
              aI.point[1] == aK.datapoint[1]
            )
          ) {
            T(aI.series, aI.point);
          }
        }
        if (aK) {
          x(aK.series, aK.datapoint, aC);
        }
      }
      av.trigger(aC, [aJ, aK]);
    }

    function f() {
      if (!M) {
        M = setTimeout(s, 30);
      }
    }

    function s() {
      M = null;
      A.save();
      A.clearRect(0, 0, G, I);
      A.translate(q.left, q.top);
      var aC, aB;
      for (aC = 0; aC < ab.length; ++aC) {
        aB = ab[aC];
        if (aB.series.bars.show) {
          v(aB.series, aB.point);
        } else {
          ay(aB.series, aB.point);
        }
      }
      A.restore();
      an(ak.drawOverlay, [A]);
    }

    function x(aD, aB, aF) {
      if (typeof aD == "number") {
        aD = Q[aD];
      }
      if (typeof aB == "number") {
        var aE = aD.datapoints.pointsize;
        aB = aD.datapoints.points.slice(aE * aB, aE * (aB + 1));
      }
      var aC = al(aD, aB);
      if (aC == -1) {
        ab.push({ series: aD, point: aB, auto: aF });
        f();
      } else {
        if (!aF) {
          ab[aC].auto = false;
        }
      }
    }

    function T(aD, aB) {
      if (aD == null && aB == null) {
        ab = [];
        f();
      }
      if (typeof aD == "number") {
        aD = Q[aD];
      }
      if (typeof aB == "number") {
        aB = aD.data[aB];
      }
      var aC = al(aD, aB);
      if (aC != -1) {
        ab.splice(aC, 1);
        f();
      }
    }

    function al(aD, aE) {
      for (var aB = 0; aB < ab.length; ++aB) {
        var aC = ab[aB];
        if (aC.series == aD && aC.point[0] == aE[0] && aC.point[1] == aE[1]) {
          return aB;
        }
      }
      return -1;
    }

    function ay(aE, aD) {
      var aC = aD[0],
        aI = aD[1],
        aH = aE.xaxis,
        aG = aE.yaxis;
      if (aC < aH.min || aC > aH.max || aI < aG.min || aI > aG.max) {
        return;
      }
      var aF = aE.points.radius + aE.points.lineWidth / 2;
      A.lineWidth = aF;
      A.strokeStyle = c.color.parse(aE.color).scale("a", 0.5).toString();
      var aB = 1.5 * aF,
        aC = aH.p2c(aC),
        aI = aG.p2c(aI);
      A.beginPath();
      if (aE.points.symbol == "circle") {
        A.arc(aC, aI, aB, 0, 2 * Math.PI, false);
      } else {
        aE.points.symbol(A, aC, aI, aB, false);
      }
      A.closePath();
      A.stroke();
    }

    function v(aE, aB) {
      A.lineWidth = aE.bars.lineWidth;
      A.strokeStyle = c.color.parse(aE.color).scale("a", 0.5).toString();
      var aD = c.color.parse(aE.color).scale("a", 0.5).toString();
      var aC = aE.bars.align == "left" ? 0 : -aE.bars.barWidth / 2;
      E(
        aB[0],
        aB[1],
        aB[2] || 0,
        aC,
        aC + aE.bars.barWidth,
        0,
        function () {
          return aD;
        },
        aE.xaxis,
        aE.yaxis,
        A,
        aE.bars.horizontal,
        aE.bars.lineWidth
      );
    }

    function am(aJ, aB, aH, aC) {
      if (typeof aJ == "string") {
        return aJ;
      } else {
        var aI = H.createLinearGradient(0, aH, 0, aB);
        for (var aE = 0, aD = aJ.colors.length; aE < aD; ++aE) {
          var aF = aJ.colors[aE];
          if (typeof aF != "string") {
            var aG = c.color.parse(aC);
            if (aF.brightness != null) {
              aG = aG.scale("rgb", aF.brightness);
            }
            if (aF.opacity != null) {
              aG.a *= aF.opacity;
            }
            aF = aG.toString();
          }
          aI.addColorStop(aE / (aD - 1), aF);
        }
        return aI;
      }
    }
  }
  c.plot = function (g, e, d) {
    var f = new b(c(g), e, d, c.plot.plugins);
    return f;
  };
  c.plot.version = "0.7";
  c.plot.plugins = [];
  c.plot.formatDate = function (l, f, h) {
    var o = function (d) {
      d = "" + d;
      return d.length == 1 ? "0" + d : d;
    };
    var e = [];
    var p = false,
      j = false;
    var n = l.getUTCHours();
    var k = n < 12;
    if (h == null) {
      h = [
        "Jan",
        "Feb",
        "Mar",
        "Apr",
        "May",
        "Jun",
        "Jul",
        "Aug",
        "Sep",
        "Oct",
        "Nov",
        "Dec",
      ];
    }
    if (f.search(/%p|%P/) != -1) {
      if (n > 12) {
        n = n - 12;
      } else {
        if (n == 0) {
          n = 12;
        }
      }
    }
    for (var g = 0; g < f.length; ++g) {
      var m = f.charAt(g);
      if (p) {
        switch (m) {
          case "h":
            m = "" + n;
            break;
          case "H":
            m = o(n);
            break;
          case "M":
            m = o(l.getUTCMinutes());
            break;
          case "S":
            m = o(l.getUTCSeconds());
            break;
          case "d":
            m = "" + l.getUTCDate();
            break;
          case "m":
            m = "" + (l.getUTCMonth() + 1);
            break;
          case "y":
            m = "" + l.getUTCFullYear();
            break;
          case "b":
            m = "" + h[l.getUTCMonth()];
            break;
          case "p":
            m = k ? "am" : "pm";
            break;
          case "P":
            m = k ? "AM" : "PM";
            break;
          case "0":
            m = "";
            j = true;
            break;
        }
        if (m && j) {
          m = o(m);
          j = false;
        }
        e.push(m);
        if (!j) {
          p = false;
        }
      } else {
        if (m == "%") {
          p = true;
        } else {
          e.push(m);
        }
      }
    }
    return e.join("");
  };

  function a(e, d) {
    return d * Math.floor(e / d);
  }
})(jQuery);

© KUJUNTI.ID