(function($dvt$$3$$) {
  function $DvtAxisObjPeer$$($dvt$$3$$, $DvtAxisRenderer$$, $group$$10$$, $DvtAxisConstants$$, $DvtAxisDefaults$$, $DvtAxisAutomation$$, $datatip$$3$$, $params$$7$$) {
    this.Init($dvt$$3$$, $DvtAxisRenderer$$, $group$$10$$, $DvtAxisConstants$$, $DvtAxisDefaults$$, $DvtAxisAutomation$$, $datatip$$3$$, $params$$7$$);
  }
  function $DvtAxisKeyboardHandler$$($dvt$$3$$, $DvtAxisRenderer$$) {
    this.Init($dvt$$3$$, $DvtAxisRenderer$$);
  }
  function $DvtAxisEventManager$$($dvt$$3$$) {
    this.Init($dvt$$3$$.$getCtx$(), $dvt$$3$$.$processEvent$, $dvt$$3$$);
    this.$_axis$ = $dvt$$3$$;
  }
  function $DvtAxisDefaults$$() {
    this.Init({skyros:$DvtAxisDefaults$$.$VERSION_1$, alta:$DvtAxisDefaults$$.$SKIN_ALTA$, next:$DvtAxisDefaults$$.$SKIN_NEXT$});
  }
  function $DvtAxisAutomation$$($dvt$$3$$) {
    this.$_axis$ = $dvt$$3$$;
    this.$_options$ = this.$_axis$.$getOptions$();
    this.$_axisInfo$ = this.$_axis$.$getInfo$();
  }
  $dvt$$3$$.$Axis$ = function $$dvt$$3$$$$Axis$$() {
  };
  $dvt$$3$$.$Obj$.$createSubclass$($dvt$$3$$.$Axis$, $dvt$$3$$.$BaseComponent$);
  $dvt$$3$$.$Axis$.newInstance = function $$dvt$$3$$$$Axis$$newInstance$($DvtAxisRenderer$$, $callback$$90$$, $callbackObj$$21$$) {
    var $DvtAxisConstants$$ = new $dvt$$3$$.$Axis$;
    $DvtAxisConstants$$.Init($DvtAxisRenderer$$, $callback$$90$$, $callbackObj$$21$$);
    return $DvtAxisConstants$$;
  };
  $dvt$$3$$.$Axis$.$getDefaults$ = function $$dvt$$3$$$$Axis$$$getDefaults$$($dvt$$3$$) {
    return (new $DvtAxisDefaults$$).$getDefaults$($dvt$$3$$);
  };
  $dvt$$3$$.$Axis$.prototype.Init = function $$dvt$$3$$$$Axis$$$Init$($DvtAxisRenderer$$, $callback$$91$$, $callbackObj$$22$$) {
    $dvt$$3$$.$Axis$.$superclass$.Init.call(this, $DvtAxisRenderer$$, $callback$$91$$, $callbackObj$$22$$);
    this.$Defaults$ = new $DvtAxisDefaults$$;
    this.$EventManager$ = new $DvtAxisEventManager$$(this);
    this.$EventManager$.$addListeners$(this);
    $dvt$$3$$.$Agent$.$isTouchDevice$() || this.$EventManager$.$setKeyboardHandler$(new $DvtAxisKeyboardHandler$$(this.$EventManager$, this));
    this.$_bounds$ = null;
  };
  $dvt$$3$$.$Axis$.$MINIMUM_AXIS_BUFFER$ = 10;
  $dvt$$3$$.$Axis$.prototype.$SetOptions$ = function $$dvt$$3$$$$Axis$$$$SetOptions$$($dvt$$3$$) {
    $dvt$$3$$ ? this.$Options$ = "off" == $dvt$$3$$.rendered ? $dvt$$3$$ : this.$Defaults$.$calcOptions$($dvt$$3$$) : this.$Options$ || (this.$Options$ = this.$GetDefaults$());
  };
  $dvt$$3$$.$Axis$.prototype.$getPreferredSize$ = function $$dvt$$3$$$$Axis$$$$getPreferredSize$$($dvt$$3$$, $maxWidth$$6$$, $maxHeight$$3$$) {
    this.$SetOptions$($dvt$$3$$);
    return $DvtAxisRenderer$$.$getPreferredSize$(this, $maxWidth$$6$$, $maxHeight$$3$$);
  };
  $dvt$$3$$.$Axis$.prototype.$render$ = function $$dvt$$3$$$$Axis$$$$render$$($options$$12$$, $width$$30$$, $height$$24$$, $DvtAxisConstants$$, $DvtAxisDefaults$$) {
    this.$_cache$.$clearCache$();
    this.$SetOptions$($options$$12$$);
    this.$_navigablePeers$ = [];
    this.$Width$ = $width$$30$$;
    this.$Height$ = $height$$24$$;
    this.$removeChildren$();
    $DvtAxisConstants$$ || ($DvtAxisConstants$$ = 0);
    $DvtAxisDefaults$$ || ($DvtAxisDefaults$$ = 0);
    $DvtAxisRenderer$$.$render$(this, new $dvt$$3$$.$Rectangle$($DvtAxisConstants$$, $DvtAxisDefaults$$, $width$$30$$, $height$$24$$));
  };
  $dvt$$3$$.$Axis$.prototype.$__registerObject$ = function $$dvt$$3$$$$Axis$$$$__registerObject$$($dvt$$3$$) {
    (null != $dvt$$3$$.$getDatatip$() || null != $dvt$$3$$.$getAction$() || $dvt$$3$$.$isDrillable$()) && this.$_navigablePeers$.push($dvt$$3$$);
  };
  $dvt$$3$$.$Axis$.prototype.$isNavigable$ = function $$dvt$$3$$$$Axis$$$$isNavigable$$() {
    return 0 < this.$_navigablePeers$.length;
  };
  $dvt$$3$$.$Axis$.prototype.$getKeyboardFocus$ = function $$dvt$$3$$$$Axis$$$$getKeyboardFocus$$() {
    return null != this.$EventManager$ ? this.$EventManager$.$getFocus$() : null;
  };
  $dvt$$3$$.$Axis$.prototype.$setKeyboardFocus$ = function $$dvt$$3$$$$Axis$$$$setKeyboardFocus$$($DvtAxisRenderer$$, $isShowingFocusEffect$$) {
    if (null != this.$EventManager$) {
      for (var $focus_peers$$ = this.$_navigablePeers$, $DvtAxisConstants$$ = $DvtAxisRenderer$$.getId(), $DvtAxisDefaults$$ = !1, $DvtAxisAutomation$$ = 0;$DvtAxisAutomation$$ < $focus_peers$$.length;$DvtAxisAutomation$$++) {
        var $otherId$$ = $focus_peers$$[$DvtAxisAutomation$$].getId();
        if ($DvtAxisConstants$$ instanceof Array && $otherId$$ instanceof Array && $dvt$$3$$.$ArrayUtils$.$equals$($DvtAxisConstants$$, $otherId$$) || $DvtAxisConstants$$ === $otherId$$) {
          this.$EventManager$.$setFocusObj$($focus_peers$$[$DvtAxisAutomation$$]);
          $DvtAxisDefaults$$ = !0;
          $isShowingFocusEffect$$ && $focus_peers$$[$DvtAxisAutomation$$].$showKeyboardFocusEffect$();
          break;
        }
      }
      $DvtAxisDefaults$$ || this.$EventManager$.$setFocusObj$(this.$EventManager$.$KeyboardHandler$.$getDefaultNavigable$($focus_peers$$));
      if ($focus_peers$$ = this.$getKeyboardFocus$()) {
        $DvtAxisConstants$$ = $focus_peers$$.$getDisplayable$(), $DvtAxisConstants$$.$setAriaProperty$("label", $focus_peers$$.$getAriaLabel$()), this.$getCtx$().$setActiveElement$($DvtAxisConstants$$);
      }
    }
  };
  $dvt$$3$$.$Axis$.prototype.$processEvent$ = function $$dvt$$3$$$$Axis$$$$processEvent$$($dvt$$3$$, $DvtAxisRenderer$$) {
    this === $DvtAxisRenderer$$ && this.dispatchEvent($dvt$$3$$);
  };
  $dvt$$3$$.$Axis$.prototype.$getInfo$ = function $$dvt$$3$$$$Axis$$$$getInfo$$() {
    return this.$Info$;
  };
  $dvt$$3$$.$Axis$.prototype.$__setInfo$ = function $$dvt$$3$$$$Axis$$$$__setInfo$$($dvt$$3$$) {
    this.$Info$ = $dvt$$3$$;
  };
  $dvt$$3$$.$Axis$.prototype.getWidth = function $$dvt$$3$$$$Axis$$$getWidth$() {
    return this.$Width$;
  };
  $dvt$$3$$.$Axis$.prototype.getHeight = function $$dvt$$3$$$$Axis$$$getHeight$() {
    return this.$Height$;
  };
  $dvt$$3$$.$Axis$.prototype.$__setBounds$ = function $$dvt$$3$$$$Axis$$$$__setBounds$$($dvt$$3$$) {
    this.$_bounds$ = $dvt$$3$$;
  };
  $dvt$$3$$.$Axis$.prototype.$getAutomation$ = function $$dvt$$3$$$$Axis$$$$getAutomation$$() {
    return new $DvtAxisAutomation$$(this);
  };
  var $DvtAxisConstants$$ = {};
  $dvt$$3$$.$Obj$.$createSubclass$($DvtAxisConstants$$, $dvt$$3$$.$Obj$);
  $DvtAxisConstants$$.$TICK_LABEL$ = "tickLabel";
  $DvtAxisConstants$$.$TITLE$ = "title";
  $dvt$$3$$.$Obj$.$createSubclass$($DvtAxisAutomation$$, $dvt$$3$$.$Automation$);
  $DvtAxisAutomation$$.prototype.$GetSubIdForDomElement$ = function $$DvtAxisAutomation$$$$$GetSubIdForDomElement$$($DvtAxisRenderer$$) {
    var $labelIndex_logicalObj$$2$$ = this.$_axis$.$getEventManager$().$GetLogicalObject$($DvtAxisRenderer$$);
    if ($labelIndex_logicalObj$$2$$ && $labelIndex_logicalObj$$2$$ instanceof $dvt$$3$$.$SimpleObjPeer$) {
      if ($labelIndex_logicalObj$$2$$.$_params$.type == $DvtAxisConstants$$.$TITLE$) {
        return "title";
      }
      if (this.$_options$.groups) {
        $DvtAxisRenderer$$ = $labelIndex_logicalObj$$2$$.$_params$.level;
        for (var $labelIndex_logicalObj$$2$$ = this.$_axisInfo$.$getStartIndex$($labelIndex_logicalObj$$2$$.$_params$.index, $DvtAxisRenderer$$), $indexList$$2$$ = "", $DvtAxisDefaults$$ = 0;$DvtAxisDefaults$$ <= $DvtAxisRenderer$$;$DvtAxisDefaults$$++) {
          for (var $labels$$1$$ = this.$_axisInfo$.$getLabels$(this.$_axis$.$getCtx$(), $DvtAxisDefaults$$), $DvtAxisAutomation$$ = 0;$DvtAxisAutomation$$ < $labels$$1$$.length;$DvtAxisAutomation$$++) {
            var $index$$97$$ = this.$_axisInfo$.$getLabelIndex$($labels$$1$$[$DvtAxisAutomation$$]);
            this.$_axisInfo$.$getStartIndex$($index$$97$$, $DvtAxisDefaults$$) <= $labelIndex_logicalObj$$2$$ && this.$_axisInfo$.$getEndIndex$($index$$97$$, $DvtAxisDefaults$$) >= $labelIndex_logicalObj$$2$$ && ($indexList$$2$$ += "[" + this.$_axisInfo$.$getPosition$($index$$97$$, $DvtAxisDefaults$$) + "]");
          }
        }
        if (0 < $indexList$$2$$.length) {
          return "item" + $indexList$$2$$;
        }
      }
    }
    return null;
  };
  $DvtAxisAutomation$$.prototype.$getDomElementForSubId$ = function $$DvtAxisAutomation$$$$$getDomElementForSubId$$($DvtAxisRenderer$$) {
    if ("title" == $DvtAxisRenderer$$) {
      if ($DvtAxisRenderer$$ = this.$_axisInfo$.$getTitle$()) {
        return $DvtAxisRenderer$$.$getElem$();
      }
    } else {
      if (this.$_axisInfo$ instanceof $dvt$$3$$.$GroupAxisInfo$) {
        for (var $labelLevel$$ = $DvtAxisRenderer$$.split("[").length - 1 - 1, $labelIndex$$1$$ = 0, $DvtAxisConstants$$ = 0, $DvtAxisDefaults$$ = 0;$DvtAxisDefaults$$ <= $labelLevel$$;$DvtAxisDefaults$$++) {
          var $DvtAxisAutomation$$ = $DvtAxisRenderer$$.indexOf("]"), $groupIndex$$ = $DvtAxisRenderer$$.substring($DvtAxisRenderer$$.indexOf("[") + 1, $DvtAxisAutomation$$);
          $DvtAxisRenderer$$ = $DvtAxisRenderer$$.substring($DvtAxisAutomation$$ + 1);
          for (var $DvtAxisAutomation$$ = this.$_axisInfo$.$getLabels$(this.$_axis$.$getCtx$(), $DvtAxisDefaults$$), $index$$98$$, $i$$206_j$$24$$ = 0;$i$$206_j$$24$$ < $DvtAxisAutomation$$.length;$i$$206_j$$24$$++) {
            if ($index$$98$$ = this.$_axisInfo$.$getLabelIndex$($DvtAxisAutomation$$[$i$$206_j$$24$$]), this.$_axisInfo$.$getStartIndex$($index$$98$$, $DvtAxisDefaults$$) == $DvtAxisConstants$$) {
              $labelIndex$$1$$ = $index$$98$$;
              break;
            }
          }
          for ($i$$206_j$$24$$ = $labelIndex$$1$$;$i$$206_j$$24$$ < $DvtAxisAutomation$$.length;$i$$206_j$$24$$++) {
            if ($index$$98$$ = this.$_axisInfo$.$getLabelIndex$($DvtAxisAutomation$$[$i$$206_j$$24$$]), this.$_axisInfo$.$getPosition$($index$$98$$, $DvtAxisDefaults$$) == $groupIndex$$) {
              if (0 == $DvtAxisRenderer$$.length) {
                return $DvtAxisAutomation$$[$i$$206_j$$24$$].$getElem$();
              }
              $DvtAxisConstants$$ = this.$_axisInfo$.$getStartIndex$($index$$98$$, $DvtAxisDefaults$$);
              break;
            }
          }
        }
      }
    }
    return null;
  };
  $dvt$$3$$.$Obj$.$createSubclass$($DvtAxisDefaults$$, $dvt$$3$$.$BaseComponentDefaults$);
  $DvtAxisDefaults$$.$SKIN_NEXT$ = {skin:$dvt$$3$$.$CSSStyle$.$SKIN_NEXT$, layout:{titleGap:6}};
  $DvtAxisDefaults$$.$SKIN_ALTA$ = {axisLine:{lineColor:"#9E9E9E"}, majorTick:{lineColor:"rgba(196,206,215,0.4)", baselineColor:"auto"}, minorTick:{lineColor:"rgba(196,206,215,0.2)"}, tickLabel:{style:new $dvt$$3$$.$CSSStyle$($dvt$$3$$.$BaseComponentDefaults$.$FONT_FAMILY_ALTA$)}, titleStyle:new $dvt$$3$$.$CSSStyle$($dvt$$3$$.$BaseComponentDefaults$.$FONT_FAMILY_ALTA_12$)};
  $DvtAxisDefaults$$.$VERSION_1$ = {position:null, baselineScaling:"zero", axisLine:{lineColor:"#8A8DAC", lineWidth:1, rendered:"on"}, majorTick:{lineColor:"rgba(138,141,172,0.4)", lineWidth:1, rendered:"auto", lineStyle:"solid"}, minorTick:{lineColor:"rgba(138,141,172,0.20)", lineWidth:1, rendered:"off", lineStyle:"solid"}, tickLabel:{scaling:"auto", style:new $dvt$$3$$.$CSSStyle$($dvt$$3$$.$BaseComponentDefaults$.$FONT_FAMILY_SKYROS$ + "font-size: 11px; color: #333333;"), rotation:"auto", rendered:"on"}, 
  titleStyle:new $dvt$$3$$.$CSSStyle$($dvt$$3$$.$BaseComponentDefaults$.$FONT_FAMILY_SKYROS$ + "font-size: 11px; color: #737373;"), startGroupOffset:0, endGroupOffset:0, layout:{titleGap:4, radialLabelGap:5, insideLabelGapWidth:4, insideLabelGapHeight:2, hierarchicalLabelGapHeight:8, hierarchicalLabelGapWidth:15}, _locale:"en-us"};
  $DvtAxisDefaults$$.$getGapSize$ = function $$DvtAxisDefaults$$$$getGapSize$$($DvtAxisRenderer$$, $options$$13$$, $defaultSize$$) {
    $DvtAxisRenderer$$ = Math.min($dvt$$3$$.$TextUtils$.$getTextStringHeight$($DvtAxisRenderer$$, $options$$13$$.tickLabel.style) / 14, 1);
    return Math.ceil($defaultSize$$ * $DvtAxisRenderer$$);
  };
  $dvt$$3$$.$Obj$.$createSubclass$($DvtAxisEventManager$$, $dvt$$3$$.$EventManager$);
  $DvtAxisEventManager$$.$getUIParams$ = function $$DvtAxisEventManager$$$$getUIParams$$($dvt$$3$$, $DvtAxisRenderer$$, $index$$99$$, $DvtAxisConstants$$) {
    return {type:$dvt$$3$$, id:$DvtAxisRenderer$$, index:$index$$99$$, level:$DvtAxisConstants$$};
  };
  $DvtAxisEventManager$$.prototype.$getComponent$ = function $$DvtAxisEventManager$$$$$getComponent$$() {
    return this.$_axis$;
  };
  $DvtAxisEventManager$$.prototype.$OnClick$ = function $$DvtAxisEventManager$$$$$OnClick$$($dvt$$3$$) {
    $DvtAxisEventManager$$.$superclass$.$OnClick$.call(this, $dvt$$3$$);
    var $DvtAxisRenderer$$ = this.$GetLogicalObject$($dvt$$3$$.target);
    $DvtAxisRenderer$$ && this.$processActionEvent$($DvtAxisRenderer$$) && $dvt$$3$$.stopPropagation();
  };
  $DvtAxisEventManager$$.prototype.$HandleTouchClickInternal$ = function $$DvtAxisEventManager$$$$$HandleTouchClickInternal$$($dvt$$3$$) {
    var $DvtAxisRenderer$$ = this.$GetLogicalObject$($dvt$$3$$.target);
    $DvtAxisRenderer$$ && ($dvt$$3$$ = $dvt$$3$$.$touchEvent$, this.$processActionEvent$($DvtAxisRenderer$$) && $dvt$$3$$ && $dvt$$3$$.preventDefault());
  };
  $DvtAxisEventManager$$.prototype.$processActionEvent$ = function $$DvtAxisEventManager$$$$$processActionEvent$$($DvtAxisRenderer$$) {
    return $DvtAxisRenderer$$ && $DvtAxisRenderer$$.$getAction$ && $DvtAxisRenderer$$.$getAction$() ? (this.$FireEvent$($dvt$$3$$.$EventFactory$.$newActionEvent$("action", $DvtAxisRenderer$$.$getAction$(), $DvtAxisRenderer$$.getId()), this.$_axis$), !0) : $DvtAxisRenderer$$ instanceof $DvtAxisObjPeer$$ && $DvtAxisRenderer$$.$isDrillable$() ? (this.$FireEvent$($dvt$$3$$.$EventFactory$.$newChartDrillEvent$($DvtAxisRenderer$$.getId(), null, $DvtAxisRenderer$$.$getGroup$()), this.$_axis$), !0) : !1;
  };
  $DvtAxisEventManager$$.prototype.$isDndSupported$ = function $$DvtAxisEventManager$$$$$isDndSupported$$() {
    return !0;
  };
  $DvtAxisEventManager$$.prototype.$GetDragSourceType$ = function $$DvtAxisEventManager$$$$$GetDragSourceType$$() {
    var $dvt$$3$$ = this.$DragSource$.$_dragObj$;
    return $dvt$$3$$ instanceof $DvtAxisObjPeer$$ && null != $dvt$$3$$.$getGroup$() ? "groups" : null;
  };
  $DvtAxisEventManager$$.prototype.$GetDragDataContexts$ = function $$DvtAxisEventManager$$$$$GetDragDataContexts$$() {
    var $dvt$$3$$ = this.$DragSource$.$_dragObj$;
    return $dvt$$3$$ instanceof $DvtAxisObjPeer$$ ? [{id:$dvt$$3$$.getId(), group:$dvt$$3$$.$getGroup$(), label:$dvt$$3$$.$getLabel$().$getTextString$()}] : [];
  };
  $dvt$$3$$.$Obj$.$createSubclass$($DvtAxisKeyboardHandler$$, $dvt$$3$$.$KeyboardHandler$);
  $DvtAxisKeyboardHandler$$.prototype.Init = function $$DvtAxisKeyboardHandler$$$$Init$($dvt$$3$$, $DvtAxisRenderer$$) {
    $DvtAxisKeyboardHandler$$.$superclass$.Init.call(this, $dvt$$3$$);
    this.$_axis$ = $DvtAxisRenderer$$;
  };
  $DvtAxisKeyboardHandler$$.prototype.$processKeyDown$ = function $$DvtAxisKeyboardHandler$$$$$processKeyDown$$($DvtAxisRenderer$$) {
    var $keyCode$$10_navigables$$2$$ = $DvtAxisRenderer$$.keyCode, $currentNavigable$$3$$ = this.$_eventManager$.$getFocus$(), $DvtAxisConstants$$ = null;
    $keyCode$$10_navigables$$2$$ == $dvt$$3$$.KeyboardEvent.$TAB$ ? ($currentNavigable$$3$$ && ($dvt$$3$$.$EventManager$.$consumeEvent$($DvtAxisRenderer$$), $DvtAxisConstants$$ = $currentNavigable$$3$$), $keyCode$$10_navigables$$2$$ = this.$_axis$.$_navigablePeers$, 0 < $keyCode$$10_navigables$$2$$.length && ($dvt$$3$$.$EventManager$.$consumeEvent$($DvtAxisRenderer$$), $DvtAxisConstants$$ = this.$getDefaultNavigable$($keyCode$$10_navigables$$2$$))) : $keyCode$$10_navigables$$2$$ == $dvt$$3$$.KeyboardEvent.$ENTER$ ? 
    $currentNavigable$$3$$ && (this.$_eventManager$.$processActionEvent$($currentNavigable$$3$$), $dvt$$3$$.$EventManager$.$consumeEvent$($DvtAxisRenderer$$)) : $DvtAxisConstants$$ = $DvtAxisKeyboardHandler$$.$superclass$.$processKeyDown$.call(this, $DvtAxisRenderer$$);
    return $DvtAxisConstants$$;
  };
  var $DvtAxisRenderer$$ = {};
  $dvt$$3$$.$Obj$.$createSubclass$($DvtAxisRenderer$$, $dvt$$3$$.$Obj$);
  $DvtAxisRenderer$$.$_MAX_TITLE_LINE_WRAP$ = 3;
  $DvtAxisRenderer$$.$getPreferredSize$ = function $$DvtAxisRenderer$$$$getPreferredSize$$($axis$$6_innerLabelWidth_innerLabels$$, $availWidth$$7$$, $availHeight$$7$$) {
    var $DvtAxisConstants$$ = $DvtAxisRenderer$$.$_createAxisInfo$($axis$$6_innerLabelWidth_innerLabels$$, new $dvt$$3$$.$Rectangle$(0, 0, $availWidth$$7$$, $availHeight$$7$$)), $DvtAxisDefaults$$ = $axis$$6_innerLabelWidth_innerLabels$$.$getCtx$(), $DvtAxisAutomation$$ = $axis$$6_innerLabelWidth_innerLabels$$.$getOptions$(), $bHoriz$$ = "top" == $DvtAxisAutomation$$.position || "bottom" == $DvtAxisAutomation$$.position;
    if ("off" == $DvtAxisAutomation$$.rendered || 0 >= $availWidth$$7$$ || 0 >= $availHeight$$7$$) {
      return $bHoriz$$ ? new $dvt$$3$$.$Dimension$($availWidth$$7$$, 0) : new $dvt$$3$$.$Dimension$(0, $availHeight$$7$$);
    }
    var $size$$13_titleHeight$$ = $DvtAxisRenderer$$.$getTitleHeight$($DvtAxisDefaults$$, $DvtAxisAutomation$$, .8 * ($bHoriz$$ ? $availWidth$$7$$ : $availHeight$$7$$), .8 * ($bHoriz$$ ? $availHeight$$7$$ : $availWidth$$7$$)), $size$$13_titleHeight$$ = 0 != $size$$13_titleHeight$$ ? $size$$13_titleHeight$$ + $DvtAxisRenderer$$.$_getTitleGap$($axis$$6_innerLabelWidth_innerLabels$$) : 0;
    "on" == $DvtAxisAutomation$$.tickLabel.rendered && "inside" != $DvtAxisAutomation$$.tickLabel.position && ($bHoriz$$ ? ($DvtAxisAutomation$$ = $dvt$$3$$.$TextUtils$.$getTextStringHeight$($DvtAxisDefaults$$, $DvtAxisAutomation$$.tickLabel.style), $DvtAxisConstants$$ instanceof $dvt$$3$$.$DataAxisInfo$ ? $size$$13_titleHeight$$ += $DvtAxisAutomation$$ : $DvtAxisConstants$$ instanceof $dvt$$3$$.$TimeAxisInfo$ ? $size$$13_titleHeight$$ += null != $DvtAxisConstants$$.$getLabels$($DvtAxisDefaults$$, 
    1) ? 2 * $DvtAxisAutomation$$ : $DvtAxisAutomation$$ : $DvtAxisConstants$$ instanceof $dvt$$3$$.$GroupAxisInfo$ && ($size$$13_titleHeight$$ = $DvtAxisRenderer$$.$_getGroupAxisPreferredSize$($axis$$6_innerLabelWidth_innerLabels$$, $DvtAxisConstants$$, $size$$13_titleHeight$$, $availHeight$$7$$, $bHoriz$$))) : $DvtAxisConstants$$ instanceof $dvt$$3$$.$DataAxisInfo$ ? $size$$13_titleHeight$$ += $dvt$$3$$.$TextUtils$.$getMaxTextDimensions$($DvtAxisConstants$$.$getLabels$($DvtAxisDefaults$$)).$w$ : 
    $DvtAxisConstants$$ instanceof $dvt$$3$$.$TimeAxisInfo$ ? ($axis$$6_innerLabelWidth_innerLabels$$ = $DvtAxisConstants$$.$getLabels$($DvtAxisDefaults$$), $axis$$6_innerLabelWidth_innerLabels$$ = $dvt$$3$$.$TextUtils$.$getMaxTextDimensions$($axis$$6_innerLabelWidth_innerLabels$$).$w$, $DvtAxisConstants$$ = $DvtAxisConstants$$.$getLabels$($DvtAxisDefaults$$, 1), $DvtAxisConstants$$ = null != $DvtAxisConstants$$ ? $dvt$$3$$.$TextUtils$.$getMaxTextDimensions$($DvtAxisConstants$$).$w$ : 0, $size$$13_titleHeight$$ += 
    Math.max($axis$$6_innerLabelWidth_innerLabels$$, $DvtAxisConstants$$)) : $DvtAxisConstants$$ instanceof $dvt$$3$$.$GroupAxisInfo$ && ($size$$13_titleHeight$$ = $DvtAxisRenderer$$.$_getGroupAxisPreferredSize$($axis$$6_innerLabelWidth_innerLabels$$, $DvtAxisConstants$$, $size$$13_titleHeight$$, $availWidth$$7$$, $bHoriz$$)));
    return $bHoriz$$ ? new $dvt$$3$$.$Dimension$($availWidth$$7$$, Math.min($size$$13_titleHeight$$, $availHeight$$7$$)) : new $dvt$$3$$.$Dimension$(Math.min($size$$13_titleHeight$$, $availWidth$$7$$), $availHeight$$7$$);
  };
  $DvtAxisRenderer$$.$render$ = function $$DvtAxisRenderer$$$$render$$($dvt$$3$$, $availSpace$$1$$) {
    var $axisInfo$$2$$ = $DvtAxisRenderer$$.$_createAxisInfo$($dvt$$3$$, $availSpace$$1$$);
    "off" != $dvt$$3$$.$getOptions$().rendered && ($dvt$$3$$.$__setBounds$($availSpace$$1$$.clone()), $DvtAxisRenderer$$.$_renderBackground$($dvt$$3$$, $availSpace$$1$$), $DvtAxisRenderer$$.$_renderTitle$($dvt$$3$$, $axisInfo$$2$$, $availSpace$$1$$), $DvtAxisRenderer$$.$_renderLabels$($dvt$$3$$, $axisInfo$$2$$, $availSpace$$1$$));
  };
  $DvtAxisRenderer$$.$_createAxisInfo$ = function $$DvtAxisRenderer$$$$_createAxisInfo$$($DvtAxisRenderer$$, $availSpace$$2$$) {
    var $axisInfo$$3$$ = $dvt$$3$$.$AxisInfo$.newInstance($DvtAxisRenderer$$.$getCtx$(), $DvtAxisRenderer$$.$getOptions$(), $availSpace$$2$$);
    $DvtAxisRenderer$$.$__setInfo$($axisInfo$$3$$);
    return $axisInfo$$3$$;
  };
  $DvtAxisRenderer$$.$_getTitleGap$ = function $$DvtAxisRenderer$$$$_getTitleGap$$($dvt$$3$$) {
    var $DvtAxisRenderer$$ = $dvt$$3$$.$getOptions$();
    return $DvtAxisDefaults$$.$getGapSize$($dvt$$3$$.$getCtx$(), $DvtAxisRenderer$$, $DvtAxisRenderer$$.layout.titleGap);
  };
  $DvtAxisRenderer$$.$_renderBackground$ = function $$DvtAxisRenderer$$$$_renderBackground$$($DvtAxisRenderer$$, $availSpace$$3$$) {
    var $background$$1_options$$17_position$$6_yGap$$ = $DvtAxisRenderer$$.$getOptions$();
    if ($background$$1_options$$17_position$$6_yGap$$.dnd) {
      var $DvtAxisConstants$$ = $background$$1_options$$17_position$$6_yGap$$.dnd.drop;
      if (0 < Object.keys($DvtAxisConstants$$.xAxis).length || 0 < Object.keys($DvtAxisConstants$$.yAxis).length || 0 < Object.keys($DvtAxisConstants$$.y2Axis).length) {
        $background$$1_options$$17_position$$6_yGap$$ = $background$$1_options$$17_position$$6_yGap$$.position, $background$$1_options$$17_position$$6_yGap$$ = ($DvtAxisConstants$$ = "top" == $background$$1_options$$17_position$$6_yGap$$ || "bottom" == $background$$1_options$$17_position$$6_yGap$$) ? 4 : 10, $DvtAxisConstants$$ = $DvtAxisConstants$$ ? 10 : 4, $background$$1_options$$17_position$$6_yGap$$ = new $dvt$$3$$.Rect($DvtAxisRenderer$$.$getCtx$(), $availSpace$$3$$.x - $DvtAxisConstants$$, 
        $availSpace$$3$$.y - $background$$1_options$$17_position$$6_yGap$$, $availSpace$$3$$.$w$ + 2 * $DvtAxisConstants$$, $availSpace$$3$$.$h$ + 2 * $background$$1_options$$17_position$$6_yGap$$), $background$$1_options$$17_position$$6_yGap$$.$setInvisibleFill$(), $DvtAxisRenderer$$.$addChild$($background$$1_options$$17_position$$6_yGap$$), $DvtAxisRenderer$$.$_cache$.$putToCache$("background", $background$$1_options$$17_position$$6_yGap$$);
      }
    }
  };
  $DvtAxisRenderer$$.$_renderTitle$ = function $$DvtAxisRenderer$$$$_renderTitle$$($axis$$11_isRTL$$, $axisInfo$$4$$, $availSpace$$4$$) {
    var $DvtAxisDefaults$$ = $axis$$11_isRTL$$.$getOptions$();
    if ($DvtAxisDefaults$$.title) {
      var $position$$7$$ = $DvtAxisDefaults$$.position;
      if ("radial" != $position$$7$$ && "tangential" != $position$$7$$) {
        var $DvtAxisAutomation$$ = "top" == $DvtAxisDefaults$$.position || "bottom" == $DvtAxisDefaults$$.position, $gap$$2_maxLabelWidth$$2$$ = $DvtAxisAutomation$$ ? $availSpace$$4$$.$w$ : $availSpace$$4$$.$h$, $DvtAxisAutomation$$ = $DvtAxisAutomation$$ ? $availSpace$$4$$.$h$ : $availSpace$$4$$.$w$, $titleHeight$$1_titleStyle$$ = $DvtAxisDefaults$$.titleStyle, $isMultiLine$$ = $DvtAxisRenderer$$.$isWrapEnabled$($titleHeight$$1_titleStyle$$);
        if ($DvtAxisDefaults$$ = $DvtAxisRenderer$$.$_createText$($axis$$11_isRTL$$.$getEventManager$(), $axis$$11_isRTL$$, $DvtAxisDefaults$$.title, $titleHeight$$1_titleStyle$$, $gap$$2_maxLabelWidth$$2$$, $DvtAxisAutomation$$, $DvtAxisEventManager$$.$getUIParams$($DvtAxisConstants$$.$TITLE$), $isMultiLine$$)) {
          $gap$$2_maxLabelWidth$$2$$ = $DvtAxisRenderer$$.$_getTitleGap$($axis$$11_isRTL$$), $DvtAxisAutomation$$ = ($axisInfo$$4$$.$getStartOverflow$() - $axisInfo$$4$$.$getEndOverflow$()) / 2, $axis$$11_isRTL$$ = $dvt$$3$$.$Agent$.$isRightToLeft$($axis$$11_isRTL$$.$getCtx$()), $titleHeight$$1_titleStyle$$ = $dvt$$3$$.$TextUtils$.$getTextHeight$($DvtAxisDefaults$$), $DvtAxisDefaults$$.$alignCenter$(), "top" == $position$$7$$ ? ($DvtAxisDefaults$$.$setX$($availSpace$$4$$.x + $DvtAxisAutomation$$ + 
          $availSpace$$4$$.$w$ / 2), $DvtAxisDefaults$$.$setY$($availSpace$$4$$.y), $availSpace$$4$$.y += $titleHeight$$1_titleStyle$$ + $gap$$2_maxLabelWidth$$2$$, $availSpace$$4$$.$h$ -= $titleHeight$$1_titleStyle$$ + $gap$$2_maxLabelWidth$$2$$) : "bottom" == $position$$7$$ ? ($DvtAxisDefaults$$.$setX$($availSpace$$4$$.x + $DvtAxisAutomation$$ + $availSpace$$4$$.$w$ / 2), $DvtAxisDefaults$$.$setY$($availSpace$$4$$.y + $availSpace$$4$$.$h$ - $titleHeight$$1_titleStyle$$), $availSpace$$4$$.$h$ -= 
          $titleHeight$$1_titleStyle$$ + $gap$$2_maxLabelWidth$$2$$) : "left" == $position$$7$$ ? ($DvtAxisDefaults$$.$alignMiddle$(), $DvtAxisDefaults$$.$setRotation$($axis$$11_isRTL$$ ? Math.PI / 2 : 3 * Math.PI / 2), $DvtAxisDefaults$$.$setTranslate$($availSpace$$4$$.x + $titleHeight$$1_titleStyle$$ / 2, $availSpace$$4$$.y + $availSpace$$4$$.$h$ / 2), $availSpace$$4$$.x += $titleHeight$$1_titleStyle$$ + $gap$$2_maxLabelWidth$$2$$, $availSpace$$4$$.$w$ -= $titleHeight$$1_titleStyle$$ + $gap$$2_maxLabelWidth$$2$$) : 
          "right" == $position$$7$$ && ($DvtAxisDefaults$$.$alignMiddle$(), $DvtAxisDefaults$$.$setRotation$($axis$$11_isRTL$$ ? Math.PI / 2 : 3 * Math.PI / 2), $DvtAxisDefaults$$.$setTranslate$($availSpace$$4$$.x + $availSpace$$4$$.$w$ - $titleHeight$$1_titleStyle$$ / 2, $availSpace$$4$$.y + $availSpace$$4$$.$h$ / 2), $availSpace$$4$$.$w$ -= $titleHeight$$1_titleStyle$$ + $gap$$2_maxLabelWidth$$2$$), $axisInfo$$4$$.$setTitle$($DvtAxisDefaults$$);
        }
      }
    }
  };
  $DvtAxisRenderer$$.$_renderLabels$ = function $$DvtAxisRenderer$$$$_renderLabels$$($dvt$$3$$, $axisInfo$$5$$, $availSpace$$5$$) {
    var $DvtAxisConstants$$ = $dvt$$3$$.$getOptions$();
    "on" == $DvtAxisConstants$$.tickLabel.rendered && ($DvtAxisConstants$$ = $DvtAxisConstants$$.position, "top" == $DvtAxisConstants$$ || "bottom" == $DvtAxisConstants$$ ? $DvtAxisRenderer$$.$_renderLabelsHoriz$($dvt$$3$$, $axisInfo$$5$$, $availSpace$$5$$) : "tangential" == $DvtAxisConstants$$ ? $DvtAxisRenderer$$.$_renderLabelsTangent$($dvt$$3$$, $axisInfo$$5$$, $availSpace$$5$$) : $DvtAxisRenderer$$.$_renderLabelsVert$($dvt$$3$$, $axisInfo$$5$$, $availSpace$$5$$), $DvtAxisRenderer$$.$_renderGroupSeparators$($dvt$$3$$, 
    $axisInfo$$5$$));
  };
  $DvtAxisRenderer$$.$_renderLabelsHoriz$ = function $$DvtAxisRenderer$$$$_renderLabelsHoriz$$($DvtAxisRenderer$$, $axisInfo$$6$$, $availSpace$$6$$) {
    for (var $context$$79_lv2Labels$$ = $DvtAxisRenderer$$.$getCtx$(), $offset$$17_options$$20$$ = $DvtAxisRenderer$$.$getOptions$(), $DvtAxisAutomation$$ = $offset$$17_options$$20$$.position, $isTickInside_minOverflow$$ = "inside" == $offset$$17_options$$20$$.tickLabel.position, $isRTL$$1$$ = $dvt$$3$$.$Agent$.$isRightToLeft$($context$$79_lv2Labels$$), $isGroupAxis_overflow1_x$$86$$ = $axisInfo$$6$$ instanceof $dvt$$3$$.$GroupAxisInfo$, $isHierarchical_overflow2$$ = $isGroupAxis_overflow1_x$$86$$ && 
    1 < $axisInfo$$6$$.$getNumLevels$(), $levelIdx$$2$$ = $isHierarchical_overflow2$$ ? 0 : null, $labels$$3$$ = $axisInfo$$6$$.$getLabels$($context$$79_lv2Labels$$, $levelIdx$$2$$), $gap$$3$$ = $isHierarchical_overflow2$$ ? $DvtAxisDefaults$$.$getGapSize$($context$$79_lv2Labels$$, $offset$$17_options$$20$$, $offset$$17_options$$20$$.layout.hierarchicalLabelGapHeight) : 0;$labels$$3$$;) {
      for (var $height$$25_index$$100_isMultiline_isRotated$$ = 0, $maxLvlHeight$$ = 0, $i$$207$$ = 0;$i$$207$$ < $labels$$3$$.length;$i$$207$$++) {
        var $label$$22$$ = $labels$$3$$[$i$$207$$];
        if (null != $label$$22$$) {
          $height$$25_index$$100_isMultiline_isRotated$$ = $label$$22$$ instanceof $dvt$$3$$.$MultilineText$ || $label$$22$$ instanceof $dvt$$3$$.$BackgroundMultilineText$;
          if ($axisInfo$$6$$.$isLabelRotated$($levelIdx$$2$$)) {
            if ((!$height$$25_index$$100_isMultiline_isRotated$$ || $height$$25_index$$100_isMultiline_isRotated$$ && !$label$$22$$.$isWrapEnabled$()) && !$dvt$$3$$.$TextUtils$.$fitText$($label$$22$$, $availSpace$$6$$.$h$, $availSpace$$6$$.$w$, $DvtAxisRenderer$$)) {
              continue;
            }
            $isRTL$$1$$ ? $label$$22$$.$alignLeft$() : $label$$22$$.$alignRight$();
            $isHierarchical_overflow2$$ ? ($height$$25_index$$100_isMultiline_isRotated$$ = $dvt$$3$$.$TextUtils$.$getTextWidth$($label$$22$$), $label$$22$$.$setTranslateY$($availSpace$$6$$.$h$ - $height$$25_index$$100_isMultiline_isRotated$$), $maxLvlHeight$$ = Math.max($maxLvlHeight$$, $height$$25_index$$100_isMultiline_isRotated$$)) : $label$$22$$.$setTranslateY$($availSpace$$6$$.y);
          } else {
            if (!$isTickInside_minOverflow$$ && $dvt$$3$$.$TextUtils$.$guessTextDimensions$($label$$22$$).$h$ - 1 > $availSpace$$6$$.$h$) {
              continue;
            }
            $isHierarchical_overflow2$$ && "bottom" == $DvtAxisAutomation$$ ? $label$$22$$.$setY$($availSpace$$6$$.$h$) : "bottom" == $DvtAxisAutomation$$ ? $label$$22$$.$setY$($availSpace$$6$$.y) : $label$$22$$.$setY$($availSpace$$6$$.y + $availSpace$$6$$.$h$);
            !$isHierarchical_overflow2$$ && ("bottom" == $DvtAxisAutomation$$ && !$isTickInside_minOverflow$$ || "top" == $DvtAxisAutomation$$ && $isTickInside_minOverflow$$) ? $label$$22$$.$alignTop$() : $isHierarchical_overflow2$$ && "top" == $DvtAxisAutomation$$ ? $label$$22$$.$alignTop$() : $label$$22$$.$alignBottom$();
            if ($isHierarchical_overflow2$$) {
              $maxLvlHeight$$ = Math.max($maxLvlHeight$$, $dvt$$3$$.$TextUtils$.$guessTextDimensions$($label$$22$$).$h$);
            } else {
              if ($isTickInside_minOverflow$$) {
                var $gap$$3$$ = $DvtAxisDefaults$$.$getGapSize$($context$$79_lv2Labels$$, $offset$$17_options$$20$$, $offset$$17_options$$20$$.layout.insideLabelGapWidth);
                $isRTL$$1$$ ? $label$$22$$.$alignRight$() : $label$$22$$.$alignLeft$();
                $label$$22$$.$setX$($label$$22$$.$getX$() + $gap$$3$$ * ($isRTL$$1$$ ? -1 : 1));
              }
            }
          }
          var $height$$25_index$$100_isMultiline_isRotated$$ = $isGroupAxis_overflow1_x$$86$$ ? $axisInfo$$6$$.$getLabelIndex$($label$$22$$) : $i$$207$$, $datatip_isOuterLevel$$ = $axisInfo$$6$$.$getDatatip$($height$$25_index$$100_isMultiline_isRotated$$, $levelIdx$$2$$), $tooltip$$6$$ = $label$$22$$.$getUntruncatedTextString$(), $action$$9$$ = $axisInfo$$6$$.$getAction$($height$$25_index$$100_isMultiline_isRotated$$, $levelIdx$$2$$), $drillable$$ = $axisInfo$$6$$.$isDrillable$($height$$25_index$$100_isMultiline_isRotated$$, 
          $levelIdx$$2$$), $group$$6$$ = $axisInfo$$6$$.$getGroup$($height$$25_index$$100_isMultiline_isRotated$$, $levelIdx$$2$$);
          $DvtAxisRenderer$$.$getEventManager$().$associate$($label$$22$$, new $DvtAxisObjPeer$$($DvtAxisRenderer$$, $label$$22$$, $group$$6$$, $action$$9$$, $drillable$$, $tooltip$$6$$, $datatip_isOuterLevel$$, $DvtAxisEventManager$$.$getUIParams$($DvtAxisConstants$$.$TICK_LABEL$, $label$$22$$.$getTextString$(), $height$$25_index$$100_isMultiline_isRotated$$, $levelIdx$$2$$)));
          $isHierarchical_overflow2$$ ? $axisInfo$$6$$.$setLastRenderedLevel$($levelIdx$$2$$) : $maxLvlHeight$$ = Math.max($maxLvlHeight$$, $dvt$$3$$.$TextUtils$.$guessTextDimensions$($label$$22$$).$h$);
          $DvtAxisRenderer$$.$addChild$($label$$22$$);
        }
      }
      if ($isHierarchical_overflow2$$) {
        for ($i$$207$$ = 0;$i$$207$$ < $labels$$3$$.length;$i$$207$$++) {
          $label$$22$$ = $labels$$3$$[$i$$207$$], null != $label$$22$$ && ($height$$25_index$$100_isMultiline_isRotated$$ = $axisInfo$$6$$.$isLabelRotated$($levelIdx$$2$$), $datatip_isOuterLevel$$ = $levelIdx$$2$$ < $axisInfo$$6$$.$getNumLevels$() - 1, !$height$$25_index$$100_isMultiline_isRotated$$ && $datatip_isOuterLevel$$ ? ($label$$22$$.$setY$($availSpace$$6$$.$h$ - $maxLvlHeight$$ / 2), $label$$22$$.$alignMiddle$()) : $label$$22$$.$setTranslateY$($availSpace$$6$$.$h$ - $maxLvlHeight$$));
        }
        $availSpace$$6$$.y += $maxLvlHeight$$ + $gap$$3$$;
        $availSpace$$6$$.$h$ -= $maxLvlHeight$$ + $gap$$3$$;
        $levelIdx$$2$$++;
        $labels$$3$$ = $axisInfo$$6$$.$getLabels$($DvtAxisRenderer$$.$getCtx$(), $levelIdx$$2$$);
      } else {
        $availSpace$$6$$.y += $maxLvlHeight$$, $availSpace$$6$$.$h$ -= $maxLvlHeight$$, $labels$$3$$ = null;
      }
    }
    if ($axisInfo$$6$$ instanceof $dvt$$3$$.$TimeAxisInfo$ && ($labels$$3$$ = $axisInfo$$6$$.$getLabels$($DvtAxisRenderer$$.$getCtx$()), $context$$79_lv2Labels$$ = $axisInfo$$6$$.$getLabels$($DvtAxisRenderer$$.$getCtx$(), 1), $offset$$17_options$$20$$ = 0, null != $context$$79_lv2Labels$$)) {
      for ($i$$207$$ = 0;$i$$207$$ < $context$$79_lv2Labels$$.length;$i$$207$$++) {
        $label$$22$$ = $context$$79_lv2Labels$$[$i$$207$$], null == $label$$22$$ || $dvt$$3$$.$TextUtils$.$guessTextDimensions$($label$$22$$).$h$ - 1 > $availSpace$$6$$.$h$ || ($DvtAxisRenderer$$.$getEventManager$().$associate$($label$$22$$, new $dvt$$3$$.$SimpleObjPeer$(null, null, null, $DvtAxisEventManager$$.$getUIParams$($DvtAxisConstants$$.$TICK_LABEL$, $label$$22$$.$getTextString$()))), $isHierarchical_overflow2$$ = $isGroupAxis_overflow1_x$$86$$ = 0, $DvtAxisAutomation$$ = $axisInfo$$6$$.$getOptions$()._maxOverflowCoord, 
        $isTickInside_minOverflow$$ = $axisInfo$$6$$.$getOptions$()._minOverflowCoord, null != $labels$$3$$[$i$$207$$] && ($offset$$17_options$$20$$ = $labels$$3$$[$i$$207$$].$measureDimensions$().$w$ / 2, $isGroupAxis_overflow1_x$$86$$ = $axisInfo$$6$$.$_level1Overflow$[$i$$207$$], $isHierarchical_overflow2$$ = $axisInfo$$6$$.$_level2Overflow$[$i$$207$$]), 0 == $isGroupAxis_overflow1_x$$86$$ && 0 == $isHierarchical_overflow2$$ ? ($isGroupAxis_overflow1_x$$86$$ = $label$$22$$.$getX$(), $label$$22$$.$setX$($isRTL$$1$$ ? 
        $isGroupAxis_overflow1_x$$86$$ + $offset$$17_options$$20$$ <= $DvtAxisAutomation$$ ? $isGroupAxis_overflow1_x$$86$$ + $offset$$17_options$$20$$ : $DvtAxisAutomation$$ : $isGroupAxis_overflow1_x$$86$$ - $offset$$17_options$$20$$ >= $isTickInside_minOverflow$$ ? $isGroupAxis_overflow1_x$$86$$ - $offset$$17_options$$20$$ : $isTickInside_minOverflow$$)) : 0 > $isGroupAxis_overflow1_x$$86$$ ? $label$$22$$.$setX$($isTickInside_minOverflow$$) : 0 < $isGroupAxis_overflow1_x$$86$$ && $label$$22$$.$setX$($DvtAxisAutomation$$), 
        $label$$22$$.$alignTop$(), $label$$22$$.$setY$($availSpace$$6$$.y), $DvtAxisRenderer$$.$addChild$($label$$22$$));
      }
    }
  };
  $DvtAxisRenderer$$.$_renderLabelsVert$ = function $$DvtAxisRenderer$$$$_renderLabelsVert$$($DvtAxisRenderer$$, $axisInfo$$7$$, $availSpace$$7$$) {
    function $formatLabelVert$$($gap$$4_lv2Labels$$1$$, $formatLabelVert$$) {
      var $datatip$$1_fitText$$1_isMultiline$$1_labelY_opacity$$1$$ = $gap$$4_lv2Labels$$1$$ instanceof $dvt$$3$$.$MultilineText$ || $gap$$4_lv2Labels$$1$$ instanceof $dvt$$3$$.$BackgroundMultilineText$, $datatip$$1_fitText$$1_isMultiline$$1_labelY_opacity$$1$$ = !$datatip$$1_fitText$$1_isMultiline$$1_labelY_opacity$$1$$ || $datatip$$1_fitText$$1_isMultiline$$1_labelY_opacity$$1$$ && !$gap$$4_lv2Labels$$1$$.$isWrapEnabled$();
      if (!($isHierarchical$$1$$ && $dvt$$3$$.$TextUtils$.$getMaxTextDimensions$($labels$$4$$).$w$ - 1 > $availSpace$$7$$.$w$) && ($isHierarchical$$1$$ || $isTickInside$$1$$ || !$datatip$$1_fitText$$1_isMultiline$$1_labelY_opacity$$1$$ || $dvt$$3$$.$TextUtils$.$fitText$($gap$$4_lv2Labels$$1$$, $availSpace$$7$$.$w$, $availSpace$$7$$.$h$, $DvtAxisRenderer$$))) {
        $formatLabelVert$$ = $isGroupAxis$$1$$ ? $axisInfo$$7$$.$getLabelIndex$($gap$$4_lv2Labels$$1$$) : $formatLabelVert$$;
        var $datatip$$1_fitText$$1_isMultiline$$1_labelY_opacity$$1$$ = $axisInfo$$7$$.$getDatatip$($formatLabelVert$$, $levelIdx$$3$$), $bboxDims_tooltip$$7$$ = $gap$$4_lv2Labels$$1$$.$getUntruncatedTextString$(), $i$$208$$ = $axisInfo$$7$$.$getAction$($formatLabelVert$$, $levelIdx$$3$$), $label$$23$$ = $axisInfo$$7$$.$isDrillable$($formatLabelVert$$, $levelIdx$$3$$), $group$$7$$ = $axisInfo$$7$$.$getGroup$($formatLabelVert$$, $levelIdx$$3$$);
        $DvtAxisRenderer$$.$getEventManager$().$associate$($gap$$4_lv2Labels$$1$$, new $DvtAxisObjPeer$$($DvtAxisRenderer$$, $gap$$4_lv2Labels$$1$$, $group$$7$$, $i$$208$$, $label$$23$$, $bboxDims_tooltip$$7$$, $datatip$$1_fitText$$1_isMultiline$$1_labelY_opacity$$1$$, $DvtAxisEventManager$$.$getUIParams$($DvtAxisConstants$$.$TICK_LABEL$, $gap$$4_lv2Labels$$1$$.$getTextString$(), $formatLabelVert$$, $levelIdx$$3$$)));
        $isHierarchical$$1$$ ? ($gap$$4_lv2Labels$$1$$.$alignRight$(), $gap$$4_lv2Labels$$1$$.$setX$($isRTL$$2$$ ? $availSpace$$7$$.$w$ : $availSpace$$7$$.x + $maxLvlWidth$$), $axisInfo$$7$$.$setLastRenderedLevel$($levelIdx$$3$$)) : ($gap$$4_lv2Labels$$1$$.$setX$($labelX$$), $isNumerical$$ || "right" != $DvtAxisAutomation$$ ? $gap$$4_lv2Labels$$1$$.$alignRight$() : $gap$$4_lv2Labels$$1$$.$alignLeft$(), $isTickInside$$1$$ && ($gap$$4_lv2Labels$$1$$.$alignBottom$(), $gap$$4_lv2Labels$$1$$.$setY$($gap$$4_lv2Labels$$1$$.$getY$() - 
        $DvtAxisDefaults$$.$getGapSize$($context$$80$$, $options$$21$$, $options$$21$$.layout.insideLabelGapHeight))), "radial" == $DvtAxisAutomation$$ && ($datatip$$1_fitText$$1_isMultiline$$1_labelY_opacity$$1$$ = $gap$$4_lv2Labels$$1$$.$getY$(), $gap$$4_lv2Labels$$1$$.$setY$($availSpace$$7$$.y + $availSpace$$7$$.$h$ / 2 - $datatip$$1_fitText$$1_isMultiline$$1_labelY_opacity$$1$$), $bboxDims_tooltip$$7$$ = $gap$$4_lv2Labels$$1$$.$getDimensions$(), $i$$208$$ = .15 * $bboxDims_tooltip$$7$$.$h$, $i$$208$$ = 
        $dvt$$3$$.$PathUtils$.$roundedRectangle$($bboxDims_tooltip$$7$$.x - $i$$208$$, $bboxDims_tooltip$$7$$.y, $bboxDims_tooltip$$7$$.$w$ + 2 * $i$$208$$, $bboxDims_tooltip$$7$$.$h$, 2, 2, 2, 2), $i$$208$$ = new $dvt$$3$$.$Path$($DvtAxisRenderer$$.$getCtx$(), $i$$208$$), $label$$23$$ = $gap$$4_lv2Labels$$1$$.$getCSSStyle$().$getStyle$($dvt$$3$$.$CSSStyle$.$BACKGROUND_COLOR$), $datatip$$1_fitText$$1_isMultiline$$1_labelY_opacity$$1$$ = $datatip$$1_fitText$$1_isMultiline$$1_labelY_opacity$$1$$ + 
        $bboxDims_tooltip$$7$$.$h$ / 2 > $axisInfo$$7$$.$getEndCoord$() && "circle" == $DvtAxisRenderer$$.$getOptions$().polarGridShape ? 1 : .3, $label$$23$$ ? $i$$208$$.$setSolidFill$($label$$23$$) : $i$$208$$.$setSolidFill$("#FFFFFF", $datatip$$1_fitText$$1_isMultiline$$1_labelY_opacity$$1$$), $DvtAxisRenderer$$.$addChild$($i$$208$$)));
        $DvtAxisRenderer$$.$addChild$($gap$$4_lv2Labels$$1$$);
      }
    }
    var $options$$21$$ = $DvtAxisRenderer$$.$getOptions$(), $DvtAxisAutomation$$ = $options$$21$$.position, $context$$80$$ = $DvtAxisRenderer$$.$getCtx$(), $isRTL$$2$$ = $dvt$$3$$.$Agent$.$isRightToLeft$($context$$80$$), $isNumerical$$ = $axisInfo$$7$$ instanceof $dvt$$3$$.$DataAxisInfo$, $isTickInside$$1$$ = "inside" == $options$$21$$.tickLabel.position, $labels$$4$$, $gap$$4_lv2Labels$$1$$, $maxLvlWidth$$, $isGroupAxis$$1$$ = $axisInfo$$7$$ instanceof $dvt$$3$$.$GroupAxisInfo$, $isHierarchical$$1$$ = 
    $isGroupAxis$$1$$ && 1 < $axisInfo$$7$$.$getNumLevels$(), $levelIdx$$3$$ = $isHierarchical$$1$$ ? 0 : null;
    $labels$$4$$ = $axisInfo$$7$$.$getLabels$($DvtAxisRenderer$$.$getCtx$(), $levelIdx$$3$$);
    var $labelX$$ = 0;
    $isHierarchical$$1$$ ? ($gap$$4_lv2Labels$$1$$ = $DvtAxisDefaults$$.$getGapSize$($context$$80$$, $options$$21$$, $options$$21$$.layout.hierarchicalLabelGapWidth), $maxLvlWidth$$ = $dvt$$3$$.$TextUtils$.$getMaxTextDimensions$($labels$$4$$).$w$) : "radial" == $DvtAxisAutomation$$ ? ($gap$$4_lv2Labels$$1$$ = $DvtAxisDefaults$$.$getGapSize$($context$$80$$, $options$$21$$, $options$$21$$.layout.radialLabelGap), $labelX$$ = $availSpace$$7$$.x + $availSpace$$7$$.$w$ / 2, $labelX$$ = $isRTL$$2$$ ? $labelX$$ + 
    ($gap$$4_lv2Labels$$1$$ + $dvt$$3$$.$TextUtils$.$getMaxTextDimensions$($labels$$4$$).$w$) : $labelX$$ - $gap$$4_lv2Labels$$1$$) : "left" == $DvtAxisAutomation$$ ? ($labelX$$ = $availSpace$$7$$.x + $availSpace$$7$$.$w$, $isNumerical$$ && $isTickInside$$1$$ && ($labelX$$ += $dvt$$3$$.$TextUtils$.$getMaxTextDimensions$($labels$$4$$).$w$)) : ($labelX$$ = $availSpace$$7$$.x, $isNumerical$$ && !$isTickInside$$1$$ && ($labelX$$ += $dvt$$3$$.$TextUtils$.$getMaxTextDimensions$($labels$$4$$).$w$));
    for (;$labels$$4$$;) {
      for (var $i$$208$$ = 0;$i$$208$$ < $labels$$4$$.length;$i$$208$$++) {
        var $label$$23$$ = $labels$$4$$[$i$$208$$];
        null != $label$$23$$ && $formatLabelVert$$($label$$23$$, $i$$208$$);
      }
      if ($isHierarchical$$1$$) {
        $availSpace$$7$$.x += $maxLvlWidth$$ + $gap$$4_lv2Labels$$1$$, $availSpace$$7$$.$w$ -= $maxLvlWidth$$ + $gap$$4_lv2Labels$$1$$, $levelIdx$$3$$++, $maxLvlWidth$$ = ($labels$$4$$ = $axisInfo$$7$$.$getLabels$($DvtAxisRenderer$$.$getCtx$(), $levelIdx$$3$$)) ? $dvt$$3$$.$TextUtils$.$getMaxTextDimensions$($labels$$4$$).$w$ : null;
      } else {
        break;
      }
    }
    if ($axisInfo$$7$$ instanceof $dvt$$3$$.$TimeAxisInfo$ && ($gap$$4_lv2Labels$$1$$ = $axisInfo$$7$$.$getLabels$($DvtAxisRenderer$$.$getCtx$(), 1), null != $gap$$4_lv2Labels$$1$$)) {
      for ($i$$208$$ = 0;$i$$208$$ < $gap$$4_lv2Labels$$1$$.length;$i$$208$$++) {
        $label$$23$$ = $gap$$4_lv2Labels$$1$$[$i$$208$$], null != $label$$23$$ && $formatLabelVert$$($label$$23$$, $i$$208$$);
      }
    }
  };
  $DvtAxisRenderer$$.$_renderLabelsTangent$ = function $$DvtAxisRenderer$$$$_renderLabelsTangent$$($DvtAxisRenderer$$, $axisInfo$$8$$, $availSpace$$8$$) {
    for (var $DvtAxisDefaults$$ = $axisInfo$$8$$.$getLabels$($DvtAxisRenderer$$.$getCtx$()), $i$$209$$ = 0;$i$$209$$ < $DvtAxisDefaults$$.length;$i$$209$$++) {
      var $DvtAxisAutomation$$ = $DvtAxisDefaults$$[$i$$209$$];
      if (null != $DvtAxisAutomation$$) {
        var $index$$102_maxWidth$$7$$ = $availSpace$$8$$.$w$ / 2 - Math.abs($DvtAxisAutomation$$.$getX$()), $datatip$$2_maxHeight$$4$$ = $availSpace$$8$$.$h$ / 2 - Math.abs($DvtAxisAutomation$$.$getY$());
        if ($dvt$$3$$.$TextUtils$.$fitText$($DvtAxisAutomation$$, $index$$102_maxWidth$$7$$, $datatip$$2_maxHeight$$4$$, $DvtAxisRenderer$$)) {
          var $index$$102_maxWidth$$7$$ = $axisInfo$$8$$ instanceof $dvt$$3$$.$GroupAxisInfo$ ? $axisInfo$$8$$.$getLabelIndex$($DvtAxisAutomation$$) : $i$$209$$, $datatip$$2_maxHeight$$4$$ = $axisInfo$$8$$.$getDatatip$($index$$102_maxWidth$$7$$), $tooltip$$8$$ = $DvtAxisAutomation$$.$getUntruncatedTextString$(), $action$$11$$ = $axisInfo$$8$$.$getAction$($index$$102_maxWidth$$7$$), $drillable$$2$$ = $axisInfo$$8$$.$isDrillable$($index$$102_maxWidth$$7$$), $group$$8$$ = $axisInfo$$8$$.$getGroup$($index$$102_maxWidth$$7$$);
          $DvtAxisRenderer$$.$getEventManager$().$associate$($DvtAxisAutomation$$, new $DvtAxisObjPeer$$($DvtAxisRenderer$$, $DvtAxisAutomation$$, $group$$8$$, $action$$11$$, $drillable$$2$$, $tooltip$$8$$, $datatip$$2_maxHeight$$4$$, $DvtAxisEventManager$$.$getUIParams$($DvtAxisConstants$$.$TICK_LABEL$, $DvtAxisAutomation$$.$getTextString$(), $index$$102_maxWidth$$7$$)));
          $DvtAxisAutomation$$.$setTranslateX$($availSpace$$8$$.x + $availSpace$$8$$.$w$ / 2);
          $DvtAxisAutomation$$.$setTranslateY$($availSpace$$8$$.y + $availSpace$$8$$.$h$ / 2);
          $DvtAxisRenderer$$.$addChild$($DvtAxisAutomation$$);
        }
      }
    }
  };
  $DvtAxisRenderer$$.$_createText$ = function $$DvtAxisRenderer$$$$_createText$$($eventManager$$11$$, $container$$11$$, $text$$38_textString$$5$$, $DvtAxisConstants$$, $DvtAxisDefaults$$, $DvtAxisAutomation$$, $params$$6$$, $bMultiLine$$) {
    $bMultiLine$$ ? ($text$$38_textString$$5$$ = new $dvt$$3$$.$MultilineText$($container$$11$$.$getCtx$(), $text$$38_textString$$5$$, 0, 0), $text$$38_textString$$5$$.$setMaxLines$($DvtAxisRenderer$$.$_MAX_TITLE_LINE_WRAP$), $text$$38_textString$$5$$.$wrapText$($DvtAxisDefaults$$, $DvtAxisAutomation$$, 1)) : $text$$38_textString$$5$$ = new $dvt$$3$$.$OutputText$($container$$11$$.$getCtx$(), $text$$38_textString$$5$$, 0, 0);
    $text$$38_textString$$5$$.$setCSSStyle$($DvtAxisConstants$$);
    return $dvt$$3$$.$TextUtils$.$fitText$($text$$38_textString$$5$$, $DvtAxisDefaults$$, $DvtAxisAutomation$$, $container$$11$$) ? ($eventManager$$11$$.$associate$($text$$38_textString$$5$$, new $dvt$$3$$.$SimpleObjPeer$($text$$38_textString$$5$$.$getUntruncatedTextString$(), null, null, $params$$6$$)), $text$$38_textString$$5$$) : null;
  };
  $DvtAxisRenderer$$.$_renderGroupSeparators$ = function $$DvtAxisRenderer$$$$_renderGroupSeparators$$($axis$$16$$, $axisInfo$$9$$) {
    if ($axisInfo$$9$$ instanceof $dvt$$3$$.$GroupAxisInfo$ && $axisInfo$$9$$.$_areSeparatorsRendered$ && !(1 >= $axisInfo$$9$$.$getNumLevels$() || 0 >= $axisInfo$$9$$.$_lastRenderedLevel$)) {
      for (var $endOffset_options$$22$$ = $axis$$16$$.$getOptions$(), $DvtAxisConstants$$ = $endOffset_options$$22$$.position, $DvtAxisConstants$$ = "top" == $DvtAxisConstants$$ || "bottom" == $DvtAxisConstants$$, $context$$81_gap$$5$$ = $axis$$16$$.$getCtx$(), $DvtAxisAutomation$$ = $dvt$$3$$.$Agent$.$isRightToLeft$($context$$81_gap$$5$$), $lineStroke$$ = new $dvt$$3$$.$SolidStroke$($axisInfo$$9$$.$getSeparatorColor$(), 1, 1), $prevLevelSize$$ = 0, $context$$81_gap$$5$$ = $DvtAxisConstants$$ ? $DvtAxisDefaults$$.$getGapSize$($context$$81_gap$$5$$, 
      $endOffset_options$$22$$, $endOffset_options$$22$$.layout.hierarchicalLabelGapHeight) : $DvtAxisDefaults$$.$getGapSize$($context$$81_gap$$5$$, $endOffset_options$$22$$, $endOffset_options$$22$$.layout.hierarchicalLabelGapWidth), $startOffset$$ = $endOffset_options$$22$$.startGroupOffset, $endOffset_options$$22$$ = $endOffset_options$$22$$.endGroupOffset, $maxDims_x1$$4$$, $x3_y1$$3$$, $x2$$2$$, $y2$$1_yCoord$$, $start$$27_x4$$, $level$$11$$ = $axisInfo$$9$$.$_lastRenderedLevel$;0 <= $level$$11$$;$level$$11$$--) {
        var $labels$$6$$ = $axisInfo$$9$$.$getLabels$($axis$$16$$.$getCtx$(), $level$$11$$);
        $maxDims_x1$$4$$ = $dvt$$3$$.$TextUtils$.$getMaxTextDimensions$($labels$$6$$);
        var $isRotated$$1$$ = $axisInfo$$9$$.$isLabelRotated$($level$$11$$), $levelSize$$ = $isRotated$$1$$ || !$DvtAxisConstants$$ ? $maxDims_x1$$4$$.$w$ : $maxDims_x1$$4$$.$h$;
        if (0 != $levelSize$$) {
          var $nextLabel_prevLabelRendered$$ = !1, $prevLabelEmpty$$ = null;
          if ($level$$11$$ < $axisInfo$$9$$.$_lastRenderedLevel$) {
            for (var $i$$210$$ = 0;$i$$210$$ < $labels$$6$$.length;$i$$210$$++) {
              var $label$$26$$ = $labels$$6$$[$i$$210$$];
              if (null != $label$$26$$) {
                var $index$$103$$ = $axisInfo$$9$$.$getLabelIndex$($label$$26$$), $isEmptyLabel$$ = 0 == $axisInfo$$9$$.$getLabelAt$($index$$103$$, $level$$11$$).length;
                if (!$isEmptyLabel$$) {
                  var $eraseCornerEdge$$ = $isEmptyLabel$$ && 0 == $level$$11$$ && (0 == $index$$103$$ || $index$$103$$ == $labels$$6$$.length - 1), $isFirstLabel$$ = $label$$26$$ && null == $labels$$6$$[$index$$103$$ - 1], $isLastLabel_spacing$$1$$ = $label$$26$$ && null == $labels$$6$$[$index$$103$$ + 1];
                  $start$$27_x4$$ = $axisInfo$$9$$.$getStartIndex$($index$$103$$, $level$$11$$);
                  var $drawLeftLine_end$$9$$ = $axisInfo$$9$$.$getEndIndex$($index$$103$$, $level$$11$$);
                  if ($DvtAxisConstants$$) {
                    if ($label$$26$$ && ($y2$$1_yCoord$$ = $label$$26$$ instanceof $dvt$$3$$.$MultilineText$ || $label$$26$$ instanceof $dvt$$3$$.$BackgroundMultilineText$ ? $label$$26$$.$getYAlignCoord$() : $label$$26$$.$getY$(), $maxDims_x1$$4$$ = $axisInfo$$9$$.$getCoordAt$($start$$27_x4$$ - $startOffset$$), $x3_y1$$3$$ = $isRotated$$1$$ ? $y2$$1_yCoord$$ + .5 * $prevLevelSize$$ : $y2$$1_yCoord$$ - $levelSize$$ / 2 - .5 * $prevLevelSize$$ - $context$$81_gap$$5$$, $x2$$2$$ = $axisInfo$$9$$.$getCoordAt$($drawLeftLine_end$$9$$ + 
                    $endOffset_options$$22$$), $y2$$1_yCoord$$ = $isRotated$$1$$ ? $y2$$1_yCoord$$ + $levelSize$$ + $prevLevelSize$$ + 2 * $context$$81_gap$$5$$ : $y2$$1_yCoord$$, $isEmptyLabel$$ && $eraseCornerEdge$$ || 0 != $nextLabel_prevLabelRendered$$ || null == $maxDims_x1$$4$$ || $DvtAxisRenderer$$.$_addSeparatorLine$($axis$$16$$, $lineStroke$$, $maxDims_x1$$4$$, $y2$$1_yCoord$$, $maxDims_x1$$4$$, $x3_y1$$3$$), null == $x2$$2$$ || $eraseCornerEdge$$ || $DvtAxisRenderer$$.$_addSeparatorLine$($axis$$16$$, 
                    $lineStroke$$, $x2$$2$$, $y2$$1_yCoord$$, $x2$$2$$, $x3_y1$$3$$)), !$isEmptyLabel$$) {
                      if ($label$$26$$) {
                        var $DvtAxisEventManager$$ = $isRotated$$1$$ ? $dvt$$3$$.$TextUtils$.$getTextHeight$($label$$26$$) : $dvt$$3$$.$TextUtils$.$getTextWidth$($label$$26$$)
                      }
                      $maxDims_x1$$4$$ = $isFirstLabel$$ && 0 == $prevLabelEmpty$$ ? $axisInfo$$9$$.$getStartCoord$() : $axisInfo$$9$$.$getBoundedCoordAt$($start$$27_x4$$ - $startOffset$$);
                      $nextLabel_prevLabelRendered$$ = $axisInfo$$9$$.$getLabelAt$($index$$103$$ + 1, $level$$11$$);
                      $x2$$2$$ = $isLastLabel_spacing$$1$$ && $nextLabel_prevLabelRendered$$ && 0 < $nextLabel_prevLabelRendered$$.length ? $axisInfo$$9$$.$getEndCoord$() : $axisInfo$$9$$.$getBoundedCoordAt$($drawLeftLine_end$$9$$ + $endOffset_options$$22$$);
                      $x3_y1$$3$$ = $label$$26$$ ? $DvtAxisAutomation$$ ? $label$$26$$.$getX$() + .5 * $DvtAxisEventManager$$ : $label$$26$$.$getX$() - .5 * $DvtAxisEventManager$$ : $axisInfo$$9$$.$getBoundedCoordAt$($drawLeftLine_end$$9$$ + $endOffset_options$$22$$);
                      $start$$27_x4$$ = $label$$26$$ ? $DvtAxisAutomation$$ ? $label$$26$$.$getX$() - .5 * $DvtAxisEventManager$$ : $label$$26$$.$getX$() + .5 * $DvtAxisEventManager$$ : $axisInfo$$9$$.$getBoundedCoordAt$($start$$27_x4$$ - $startOffset$$);
                      $label$$26$$ && ($isRotated$$1$$ ? $DvtAxisRenderer$$.$_addSeparatorLine$($axis$$16$$, $lineStroke$$, $maxDims_x1$$4$$, $y2$$1_yCoord$$, $x2$$2$$, $y2$$1_yCoord$$) : ($isLastLabel_spacing$$1$$ = $DvtAxisAutomation$$ ? .5 * -$dvt$$3$$.$TextUtils$.$getTextHeight$($label$$26$$) : .5 * $dvt$$3$$.$TextUtils$.$getTextHeight$($label$$26$$), $drawLeftLine_end$$9$$ = $DvtAxisAutomation$$ ? $start$$27_x4$$ + $isLastLabel_spacing$$1$$ > $x2$$2$$ : $start$$27_x4$$ + $isLastLabel_spacing$$1$$ < 
                      $x2$$2$$, ($DvtAxisAutomation$$ ? $maxDims_x1$$4$$ > $x3_y1$$3$$ - $isLastLabel_spacing$$1$$ : $maxDims_x1$$4$$ < $x3_y1$$3$$ - $isLastLabel_spacing$$1$$) && $DvtAxisRenderer$$.$_addSeparatorLine$($axis$$16$$, $lineStroke$$, $maxDims_x1$$4$$, $y2$$1_yCoord$$, $x3_y1$$3$$ - $isLastLabel_spacing$$1$$, $y2$$1_yCoord$$), $drawLeftLine_end$$9$$ && $DvtAxisRenderer$$.$_addSeparatorLine$($axis$$16$$, $lineStroke$$, $start$$27_x4$$ + $isLastLabel_spacing$$1$$, $y2$$1_yCoord$$, $x2$$2$$, 
                      $y2$$1_yCoord$$)));
                    }
                  } else {
                    $label$$26$$ && ($maxDims_x1$$4$$ = $DvtAxisAutomation$$ ? $label$$26$$.$getX$() - $levelSize$$ - .5 * $context$$81_gap$$5$$ : $label$$26$$.$getX$() + .5 * $context$$81_gap$$5$$, $x3_y1$$3$$ = $axisInfo$$9$$.$getCoordAt$($start$$27_x4$$ - $startOffset$$), $x2$$2$$ = $DvtAxisAutomation$$ ? $label$$26$$.$getX$() + .5 * $context$$81_gap$$5$$ : $label$$26$$.$getX$() - $levelSize$$ - .5 * $context$$81_gap$$5$$, $y2$$1_yCoord$$ = $axisInfo$$9$$.$getCoordAt$($drawLeftLine_end$$9$$ + 
                    $endOffset_options$$22$$), (!$isEmptyLabel$$ && 0 == $nextLabel_prevLabelRendered$$ || 0 == $index$$103$$ && $isEmptyLabel$$ && 0 != $level$$11$$) && null != $x3_y1$$3$$ && $DvtAxisRenderer$$.$_addSeparatorLine$($axis$$16$$, $lineStroke$$, $maxDims_x1$$4$$, $x3_y1$$3$$, $x2$$2$$, $x3_y1$$3$$), null == $y2$$1_yCoord$$ || $eraseCornerEdge$$ || $DvtAxisRenderer$$.$_addSeparatorLine$($axis$$16$$, $lineStroke$$, $x2$$2$$, $y2$$1_yCoord$$, $maxDims_x1$$4$$, $y2$$1_yCoord$$)), $isEmptyLabel$$ || 
                    ($x3_y1$$3$$ = $isFirstLabel$$ && 0 == $prevLabelEmpty$$ ? 0 : $axisInfo$$9$$.$getBoundedCoordAt$($start$$27_x4$$ - $startOffset$$), $nextLabel_prevLabelRendered$$ = $axisInfo$$9$$.$getLabelAt$($index$$103$$ + 1, $level$$11$$), $y2$$1_yCoord$$ = $isLastLabel_spacing$$1$$ && $nextLabel_prevLabelRendered$$ && 0 < $nextLabel_prevLabelRendered$$.length ? $axisInfo$$9$$.$getEndCoord$() : $axisInfo$$9$$.$getBoundedCoordAt$($drawLeftLine_end$$9$$ + $endOffset_options$$22$$), $label$$26$$ && 
                    $DvtAxisRenderer$$.$_addSeparatorLine$($axis$$16$$, $lineStroke$$, $x2$$2$$, $x3_y1$$3$$, $x2$$2$$, $y2$$1_yCoord$$));
                  }
                  $nextLabel_prevLabelRendered$$ = !$isEmptyLabel$$ && null != $label$$26$$;
                  $prevLabelEmpty$$ = null != $label$$26$$ || null == $label$$26$$ && $isEmptyLabel$$;
                }
              }
            }
          }
        }
        $prevLevelSize$$ = $levelSize$$;
      }
    }
  };
  $DvtAxisRenderer$$.$_addSeparatorLine$ = function $$DvtAxisRenderer$$$$_addSeparatorLine$$($DvtAxisRenderer$$, $lineStroke$$1$$, $line$$6_x1$$5$$, $DvtAxisConstants$$, $DvtAxisDefaults$$, $DvtAxisAutomation$$) {
    $line$$6_x1$$5$$ = new $dvt$$3$$.$Line$($DvtAxisRenderer$$.$getCtx$(), $line$$6_x1$$5$$, $DvtAxisConstants$$, $DvtAxisDefaults$$, $DvtAxisAutomation$$);
    $line$$6_x1$$5$$.$setStroke$($lineStroke$$1$$);
    $line$$6_x1$$5$$.$setPixelHinting$();
    $DvtAxisRenderer$$.$addChild$($line$$6_x1$$5$$);
  };
  $DvtAxisRenderer$$.$_getGroupAxisPreferredSize$ = function $$DvtAxisRenderer$$$$_getGroupAxisPreferredSize$$($DvtAxisRenderer$$, $axisInfo$$10$$, $size$$14$$, $DvtAxisConstants$$, $bHoriz$$2$$) {
    var $DvtAxisAutomation$$ = $DvtAxisRenderer$$.$getCtx$(), $gap$$6_options$$23$$ = $DvtAxisRenderer$$.$getOptions$();
    $DvtAxisRenderer$$ = $axisInfo$$10$$.$getNumLevels$();
    for (var $gap$$6_options$$23$$ = 1 < $DvtAxisRenderer$$ ? $DvtAxisDefaults$$.$getGapSize$($DvtAxisAutomation$$, $gap$$6_options$$23$$, $gap$$6_options$$23$$.layout[$bHoriz$$2$$ ? "hierarchicalLabelGapHeight" : "hierarchicalLabelGapWidth"]) : 0, $level$$12$$ = 0;$level$$12$$ < $DvtAxisRenderer$$;$level$$12$$++) {
      var $labelSize_labels$$7_maxDims$$1$$ = $axisInfo$$10$$.$getLabels$($DvtAxisAutomation$$, $level$$12$$);
      $bHoriz$$2$$ ? ($labelSize_labels$$7_maxDims$$1$$ = $dvt$$3$$.$TextUtils$.$getMaxTextDimensions$($labelSize_labels$$7_maxDims$$1$$), $labelSize_labels$$7_maxDims$$1$$ = $axisInfo$$10$$.$isLabelRotated$($level$$12$$) ? $labelSize_labels$$7_maxDims$$1$$.$w$ : $labelSize_labels$$7_maxDims$$1$$.$h$) : $labelSize_labels$$7_maxDims$$1$$ = $dvt$$3$$.$TextUtils$.$getMaxTextDimensions$($labelSize_labels$$7_maxDims$$1$$).$w$;
      if ($size$$14$$ + $labelSize_labels$$7_maxDims$$1$$ <= $DvtAxisConstants$$) {
        $size$$14$$ += $labelSize_labels$$7_maxDims$$1$$ + $gap$$6_options$$23$$;
      } else {
        0 == $level$$12$$ && ($size$$14$$ = $DvtAxisConstants$$);
        break;
      }
    }
    0 != $level$$12$$ && ($size$$14$$ -= $gap$$6_options$$23$$);
    return $size$$14$$;
  };
  $DvtAxisRenderer$$.$getTitleHeight$ = function $$DvtAxisRenderer$$$$getTitleHeight$$($context$$83_text$$39$$, $options$$24$$, $availWidth$$8$$, $DvtAxisConstants$$) {
    var $DvtAxisDefaults$$ = 0;
    $options$$24$$.title && ($DvtAxisRenderer$$.$isWrapEnabled$($options$$24$$.titleStyle) ? ($context$$83_text$$39$$ = new $dvt$$3$$.$MultilineText$($context$$83_text$$39$$, $options$$24$$.title, 0, 0), $context$$83_text$$39$$.$setMaxLines$($DvtAxisRenderer$$.$_MAX_TITLE_LINE_WRAP$), $context$$83_text$$39$$.$setCSSStyle$($options$$24$$.titleStyle), $context$$83_text$$39$$.$wrapText$($availWidth$$8$$, $DvtAxisConstants$$, 1), $DvtAxisDefaults$$ = $context$$83_text$$39$$.$getDimensions$().$h$) : $DvtAxisDefaults$$ = 
    $dvt$$3$$.$TextUtils$.$getTextStringHeight$($context$$83_text$$39$$, $options$$24$$.titleStyle));
    return $DvtAxisDefaults$$;
  };
  $DvtAxisRenderer$$.$isWrapEnabled$ = function $$DvtAxisRenderer$$$$isWrapEnabled$$($DvtAxisRenderer$$) {
    $DvtAxisRenderer$$ = $DvtAxisRenderer$$.$getStyle$($dvt$$3$$.$CSSStyle$.$WHITE_SPACE$);
    return "nowrap" == $DvtAxisRenderer$$ || "noWrap" == $DvtAxisRenderer$$ ? !1 : !0;
  };
  $dvt$$3$$.$AxisInfo$ = function $$dvt$$3$$$$AxisInfo$$() {
  };
  $dvt$$3$$.$Obj$.$createSubclass$($dvt$$3$$.$AxisInfo$, $dvt$$3$$.$Obj$);
  $dvt$$3$$.$AxisInfo$.newInstance = function $$dvt$$3$$$$AxisInfo$$newInstance$($DvtAxisRenderer$$, $options$$25$$, $availSpace$$10$$) {
    return $options$$25$$.timeAxisType && "disabled" != $options$$25$$.timeAxisType ? new $dvt$$3$$.$TimeAxisInfo$($DvtAxisRenderer$$, $options$$25$$, $availSpace$$10$$) : $options$$25$$._isGroupAxis ? new $dvt$$3$$.$GroupAxisInfo$($DvtAxisRenderer$$, $options$$25$$, $availSpace$$10$$) : new $dvt$$3$$.$DataAxisInfo$($DvtAxisRenderer$$, $options$$25$$, $availSpace$$10$$);
  };
  $dvt$$3$$.$AxisInfo$.prototype.Init = function $$dvt$$3$$$$AxisInfo$$$Init$($DvtAxisRenderer$$, $options$$26$$, $availSpace$$11$$) {
    this.$_context$ = $DvtAxisRenderer$$;
    this.$Position$ = $options$$26$$.position;
    this.$_radius$ = $options$$26$$._radius;
    this.$_title$ = null;
    "top" == this.$Position$ || "bottom" == this.$Position$ ? (this.$StartCoord$ = $availSpace$$11$$.x, this.$EndCoord$ = $availSpace$$11$$.x + $availSpace$$11$$.$w$) : "left" == this.$Position$ || "right" == this.$Position$ ? (this.$StartCoord$ = $availSpace$$11$$.y, this.$EndCoord$ = $availSpace$$11$$.y + $availSpace$$11$$.$h$) : "radial" == this.$Position$ ? (this.$StartCoord$ = 0, this.$EndCoord$ = this.$_radius$) : "tangential" == this.$Position$ && ($dvt$$3$$.$Agent$.$isRightToLeft$($DvtAxisRenderer$$) ? 
    (this.$StartCoord$ = 2 * Math.PI, this.$EndCoord$ = 0) : (this.$StartCoord$ = 0, this.$EndCoord$ = 2 * Math.PI));
    this.$DataMax$ = this.$DataMin$ = this.$GlobalMax$ = this.$GlobalMin$ = this.$MaxValue$ = this.$MinValue$ = null;
    this.$EndOverflow$ = this.$StartOverflow$ = 0;
    null == $options$$26$$.leftBuffer && ($options$$26$$.leftBuffer = Infinity);
    null == $options$$26$$.rightBuffer && ($options$$26$$.rightBuffer = Infinity);
    this.$Options$ = $options$$26$$;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getCtx$ = function $$dvt$$3$$$$AxisInfo$$$$getCtx$$() {
    return this.$_context$;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getOptions$ = function $$dvt$$3$$$$AxisInfo$$$$getOptions$$() {
    return this.$Options$;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getLabels$ = function $$dvt$$3$$$$AxisInfo$$$$getLabels$$() {
    return null;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getTitle$ = function $$dvt$$3$$$$AxisInfo$$$$getTitle$$() {
    return this.$_title$;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$setTitle$ = function $$dvt$$3$$$$AxisInfo$$$$setTitle$$($dvt$$3$$) {
    this.$_title$ = $dvt$$3$$;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getMajorTickCoords$ = function $$dvt$$3$$$$AxisInfo$$$$getMajorTickCoords$$() {
    return [];
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getMinorTickCoords$ = function $$dvt$$3$$$$AxisInfo$$$$getMinorTickCoords$$() {
    return [];
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getBaselineCoord$ = function $$dvt$$3$$$$AxisInfo$$$$getBaselineCoord$$() {
    return null;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getValueAt$ = function $$dvt$$3$$$$AxisInfo$$$$getValueAt$$($dvt$$3$$) {
    if (null == $dvt$$3$$) {
      return null;
    }
    var $DvtAxisRenderer$$ = Math.max(this.$StartCoord$, this.$EndCoord$);
    return $dvt$$3$$ < Math.min(this.$StartCoord$, this.$EndCoord$) || $dvt$$3$$ > $DvtAxisRenderer$$ ? null : this.$getUnboundedValueAt$($dvt$$3$$);
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getCoordAt$ = function $$dvt$$3$$$$AxisInfo$$$$getCoordAt$$($dvt$$3$$) {
    return null == $dvt$$3$$ ? null : $dvt$$3$$ < this.$MinValue$ || $dvt$$3$$ > this.$MaxValue$ ? null : this.$getUnboundedCoordAt$($dvt$$3$$);
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getBoundedValueAt$ = function $$dvt$$3$$$$AxisInfo$$$$getBoundedValueAt$$($dvt$$3$$) {
    if (null == $dvt$$3$$) {
      return null;
    }
    var $DvtAxisRenderer$$ = Math.min(this.$StartCoord$, this.$EndCoord$), $maxCoord$$1$$ = Math.max(this.$StartCoord$, this.$EndCoord$);
    $dvt$$3$$ < $DvtAxisRenderer$$ ? $dvt$$3$$ = $DvtAxisRenderer$$ : $dvt$$3$$ > $maxCoord$$1$$ && ($dvt$$3$$ = $maxCoord$$1$$);
    return this.$getUnboundedValueAt$($dvt$$3$$);
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getBoundedCoordAt$ = function $$dvt$$3$$$$AxisInfo$$$$getBoundedCoordAt$$($dvt$$3$$) {
    if (null == $dvt$$3$$) {
      return null;
    }
    $dvt$$3$$ < this.$MinValue$ ? $dvt$$3$$ = this.$MinValue$ : $dvt$$3$$ >= this.$MaxValue$ && ($dvt$$3$$ = this.$MaxValue$);
    return this.$getUnboundedCoordAt$($dvt$$3$$);
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getUnboundedValueAt$ = function $$dvt$$3$$$$AxisInfo$$$$getUnboundedValueAt$$() {
    return null;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getUnboundedCoordAt$ = function $$dvt$$3$$$$AxisInfo$$$$getUnboundedCoordAt$$() {
    return null;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getDatatip$ = function $$dvt$$3$$$$AxisInfo$$$$getDatatip$$() {
    return null;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getAction$ = function $$dvt$$3$$$$AxisInfo$$$$getAction$$() {
    return null;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$isDrillable$ = function $$dvt$$3$$$$AxisInfo$$$$isDrillable$$() {
    return null;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getBaselineCoord$ = function $$dvt$$3$$$$AxisInfo$$$$getBaselineCoord$$() {
    return null;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$isLabelRotated$ = function $$dvt$$3$$$$AxisInfo$$$$isLabelRotated$$() {
    return !1;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$CreateLabel$ = function $$dvt$$3$$$$AxisInfo$$$$CreateLabel$$($DvtAxisRenderer$$, $label$$28$$, $coord$$3$$, $DvtAxisConstants$$, $DvtAxisDefaults$$) {
    if ("tangential" == this.$Position$) {
      $DvtAxisDefaults$$ = 16 / 180 * Math.PI;
      var $DvtAxisAutomation$$ = 1 / 180 * Math.PI, $offset$$18_xcoord$$ = .5 * this.$getTickLabelHeight$(), $dist_ycoord$$ = this.$_radius$ + $offset$$18_xcoord$$;
      if ($coord$$3$$ < $DvtAxisAutomation$$ || $coord$$3$$ > 2 * Math.PI - $DvtAxisAutomation$$) {
        $dist_ycoord$$ += $offset$$18_xcoord$$;
      }
      $offset$$18_xcoord$$ = Math.round($dist_ycoord$$ * Math.sin($coord$$3$$));
      $dist_ycoord$$ = Math.round(-$dist_ycoord$$ * Math.cos($coord$$3$$));
      $DvtAxisRenderer$$ = $DvtAxisConstants$$ ? new $dvt$$3$$.$BackgroundOutputText$($DvtAxisRenderer$$, $label$$28$$, $offset$$18_xcoord$$, $dist_ycoord$$, $DvtAxisConstants$$) : new $dvt$$3$$.$OutputText$($DvtAxisRenderer$$, $label$$28$$, $offset$$18_xcoord$$, $dist_ycoord$$);
      $coord$$3$$ < $DvtAxisAutomation$$ || Math.abs($coord$$3$$ - Math.PI) < $DvtAxisAutomation$$ || $coord$$3$$ > 2 * Math.PI - $DvtAxisAutomation$$ ? $DvtAxisRenderer$$.$alignCenter$() : $coord$$3$$ < Math.PI ? $DvtAxisRenderer$$.$alignLeft$() : $DvtAxisRenderer$$.$alignRight$();
      Math.abs($coord$$3$$ - Math.PI / 2) < $DvtAxisDefaults$$ || Math.abs($coord$$3$$ - 3 * Math.PI / 2) < $DvtAxisDefaults$$ ? $DvtAxisRenderer$$.$alignMiddle$() : $coord$$3$$ < Math.PI / 2 || $coord$$3$$ > 3 * Math.PI / 2 ? $DvtAxisRenderer$$.$alignBottom$() : $DvtAxisRenderer$$.$alignTop$();
    } else {
      $DvtAxisDefaults$$ ? $DvtAxisRenderer$$ = $DvtAxisConstants$$ ? new $dvt$$3$$.$BackgroundMultilineText$($DvtAxisRenderer$$, $label$$28$$, $coord$$3$$, $coord$$3$$, $DvtAxisConstants$$) : new $dvt$$3$$.$MultilineText$($DvtAxisRenderer$$, $label$$28$$, $coord$$3$$, $coord$$3$$) : ($DvtAxisRenderer$$ = $DvtAxisConstants$$ ? new $dvt$$3$$.$BackgroundOutputText$($DvtAxisRenderer$$, $label$$28$$, $coord$$3$$, $coord$$3$$, $DvtAxisConstants$$) : new $dvt$$3$$.$OutputText$($DvtAxisRenderer$$, $label$$28$$, 
      $coord$$3$$, $coord$$3$$), $DvtAxisRenderer$$.$alignMiddle$()), $DvtAxisRenderer$$.$alignCenter$();
    }
    ($DvtAxisRenderer$$ instanceof $dvt$$3$$.$OutputText$ || $DvtAxisRenderer$$ instanceof $dvt$$3$$.$MultilineText$) && $DvtAxisRenderer$$.$setCSSStyle$(this.$Options$.tickLabel.style);
    return $DvtAxisRenderer$$;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$IsOverlapping$ = function $$dvt$$3$$$$AxisInfo$$$$IsOverlapping$$($DvtAxisRenderer$$, $skippedLabels$$) {
    if (!$DvtAxisRenderer$$ || 0 >= $DvtAxisRenderer$$.length) {
      return !1;
    }
    for (var $isVert$$ = "left" == this.$Position$ || "right" == this.$Position$ || "radial" == this.$Position$, $DvtAxisConstants$$ = $dvt$$3$$.$Agent$.$isRightToLeft$(this.$getCtx$()), $DvtAxisDefaults$$ = this.$GetTickLabelGapSize$(), $DvtAxisAutomation$$, $pointA2$$, $pointB1$$, $pointB2$$, $j$$25$$ = 0;$j$$25$$ < $DvtAxisRenderer$$.length;$j$$25$$ += $skippedLabels$$ + 1) {
      if (null != $DvtAxisRenderer$$[$j$$25$$]) {
        if (null == $DvtAxisAutomation$$ || null == $pointA2$$) {
          $isVert$$ ? ($DvtAxisAutomation$$ = $DvtAxisRenderer$$[$j$$25$$].y, $pointA2$$ = $DvtAxisRenderer$$[$j$$25$$].y + $DvtAxisRenderer$$[$j$$25$$].$h$) : ($DvtAxisAutomation$$ = $DvtAxisRenderer$$[$j$$25$$].x, $pointA2$$ = $DvtAxisRenderer$$[$j$$25$$].x + $DvtAxisRenderer$$[$j$$25$$].$w$);
        } else {
          if ($isVert$$) {
            if ($pointB1$$ = $DvtAxisRenderer$$[$j$$25$$].y, $pointB2$$ = $DvtAxisRenderer$$[$j$$25$$].y + $DvtAxisRenderer$$[$j$$25$$].$h$, $pointB1$$ >= $DvtAxisAutomation$$ && $pointB1$$ - $DvtAxisDefaults$$ < $pointA2$$ || $pointB1$$ < $DvtAxisAutomation$$ && $pointB2$$ + $DvtAxisDefaults$$ > $DvtAxisAutomation$$) {
              return !0;
            }
          } else {
            if ($pointB1$$ = $DvtAxisRenderer$$[$j$$25$$].x, $pointB2$$ = $DvtAxisRenderer$$[$j$$25$$].x + $DvtAxisRenderer$$[$j$$25$$].$w$, !$DvtAxisConstants$$ && $pointB1$$ - $DvtAxisDefaults$$ < $pointA2$$ || $DvtAxisConstants$$ && $pointB2$$ + $DvtAxisDefaults$$ > $DvtAxisAutomation$$) {
              return !0;
            }
          }
          $DvtAxisAutomation$$ = $pointB1$$;
          $pointA2$$ = $pointB2$$;
        }
      }
    }
    return !1;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$IsOverlappingDims$ = function $$dvt$$3$$$$AxisInfo$$$$IsOverlappingDims$$($dvt$$3$$, $DvtAxisRenderer$$) {
    if (!$dvt$$3$$ || !$DvtAxisRenderer$$) {
      return !1;
    }
    var $pointA1$$1$$ = $dvt$$3$$.y, $DvtAxisConstants$$ = $dvt$$3$$.y + $dvt$$3$$.$h$, $DvtAxisDefaults$$ = $dvt$$3$$.x, $DvtAxisAutomation$$ = $dvt$$3$$.x + $dvt$$3$$.$w$, $pointB1$$1$$ = $DvtAxisRenderer$$.y, $pointB2$$1$$ = $DvtAxisRenderer$$.y + $DvtAxisRenderer$$.$h$, $pointB3$$ = $DvtAxisRenderer$$.x, $pointB4$$ = $DvtAxisRenderer$$.x + $DvtAxisRenderer$$.$w$;
    return ($DvtAxisDefaults$$ <= $pointB3$$ && $pointB3$$ <= $DvtAxisAutomation$$ || $DvtAxisDefaults$$ <= $pointB4$$ && $pointB4$$ <= $DvtAxisAutomation$$ || $pointB3$$ <= $DvtAxisDefaults$$ && $DvtAxisDefaults$$ <= $pointB4$$ || $pointB3$$ <= $DvtAxisAutomation$$ && $DvtAxisAutomation$$ <= $pointB4$$) && ($pointB1$$1$$ >= $pointA1$$1$$ && $pointB1$$1$$ < $DvtAxisConstants$$ || $pointB1$$1$$ <= $pointA1$$1$$ && $pointB2$$1$$ >= $pointA1$$1$$);
  };
  $dvt$$3$$.$AxisInfo$.prototype.$GetTickLabelGapSize$ = function $$dvt$$3$$$$AxisInfo$$$$GetTickLabelGapSize$$() {
    var $DvtAxisRenderer$$ = this.$getTickLabelHeight$(), $gapHoriz$$ = this instanceof $dvt$$3$$.$GroupAxisInfo$ ? .24 * $DvtAxisRenderer$$ : .79 * $DvtAxisRenderer$$, $DvtAxisRenderer$$ = this instanceof $dvt$$3$$.$GroupAxisInfo$ ? .08 * $DvtAxisRenderer$$ : .28 * $DvtAxisRenderer$$;
    return "left" == this.$Position$ || "right" == this.$Position$ || "radial" == this.$Position$ || this.$isLabelRotated$() ? $DvtAxisRenderer$$ : $gapHoriz$$;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getTickLabelHeight$ = function $$dvt$$3$$$$AxisInfo$$$$getTickLabelHeight$$() {
    return $dvt$$3$$.$TextUtils$.$getTextStringHeight$(this.$getCtx$(), this.$Options$.tickLabel.style);
  };
  $dvt$$3$$.$AxisInfo$.prototype.$SkipLabels$ = function $$dvt$$3$$$$AxisInfo$$$$SkipLabels$$($dvt$$3$$, $DvtAxisRenderer$$) {
    for (var $skippedLabels$$1$$ = 0, $DvtAxisConstants$$ = this.$IsOverlapping$($DvtAxisRenderer$$, $skippedLabels$$1$$);$DvtAxisConstants$$;) {
      $skippedLabels$$1$$++, $DvtAxisConstants$$ = this.$IsOverlapping$($DvtAxisRenderer$$, $skippedLabels$$1$$);
    }
    if (0 < $skippedLabels$$1$$) {
      for (var $DvtAxisConstants$$ = [], $DvtAxisDefaults$$ = 0;$DvtAxisDefaults$$ < $dvt$$3$$.length;$DvtAxisDefaults$$ += $skippedLabels$$1$$ + 1) {
        $DvtAxisConstants$$.push($dvt$$3$$[$DvtAxisDefaults$$]);
      }
      return $DvtAxisConstants$$;
    }
    return $dvt$$3$$;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$SkipTangentialLabels$ = function $$dvt$$3$$$$AxisInfo$$$$SkipTangentialLabels$$($dvt$$3$$, $DvtAxisRenderer$$) {
    var $renderedLabels$$1$$ = [], $DvtAxisConstants$$ = $dvt$$3$$.length, $DvtAxisDefaults$$ = null;
    if (1 < $DvtAxisConstants$$) {
      for (var $DvtAxisAutomation$$, $j$$27$$ = 0;$j$$27$$ < $DvtAxisConstants$$;$j$$27$$++) {
        $DvtAxisRenderer$$[$j$$27$$] && (!$DvtAxisAutomation$$ || $DvtAxisAutomation$$ && !this.$IsOverlappingDims$($DvtAxisAutomation$$, $DvtAxisRenderer$$[$j$$27$$])) && ($DvtAxisDefaults$$ || ($DvtAxisDefaults$$ = $DvtAxisRenderer$$[$j$$27$$]), $renderedLabels$$1$$.push($dvt$$3$$[$j$$27$$]), $DvtAxisAutomation$$ = $DvtAxisRenderer$$[$j$$27$$]);
      }
      this.$IsOverlappingDims$($DvtAxisAutomation$$, $DvtAxisDefaults$$) && $renderedLabels$$1$$.pop();
      return $renderedLabels$$1$$;
    }
    return $dvt$$3$$;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$GetLabelDims$ = function $$dvt$$3$$$$AxisInfo$$$$GetLabelDims$$($dvt$$3$$, $DvtAxisRenderer$$) {
    for (var $labelDims$$4$$ = [], $DvtAxisConstants$$ = 0;$DvtAxisConstants$$ < $dvt$$3$$.length;$DvtAxisConstants$$++) {
      var $DvtAxisDefaults$$ = $dvt$$3$$[$DvtAxisConstants$$];
      null == $DvtAxisDefaults$$ ? $labelDims$$4$$.push(null) : ($DvtAxisDefaults$$ = $DvtAxisDefaults$$.$measureDimensions$($DvtAxisRenderer$$), $DvtAxisDefaults$$.$w$ && $DvtAxisDefaults$$.$h$ ? $labelDims$$4$$.push($DvtAxisDefaults$$) : $labelDims$$4$$.push(null));
    }
    return $labelDims$$4$$;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$GuessLabelDims$ = function $$dvt$$3$$$$AxisInfo$$$$GuessLabelDims$$($DvtAxisRenderer$$, $container$$13$$, $fudgeFactor$$, $DvtAxisConstants$$) {
    var $DvtAxisDefaults$$ = [];
    "undefined" == typeof $fudgeFactor$$ && ($fudgeFactor$$ = 1);
    for (var $DvtAxisAutomation$$ = 0;$DvtAxisAutomation$$ < $DvtAxisRenderer$$.length;$DvtAxisAutomation$$++) {
      var $dims$$31_text$$42$$ = $DvtAxisRenderer$$[$DvtAxisAutomation$$];
      if (null == $dims$$31_text$$42$$) {
        $DvtAxisDefaults$$.push(null);
      } else {
        $container$$13$$.$addChild$($dims$$31_text$$42$$);
        var $estH_estimatedSize$$ = $dvt$$3$$.$TextUtils$.$guessTextDimensions$($dims$$31_text$$42$$), $estW$$ = $estH_estimatedSize$$.$w$ * $fudgeFactor$$, $estH_estimatedSize$$ = $estH_estimatedSize$$.$h$;
        $container$$13$$.removeChild($dims$$31_text$$42$$);
        $dims$$31_text$$42$$ = this.$isLabelRotated$($DvtAxisConstants$$) ? new $dvt$$3$$.$Rectangle$($dims$$31_text$$42$$.$getTranslateX$() - $estH_estimatedSize$$ / 2, $dims$$31_text$$42$$.$getTranslateY$() - $estW$$ / 2, $estH_estimatedSize$$, $estW$$) : new $dvt$$3$$.$Rectangle$($dims$$31_text$$42$$.$getX$() - $estW$$ / 2, $dims$$31_text$$42$$.$getY$() - $estH_estimatedSize$$ / 2, $estW$$, $estH_estimatedSize$$);
        $DvtAxisDefaults$$.push($dims$$31_text$$42$$);
      }
    }
    return $DvtAxisDefaults$$;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getMajorTickCount$ = function $$dvt$$3$$$$AxisInfo$$$$getMajorTickCount$$() {
    return null;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getMinorTickCount$ = function $$dvt$$3$$$$AxisInfo$$$$getMinorTickCount$$() {
    return null;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getMajorIncrement$ = function $$dvt$$3$$$$AxisInfo$$$$getMajorIncrement$$() {
    return null;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getMinimumExtent$ = function $$dvt$$3$$$$AxisInfo$$$$getMinimumExtent$$() {
    return 0;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getStartCoord$ = function $$dvt$$3$$$$AxisInfo$$$$getStartCoord$$() {
    return this.$StartCoord$;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getEndCoord$ = function $$dvt$$3$$$$AxisInfo$$$$getEndCoord$$() {
    return this.$EndCoord$;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getStartOverflow$ = function $$dvt$$3$$$$AxisInfo$$$$getStartOverflow$$() {
    return this.$StartOverflow$;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getEndOverflow$ = function $$dvt$$3$$$$AxisInfo$$$$getEndOverflow$$() {
    return this.$EndOverflow$;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getGroupWidth$ = function $$dvt$$3$$$$AxisInfo$$$$getGroupWidth$$() {
    return 0;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$getGroup$ = function $$dvt$$3$$$$AxisInfo$$$$getGroup$$() {
    return null;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$linearToActual$ = function $$dvt$$3$$$$AxisInfo$$$$linearToActual$$($dvt$$3$$) {
    return $dvt$$3$$;
  };
  $dvt$$3$$.$AxisInfo$.prototype.$actualToLinear$ = function $$dvt$$3$$$$AxisInfo$$$$actualToLinear$$($dvt$$3$$) {
    return $dvt$$3$$;
  };
  $dvt$$3$$.$DataAxisInfo$ = function $$dvt$$3$$$$DataAxisInfo$$($dvt$$3$$, $DvtAxisRenderer$$, $availSpace$$12$$) {
    this.Init($dvt$$3$$, $DvtAxisRenderer$$, $availSpace$$12$$);
  };
  $dvt$$3$$.$Obj$.$createSubclass$($dvt$$3$$.$DataAxisInfo$, $dvt$$3$$.$AxisInfo$);
  $dvt$$3$$.$DataAxisInfo$.$_MAX_NUMBER_OF_GRIDS_AUTO$ = 10;
  $dvt$$3$$.$DataAxisInfo$.$_MINOR_TICK_COUNT$ = 2;
  $dvt$$3$$.$DataAxisInfo$.$_MAX_ZOOM_FACTOR$ = 64;
  $dvt$$3$$.$DataAxisInfo$.prototype.Init = function $$dvt$$3$$$$DataAxisInfo$$$Init$($DvtAxisRenderer$$, $options$$28$$, $availSpace$$13$$) {
    $dvt$$3$$.$DataAxisInfo$.$superclass$.Init.call(this, $DvtAxisRenderer$$, $options$$28$$, $availSpace$$13$$);
    "top" == this.$Position$ || "bottom" == this.$Position$ ? ("off" != $options$$28$$.tickLabel.rendered && "off" != $options$$28$$.rendered && (this.$StartOverflow$ = Math.max($dvt$$3$$.$Axis$.$MINIMUM_AXIS_BUFFER$ - $options$$28$$.leftBuffer, 0), this.$EndOverflow$ = Math.max($dvt$$3$$.$Axis$.$MINIMUM_AXIS_BUFFER$ - $options$$28$$.rightBuffer, 0)), $dvt$$3$$.$Agent$.$isRightToLeft$($DvtAxisRenderer$$) ? (this.$_minCoord$ = this.$EndCoord$ - this.$EndOverflow$, this.$_maxCoord$ = this.$StartCoord$ + 
    this.$StartOverflow$) : (this.$_minCoord$ = this.$StartCoord$ + this.$StartOverflow$, this.$_maxCoord$ = this.$EndCoord$ - this.$EndOverflow$)) : "tangential" == this.$Position$ || "radial" == this.$Position$ ? (this.$_minCoord$ = this.$StartCoord$, this.$_maxCoord$ = this.$EndCoord$) : (this.$_minCoord$ = this.$EndCoord$, this.$_maxCoord$ = this.$StartCoord$);
    this.$DataMin$ = $options$$28$$.dataMin;
    this.$DataMax$ = $options$$28$$.dataMax;
    this.$_isLog$ = "log" == $options$$28$$.scale && 0 < this.$DataMin$ && 0 < this.$DataMax$;
    this.$_globalMin$ = this.$actualToLinear$($options$$28$$.min);
    this.$_globalMax$ = this.$actualToLinear$($options$$28$$.max);
    this.$_minValue$ = null == $options$$28$$.viewportMin ? this.$_globalMin$ : this.$actualToLinear$($options$$28$$.viewportMin);
    this.$_maxValue$ = null == $options$$28$$.viewportMax ? this.$_globalMax$ : this.$actualToLinear$($options$$28$$.viewportMax);
    this.$_dataMin$ = this.$actualToLinear$(this.$DataMin$);
    this.$_dataMax$ = this.$actualToLinear$(this.$DataMax$);
    this.$_majorIncrement$ = this.$actualToLinear$($options$$28$$.step);
    this.$_minorIncrement$ = this.$actualToLinear$($options$$28$$.minorStep);
    this.$_minMajorIncrement$ = this.$actualToLinear$($options$$28$$.minStep);
    this.$_majorTickCount$ = $options$$28$$._majorTickCount;
    this.$_minorTickCount$ = $options$$28$$._minorTickCount;
    this.$_zeroBaseline$ = !this.$_isLog$ && "zero" == $options$$28$$.baselineScaling;
    this.$_converter$ = null;
    null != $options$$28$$.tickLabel && (this.$_converter$ = $options$$28$$.tickLabel.converter);
    this.$_calcAxisExtents$();
    this.$GlobalMin$ = this.$linearToActual$(this.$_globalMin$);
    this.$GlobalMax$ = this.$linearToActual$(this.$_globalMax$);
    this.$MinValue$ = this.$linearToActual$(this.$_minValue$);
    this.$MaxValue$ = this.$linearToActual$(this.$_maxValue$);
  };
  $dvt$$3$$.$DataAxisInfo$.prototype.$getMinLabel$ = function $$dvt$$3$$$$DataAxisInfo$$$$getMinLabel$$() {
    return this.$_zeroBaseline$ || "on" == this.$Options$._continuousExtent && null == this.$Options$.min ? Math.ceil(this.$_minValue$ / this.$_majorIncrement$) * this.$_majorIncrement$ : Math.ceil((this.$_minValue$ - this.$_globalMin$) / this.$_majorIncrement$) * this.$_majorIncrement$ + this.$_globalMin$;
  };
  $dvt$$3$$.$DataAxisInfo$.prototype.$getLabels$ = function $$dvt$$3$$$$DataAxisInfo$$$$getLabels$$($DvtAxisRenderer$$, $levelIdx$$5$$) {
    if ($levelIdx$$5$$ && 0 < $levelIdx$$5$$) {
      return null;
    }
    var $labels$$12$$ = [], $DvtAxisConstants$$ = [], $DvtAxisConstants$$ = $DvtAxisRenderer$$.$_stage$;
    if (this.$Options$.tickLabel && this.$Options$.tickLabel.scaling) {
      var $DvtAxisDefaults$$ = this.$Options$.tickLabel.autoPrecision ? this.$Options$.tickLabel.autoPrecision : "on";
      this.$_axisValueFormatter$ = new $dvt$$3$$.$LinearScaleAxisValueFormatter$($DvtAxisRenderer$$, this.$_minValue$, this.$_maxValue$, this.$_majorIncrement$, this.$Options$.tickLabel.scaling, $DvtAxisDefaults$$);
    }
    for (var $DvtAxisAutomation$$ = 0;$DvtAxisAutomation$$ <= this.$_majorTickCount$;$DvtAxisAutomation$$++) {
      var $label$$29_value$$119$$ = $DvtAxisAutomation$$ * this.$_majorIncrement$ + this.$getMinLabel$();
      if ($label$$29_value$$119$$ > this.$_maxValue$) {
        break;
      }
      var $coord$$4_text$$43$$ = this.$_getUnboundedCoordAt$($label$$29_value$$119$$);
      if (this.$Options$._skipHighestTick) {
        if ($label$$29_value$$119$$ == this.$_maxValue$) {
          continue;
        }
        if ("tangential" != this.$Position$ && Math.abs($coord$$4_text$$43$$ - this.$_maxCoord$) < this.$getTickLabelHeight$()) {
          continue;
        }
      }
      this.$_isLog$ && ($label$$29_value$$119$$ = this.$linearToActual$($label$$29_value$$119$$), this.$_axisValueFormatter$ = new $dvt$$3$$.$LinearScaleAxisValueFormatter$($DvtAxisRenderer$$, $label$$29_value$$119$$, $label$$29_value$$119$$, $label$$29_value$$119$$, this.$Options$.tickLabel.scaling, $DvtAxisDefaults$$));
      $label$$29_value$$119$$ = this.$_formatValue$($label$$29_value$$119$$);
      $coord$$4_text$$43$$ = this.$CreateLabel$($DvtAxisRenderer$$, $label$$29_value$$119$$, $coord$$4_text$$43$$);
      $labels$$12$$.push($coord$$4_text$$43$$);
    }
    "tangential" != this.$Position$ && ($DvtAxisConstants$$ = this.$GetLabelDims$($labels$$12$$, $DvtAxisConstants$$), $labels$$12$$ = this.$SkipLabels$($labels$$12$$, $DvtAxisConstants$$));
    return $labels$$12$$;
  };
  $dvt$$3$$.$DataAxisInfo$.prototype.$getMajorTickCoords$ = function $$dvt$$3$$$$DataAxisInfo$$$$getMajorTickCoords$$() {
    for (var $dvt$$3$$ = [], $DvtAxisRenderer$$ = 0;$DvtAxisRenderer$$ <= this.$_majorTickCount$;$DvtAxisRenderer$$++) {
      var $value$$120$$ = $DvtAxisRenderer$$ * this.$_majorIncrement$ + this.$getMinLabel$();
      if ($value$$120$$ > this.$_maxValue$) {
        break;
      }
      this.$Options$._skipHighestTick && $value$$120$$ == this.$_maxValue$ || $dvt$$3$$.push(this.$_getUnboundedCoordAt$($value$$120$$));
    }
    return $dvt$$3$$;
  };
  $dvt$$3$$.$DataAxisInfo$.prototype.$getMinorTickCoords$ = function $$dvt$$3$$$$DataAxisInfo$$$$getMinorTickCoords$$() {
    for (var $DvtAxisRenderer$$ = [], $i$$215$$ = -1;$i$$215$$ <= this.$_majorTickCount$;$i$$215$$++) {
      var $value$$121$$ = $i$$215$$ * this.$_majorIncrement$ + this.$getMinLabel$();
      if (this.$_isLog$ && 1 == this.$_majorIncrement$ && 1 == this.$_minorIncrement$) {
        for (var $DvtAxisConstants$$ = 2;9 >= $DvtAxisConstants$$;$DvtAxisConstants$$++) {
          var $DvtAxisDefaults$$ = $value$$121$$ + $dvt$$3$$.Math.log10($DvtAxisConstants$$);
          if ($DvtAxisDefaults$$ > this.$_maxValue$) {
            break;
          }
          $DvtAxisDefaults$$ < this.$_minValue$ || ($DvtAxisDefaults$$ = this.$_getUnboundedCoordAt$($DvtAxisDefaults$$), $DvtAxisRenderer$$.push($DvtAxisDefaults$$));
        }
      } else {
        for ($DvtAxisConstants$$ = 1;$DvtAxisConstants$$ < this.$_minorTickCount$;$DvtAxisConstants$$++) {
          $DvtAxisDefaults$$ = $value$$121$$ + $DvtAxisConstants$$ * this.$_minorIncrement$;
          if ($DvtAxisDefaults$$ > this.$_maxValue$) {
            break;
          }
          $DvtAxisDefaults$$ < this.$_minValue$ || ($DvtAxisDefaults$$ = this.$_getUnboundedCoordAt$($DvtAxisDefaults$$), $DvtAxisRenderer$$.push($DvtAxisDefaults$$));
        }
      }
    }
    return $DvtAxisRenderer$$;
  };
  $dvt$$3$$.$DataAxisInfo$.prototype.$getBaselineCoord$ = function $$dvt$$3$$$$DataAxisInfo$$$$getBaselineCoord$$() {
    return this.$_isLog$ ? this.$_minCoord$ : this.$getBoundedCoordAt$(0);
  };
  $dvt$$3$$.$DataAxisInfo$.prototype.$getUnboundedValueAt$ = function $$dvt$$3$$$$DataAxisInfo$$$$getUnboundedValueAt$$($dvt$$3$$) {
    return null == $dvt$$3$$ ? null : this.$linearToActual$(this.$_minValue$ + ($dvt$$3$$ - this.$_minCoord$) / (this.$_maxCoord$ - this.$_minCoord$) * (this.$_maxValue$ - this.$_minValue$));
  };
  $dvt$$3$$.$DataAxisInfo$.prototype.$getUnboundedCoordAt$ = function $$dvt$$3$$$$DataAxisInfo$$$$getUnboundedCoordAt$$($dvt$$3$$) {
    return this.$_getUnboundedCoordAt$(this.$actualToLinear$($dvt$$3$$));
  };
  $dvt$$3$$.$DataAxisInfo$.prototype.$_getUnboundedCoordAt$ = function $$dvt$$3$$$$DataAxisInfo$$$$_getUnboundedCoordAt$$($dvt$$3$$) {
    return null == $dvt$$3$$ ? null : this.$_minCoord$ + ($dvt$$3$$ - this.$_minValue$) / (this.$_maxValue$ - this.$_minValue$) * (this.$_maxCoord$ - this.$_minCoord$);
  };
  $dvt$$3$$.$DataAxisInfo$.prototype.$_formatValue$ = function $$dvt$$3$$$$DataAxisInfo$$$$_formatValue$$($DvtAxisRenderer$$) {
    if (this.$_converter$ && (this.$_converter$.getAsString || this.$_converter$.format)) {
      if (this.$_axisValueFormatter$) {
        return this.$_axisValueFormatter$.format($DvtAxisRenderer$$, this.$_converter$);
      }
      if (this.$_converter$.getAsString) {
        return this.$_converter$.getAsString($DvtAxisRenderer$$);
      }
      if (this.$_converter$.format) {
        return this.$_converter$.format($DvtAxisRenderer$$);
      }
    } else {
      return this.$_axisValueFormatter$ ? this.$_axisValueFormatter$.format($DvtAxisRenderer$$) : $DvtAxisRenderer$$.toFixed(Math.max(Math.ceil(-$dvt$$3$$.Math.log10(this.$_majorIncrement$)), 0));
    }
  };
  $dvt$$3$$.$DataAxisInfo$.prototype.$_calcMajorMinorIncr$ = function $$dvt$$3$$$$DataAxisInfo$$$$_calcMajorMinorIncr$$($DvtAxisRenderer$$) {
    this.$_majorIncrement$ || (this.$_majorIncrement$ = this.$_majorTickCount$ ? (this.$_maxValue$ - this.$_minValue$) / this.$_majorTickCount$ : Math.max($DvtAxisRenderer$$, this.$_minMajorIncrement$));
    this.$_majorTickCount$ || (this.$_majorTickCount$ = (this.$_maxValue$ - this.$_minValue$) / this.$_majorIncrement$);
    this.$_minorTickCount$ || (this.$_minorTickCount$ = this.$_minorIncrement$ ? this.$_majorIncrement$ / this.$_minorIncrement$ : this.$_isLog$ ? this.$_majorIncrement$ : $dvt$$3$$.$DataAxisInfo$.$_MINOR_TICK_COUNT$);
    this.$_minorIncrement$ || (this.$_minorIncrement$ = this.$_majorIncrement$ / this.$_minorTickCount$);
  };
  $dvt$$3$$.$DataAxisInfo$.prototype.$_calcAxisExtents$ = function $$dvt$$3$$$$DataAxisInfo$$$$_calcAxisExtents$$() {
    var $DvtAxisRenderer$$ = "on" == this.$Options$._continuousExtent;
    this.$_zeroBaseline$ && (this.$_dataMin$ = Math.min(0, this.$_dataMin$), this.$_dataMax$ = Math.max(0, this.$_dataMax$));
    var $scaleUnit$$1$$ = this.$_calcAxisScale$(null != this.$_globalMin$ ? this.$_globalMin$ : this.$_dataMin$, null != this.$_globalMax$ ? this.$_globalMax$ : this.$_dataMax$), $scaleUnit$$1$$ = Math.max($scaleUnit$$1$$, this.$_minMajorIncrement$);
    this.$_dataMin$ == this.$_dataMax$ && (0 == this.$_dataMin$ ? this.$_dataMax$ += 5 * $scaleUnit$$1$$ : (this.$_dataMin$ -= 2 * $scaleUnit$$1$$, this.$_dataMax$ += 2 * $scaleUnit$$1$$));
    null == this.$_globalMin$ && (this.$_zeroBaseline$ && 0 <= this.$_dataMin$ ? this.$_globalMin$ = 0 : $DvtAxisRenderer$$ ? this.$_globalMin$ = this.$_dataMin$ - .1 * (this.$_dataMax$ - this.$_dataMin$) : this.$_zeroBaseline$ || null == this.$_globalMax$ ? this.$_globalMin$ = (Math.ceil(this.$_dataMin$ / $scaleUnit$$1$$) - 1) * $scaleUnit$$1$$ : (this.$_globalMin$ = this.$_globalMax$, this.$_globalMin$ -= $scaleUnit$$1$$ * (Math.floor((this.$_globalMin$ - this.$_dataMin$) / $scaleUnit$$1$$) + 1)), 
    0 <= this.$_dataMin$ && (this.$_globalMin$ = Math.max(this.$_globalMin$, 0)));
    null == this.$_globalMax$ && (this.$_majorTickCount$ ? this.$_globalMax$ = this.$_globalMin$ + this.$_majorTickCount$ * $scaleUnit$$1$$ : this.$_zeroBaseline$ && 0 >= this.$_dataMax$ ? this.$_globalMax$ = 0 : $DvtAxisRenderer$$ ? this.$_globalMax$ = this.$_dataMax$ + .1 * (this.$_dataMax$ - this.$_dataMin$) : this.$_zeroBaseline$ ? this.$_globalMax$ = (Math.floor(this.$_dataMax$ / $scaleUnit$$1$$) + 1) * $scaleUnit$$1$$ : (this.$_globalMax$ = this.$_globalMin$, this.$_globalMax$ += $scaleUnit$$1$$ * 
    (Math.floor((this.$_dataMax$ - this.$_globalMax$) / $scaleUnit$$1$$) + 1)), 0 >= this.$_dataMax$ && (this.$_globalMax$ = Math.min(this.$_globalMax$, 0)));
    this.$_globalMax$ == this.$_globalMin$ && (this.$_globalMax$ = 100, this.$_globalMin$ = 0, $scaleUnit$$1$$ = (this.$_globalMax$ - this.$_globalMin$) / $dvt$$3$$.$DataAxisInfo$.$_MAX_NUMBER_OF_GRIDS_AUTO$);
    null == this.$_minValue$ && (this.$_minValue$ = this.$_globalMin$);
    null == this.$_maxValue$ && (this.$_maxValue$ = this.$_globalMax$);
    if (this.$_minValue$ != this.$_globalMin$ || this.$_maxValue$ != this.$_globalMax$) {
      $scaleUnit$$1$$ = this.$_calcAxisScale$(this.$_minValue$, this.$_maxValue$);
    }
    this.$_globalMin$ > this.$_minValue$ && (this.$_globalMin$ = this.$_minValue$);
    this.$_globalMax$ < this.$_maxValue$ && (this.$_globalMax$ = this.$_maxValue$);
    this.$_calcMajorMinorIncr$($scaleUnit$$1$$);
  };
  $dvt$$3$$.$DataAxisInfo$.prototype.$_calcAxisScale$ = function $$dvt$$3$$$$DataAxisInfo$$$$_calcAxisScale$$($DvtAxisRenderer$$, $max$$) {
    if (this.$_majorIncrement$) {
      return this.$_majorIncrement$;
    }
    var $first2Digits_firstDigit_increment_spread$$ = $max$$ - $DvtAxisRenderer$$;
    if (this.$_isLog$) {
      return Math.floor($first2Digits_firstDigit_increment_spread$$ / 8) + 1;
    }
    if (0 == $first2Digits_firstDigit_increment_spread$$) {
      return 0 == $DvtAxisRenderer$$ ? 10 : Math.pow(10, Math.floor($dvt$$3$$.Math.log10($DvtAxisRenderer$$)) - 1);
    }
    if (this.$_majorTickCount$) {
      var $first2Digits_firstDigit_increment_spread$$ = $first2Digits_firstDigit_increment_spread$$ / this.$_majorTickCount$, $DvtAxisConstants$$ = Math.pow(10, Math.ceil($dvt$$3$$.Math.log10($first2Digits_firstDigit_increment_spread$$) - 1)), $first2Digits_firstDigit_increment_spread$$ = $first2Digits_firstDigit_increment_spread$$ / $DvtAxisConstants$$, $first2Digits_firstDigit_increment_spread$$ = 1 < $first2Digits_firstDigit_increment_spread$$ && 1.5 >= $first2Digits_firstDigit_increment_spread$$ ? 
      1.5 : 5 < $first2Digits_firstDigit_increment_spread$$ ? 10 : Math.ceil($first2Digits_firstDigit_increment_spread$$);
      return $first2Digits_firstDigit_increment_spread$$ * $DvtAxisConstants$$;
    }
    $DvtAxisConstants$$ = Math.pow(10, Math.ceil($dvt$$3$$.Math.log10($first2Digits_firstDigit_increment_spread$$)) - 2);
    $first2Digits_firstDigit_increment_spread$$ = Math.round($first2Digits_firstDigit_increment_spread$$ / $DvtAxisConstants$$);
    return (10 <= $first2Digits_firstDigit_increment_spread$$ && 14 >= $first2Digits_firstDigit_increment_spread$$ ? 2 : 15 <= $first2Digits_firstDigit_increment_spread$$ && 19 >= $first2Digits_firstDigit_increment_spread$$ ? 3 : 20 <= $first2Digits_firstDigit_increment_spread$$ && 24 >= $first2Digits_firstDigit_increment_spread$$ ? 4 : 25 <= $first2Digits_firstDigit_increment_spread$$ && 45 >= $first2Digits_firstDigit_increment_spread$$ ? 5 : 46 <= $first2Digits_firstDigit_increment_spread$$ && 
    80 >= $first2Digits_firstDigit_increment_spread$$ ? 10 : 20) * $DvtAxisConstants$$;
  };
  $dvt$$3$$.$DataAxisInfo$.prototype.$getMajorTickCount$ = function $$dvt$$3$$$$DataAxisInfo$$$$getMajorTickCount$$() {
    return this.$_majorTickCount$;
  };
  $dvt$$3$$.$DataAxisInfo$.prototype.$getMinorTickCount$ = function $$dvt$$3$$$$DataAxisInfo$$$$getMinorTickCount$$() {
    return this.$_minorTickCount$;
  };
  $dvt$$3$$.$DataAxisInfo$.prototype.$getMajorIncrement$ = function $$dvt$$3$$$$DataAxisInfo$$$$getMajorIncrement$$() {
    return this.$linearToActual$(this.$_majorIncrement$);
  };
  $dvt$$3$$.$DataAxisInfo$.prototype.$getMinimumExtent$ = function $$dvt$$3$$$$DataAxisInfo$$$$getMinimumExtent$$() {
    return (this.$_globalMax$ - this.$_globalMin$) / $dvt$$3$$.$DataAxisInfo$.$_MAX_ZOOM_FACTOR$;
  };
  $dvt$$3$$.$DataAxisInfo$.prototype.$getStartOverflow$ = function $$dvt$$3$$$$DataAxisInfo$$$$getStartOverflow$$() {
    return "top" != this.$Position$ && "bottom" != this.$Position$ || !$dvt$$3$$.$Agent$.$isRightToLeft$(this.$getCtx$()) ? this.$StartOverflow$ : this.$EndOverflow$;
  };
  $dvt$$3$$.$DataAxisInfo$.prototype.$getEndOverflow$ = function $$dvt$$3$$$$DataAxisInfo$$$$getEndOverflow$$() {
    return "top" != this.$Position$ && "bottom" != this.$Position$ || !$dvt$$3$$.$Agent$.$isRightToLeft$(this.$getCtx$()) ? this.$EndOverflow$ : this.$StartOverflow$;
  };
  $dvt$$3$$.$DataAxisInfo$.prototype.$linearToActual$ = function $$dvt$$3$$$$DataAxisInfo$$$$linearToActual$$($dvt$$3$$) {
    return null == $dvt$$3$$ ? null : this.$_isLog$ ? Math.pow(10, $dvt$$3$$) : $dvt$$3$$;
  };
  $dvt$$3$$.$DataAxisInfo$.prototype.$actualToLinear$ = function $$dvt$$3$$$$DataAxisInfo$$$$actualToLinear$$($DvtAxisRenderer$$) {
    return null == $DvtAxisRenderer$$ ? null : this.$_isLog$ ? 0 < $DvtAxisRenderer$$ ? $dvt$$3$$.Math.log10($DvtAxisRenderer$$) : null : $DvtAxisRenderer$$;
  };
  $dvt$$3$$.$GroupAxisInfo$ = function $$dvt$$3$$$$GroupAxisInfo$$($dvt$$3$$, $DvtAxisRenderer$$, $availSpace$$14$$) {
    this.Init($dvt$$3$$, $DvtAxisRenderer$$, $availSpace$$14$$);
  };
  $dvt$$3$$.$Obj$.$createSubclass$($dvt$$3$$.$GroupAxisInfo$, $dvt$$3$$.$AxisInfo$);
  $dvt$$3$$.$GroupAxisInfo$.$_MAX_LINE_WRAP$ = 3;
  $dvt$$3$$.$GroupAxisInfo$.$_ROTATE_THRESHOLD$ = 12;
  $dvt$$3$$.$GroupAxisInfo$.prototype.Init = function $$dvt$$3$$$$GroupAxisInfo$$$Init$($context$$93$$, $options$$30$$, $availSpace$$15_titleHeight$$3$$) {
    $dvt$$3$$.$GroupAxisInfo$.$superclass$.Init.call(this, $context$$93$$, $options$$30$$, $availSpace$$15_titleHeight$$3$$);
    var $DvtAxisConstants$$ = $dvt$$3$$.$Agent$.$isRightToLeft$($context$$93$$), $isHoriz$$4$$ = "top" == this.$Position$ || "bottom" == this.$Position$;
    if ($isHoriz$$4$$ && $DvtAxisConstants$$) {
      var $DvtAxisAutomation$$ = this.$StartCoord$;
      this.$StartCoord$ = this.$EndCoord$;
      this.$EndCoord$ = $DvtAxisAutomation$$;
    }
    this.$_levelsArray$ = [];
    this.$_groupCount$ = this.$_generateLevelsArray$($options$$30$$.groups, 0, this.$_levelsArray$, 0);
    this.$_numLevels$ = this.$_levelsArray$.length;
    this.$_areSeparatorsRendered$ = "on" == $options$$30$$.groupSeparators.rendered;
    this.$_separatorColor$ = $options$$30$$.groupSeparators.color;
    this.$_lastRenderedLevel$ = null;
    this.$_drilling$ = $options$$30$$.drilling;
    var $DvtAxisAutomation$$ = 0 < $options$$30$$.endGroupOffset ? Number($options$$30$$.endGroupOffset) : 0, $startOffset$$1$$ = 0 < $options$$30$$.startGroupOffset ? Number($options$$30$$.startGroupOffset) : 0;
    this.$DataMin$ = 0;
    this.$DataMax$ = this.$_groupCount$ - 1;
    this.$GlobalMin$ = null == $options$$30$$.min ? this.$DataMin$ - $startOffset$$1$$ : $options$$30$$.min;
    this.$GlobalMax$ = null == $options$$30$$.max ? this.$DataMax$ + $DvtAxisAutomation$$ : $options$$30$$.max;
    var $startIndex$$1$$ = this.$getGroupIndex$($options$$30$$.viewportStartGroup), $endIndex$$ = this.$getGroupIndex$($options$$30$$.viewportEndGroup);
    -1 != $startIndex$$1$$ && (this.$MinValue$ = $startIndex$$1$$ - $startOffset$$1$$);
    -1 != $endIndex$$ && (this.$MaxValue$ = $endIndex$$ + $DvtAxisAutomation$$);
    null != $options$$30$$.viewportMin && (this.$MinValue$ = $options$$30$$.viewportMin);
    null != $options$$30$$.viewportMax && (this.$MaxValue$ = $options$$30$$.viewportMax);
    null == this.$MinValue$ && (this.$MinValue$ = this.$GlobalMin$);
    null == this.$MaxValue$ && (this.$MaxValue$ = this.$GlobalMax$);
    this.$GlobalMin$ > this.$MinValue$ && (this.$GlobalMin$ = this.$MinValue$);
    this.$GlobalMax$ < this.$MaxValue$ && (this.$GlobalMax$ = this.$MaxValue$);
    this.$_groupWidthRatios$ = $options$$30$$._groupWidthRatios;
    this.$_processGroupWidthRatios$();
    this.$_startBuffer$ = $DvtAxisConstants$$ ? $options$$30$$.rightBuffer : $options$$30$$.leftBuffer;
    this.$_endBuffer$ = $DvtAxisConstants$$ ? $options$$30$$.leftBuffer : $options$$30$$.rightBuffer;
    this.$_isLabelRotated$ = [];
    for ($DvtAxisConstants$$ = 0;$DvtAxisConstants$$ < this.$_numLevels$;$DvtAxisConstants$$++) {
      this.$_isLabelRotated$.push(!1);
    }
    this.$_renderGridAtLabels$ = $options$$30$$._renderGridAtLabels;
    this.$_labels$ = null;
    this.$_maxSpace$ = $isHoriz$$4$$ ? $availSpace$$15_titleHeight$$3$$.$h$ : $availSpace$$15_titleHeight$$3$$.$w$;
    "off" != $options$$30$$.rendered && ($availSpace$$15_titleHeight$$3$$ = $DvtAxisRenderer$$.$getTitleHeight$($context$$93$$, $options$$30$$, $isHoriz$$4$$ ? $availSpace$$15_titleHeight$$3$$.$w$ : $availSpace$$15_titleHeight$$3$$.$h$, $isHoriz$$4$$ ? $availSpace$$15_titleHeight$$3$$.$h$ : $availSpace$$15_titleHeight$$3$$.$w$), this.$_maxSpace$ -= 0 != $availSpace$$15_titleHeight$$3$$ ? $availSpace$$15_titleHeight$$3$$ + $DvtAxisDefaults$$.$getGapSize$($context$$93$$, $options$$30$$, $options$$30$$.layout.titleGap) : 
    0);
    this.$_maxLineWrap$ = $dvt$$3$$.$GroupAxisInfo$.$_MAX_LINE_WRAP$;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$_processGroupWidthRatios$ = function $$dvt$$3$$$$GroupAxisInfo$$$$_processGroupWidthRatios$$() {
    if (!this.$_groupWidthRatios$ || 2 > this.$_groupWidthRatios$.length) {
      this.$_groupWidthRatios$ = null;
    } else {
      for (var $DvtAxisRenderer$$ = 0, $anchor$$1_groupMin$$, $groupMax$$, $DvtAxisConstants$$ = 0;$DvtAxisConstants$$ < this.$_groupCount$;$DvtAxisConstants$$++) {
        $anchor$$1_groupMin$$ = 0 == $DvtAxisConstants$$ ? this.$MinValue$ : Math.max($DvtAxisConstants$$ - .5, this.$MinValue$), $groupMax$$ = $DvtAxisConstants$$ == this.$_groupCount$ - 1 ? this.$MaxValue$ : Math.min($DvtAxisConstants$$ + .5, this.$MaxValue$), $groupMax$$ > $anchor$$1_groupMin$$ && ($DvtAxisRenderer$$ += ($groupMax$$ - $anchor$$1_groupMin$$) * this.$_groupWidthRatios$[$DvtAxisConstants$$]);
      }
      var $DvtAxisDefaults$$ = this.$EndCoord$ - this.$StartCoord$;
      this.$_groupWidths$ = $dvt$$3$$.$ArrayUtils$.map(this.$_groupWidthRatios$, function($dvt$$3$$) {
        return $dvt$$3$$ * $DvtAxisDefaults$$ / $DvtAxisRenderer$$;
      });
      this.$_borderValues$ = [];
      for ($DvtAxisConstants$$ = 0;$DvtAxisConstants$$ < this.$_groupWidthRatios$.length - 1;$DvtAxisConstants$$++) {
        this.$_borderValues$.push($DvtAxisConstants$$ + .5);
      }
      this.$_borderCoords$ = [];
      $anchor$$1_groupMin$$ = Math.min(Math.max(Math.round(this.$MinValue$), 0), this.$_borderValues$.length - 1);
      this.$_borderCoords$[$anchor$$1_groupMin$$] = this.$StartCoord$ + (this.$_borderValues$[$anchor$$1_groupMin$$] - this.$MinValue$) * this.$_groupWidths$[$anchor$$1_groupMin$$];
      for ($DvtAxisConstants$$ = $anchor$$1_groupMin$$ + 1;$DvtAxisConstants$$ < this.$_borderValues$.length;$DvtAxisConstants$$++) {
        this.$_borderCoords$[$DvtAxisConstants$$] = this.$_borderCoords$[$DvtAxisConstants$$ - 1] + this.$_groupWidths$[$DvtAxisConstants$$];
      }
      for ($DvtAxisConstants$$ = $anchor$$1_groupMin$$ - 1;0 <= $DvtAxisConstants$$;$DvtAxisConstants$$--) {
        this.$_borderCoords$[$DvtAxisConstants$$] = this.$_borderCoords$[$DvtAxisConstants$$ + 1] - this.$_groupWidths$[$DvtAxisConstants$$ + 1];
      }
    }
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$_rotateLabels$ = function $$dvt$$3$$$$GroupAxisInfo$$$$_rotateLabels$$($labels$$13$$, $container$$15$$, $overflow$$1_text$$44$$, $DvtAxisConstants$$) {
    var $DvtAxisDefaults$$, $DvtAxisAutomation$$ = this.$getCtx$(), $isRTL$$6_labelDims$$7$$ = $dvt$$3$$.$Agent$.$isRightToLeft$($DvtAxisAutomation$$), $isHierarchical$$2$$ = 1 < this.$_numLevels$;
    null == $DvtAxisConstants$$ && ($DvtAxisConstants$$ = this.$_numLevels$ - 1);
    this.$_isLabelRotated$[$DvtAxisConstants$$] = !0;
    $isHierarchical$$2$$ || this.$_setOverflow$($overflow$$1_text$$44$$, $overflow$$1_text$$44$$, $labels$$13$$);
    for (var $i$$217$$ = 0;$i$$217$$ < $labels$$13$$.length;$i$$217$$++) {
      if ($overflow$$1_text$$44$$ = $labels$$13$$[$i$$217$$], null != $overflow$$1_text$$44$$) {
        $DvtAxisDefaults$$ = $overflow$$1_text$$44$$.$getX$();
        if ($overflow$$1_text$$44$$ instanceof $dvt$$3$$.$MultilineText$ || $overflow$$1_text$$44$$ instanceof $dvt$$3$$.$BackgroundMultilineText$) {
          var $groupSpan$$ = this.$getGroupWidth$() * (this.$getEndIndex$($i$$217$$, $DvtAxisConstants$$) - this.$getStartIndex$($i$$217$$, $DvtAxisConstants$$) + 1);
          2 * $overflow$$1_text$$44$$.$getLineHeight$() < $groupSpan$$ && 0 < this.$_maxSpace$ ? $overflow$$1_text$$44$$.$wrapText$(this.$_maxSpace$, $overflow$$1_text$$44$$.$getLineHeight$() * $dvt$$3$$.$GroupAxisInfo$.$_MAX_LINE_WRAP$, 1) : $overflow$$1_text$$44$$.$setWrapEnabled$(!1);
        }
        $overflow$$1_text$$44$$.$setX$(0);
        $overflow$$1_text$$44$$.$setY$(0);
        $isRTL$$6_labelDims$$7$$ ? $overflow$$1_text$$44$$.$setRotation$(Math.PI / 2) : $overflow$$1_text$$44$$.$setRotation$(3 * Math.PI / 2);
        $overflow$$1_text$$44$$.$setTranslateX$($DvtAxisDefaults$$);
      }
    }
    $isRTL$$6_labelDims$$7$$ = this.$GuessLabelDims$($labels$$13$$, $container$$15$$, null, $DvtAxisConstants$$);
    $DvtAxisRenderer$$.$isWrapEnabled$(this.$Options$.tickLabel.style) && 0 < this.$_maxSpace$ && this.$_sanitizeWrappedText$($DvtAxisAutomation$$, $isRTL$$6_labelDims$$7$$, $labels$$13$$, !0, $isHierarchical$$2$$) && ($isRTL$$6_labelDims$$7$$ = this.$GuessLabelDims$($labels$$13$$, $container$$15$$, null, $DvtAxisConstants$$));
    return this.$SkipLabels$($labels$$13$$, $isRTL$$6_labelDims$$7$$);
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$_sanitizeWrappedText$ = function $$dvt$$3$$$$GroupAxisInfo$$$$_sanitizeWrappedText$$($DvtAxisRenderer$$, $labelDims$$8_updateLabelDims$$1$$, $labels$$14$$, $DvtAxisConstants$$, $isHierarchical$$3$$) {
    $labelDims$$8_updateLabelDims$$1$$ = this.$_calculateMaxWrap$($labelDims$$8_updateLabelDims$$1$$, $labels$$14$$, $DvtAxisConstants$$);
    for (var $DvtAxisAutomation$$ = 0, $i$$218$$ = 0;$i$$218$$ < $labels$$14$$.length;$i$$218$$++) {
      var $text$$45$$ = $labels$$14$$[$i$$218$$];
      if ($text$$45$$) {
        var $isMultiline$$3$$ = $text$$45$$ instanceof $dvt$$3$$.$MultilineText$ || $text$$45$$ instanceof $dvt$$3$$.$BackgroundMultilineText$;
        $labelDims$$8_updateLabelDims$$1$$ && $isMultiline$$3$$ && $text$$45$$.$isWrapEnabled$() && $text$$45$$.$wrapText$(this.$_maxSpace$, $text$$45$$.$getLineHeight$() * this.$_maxLineWrap$, 1);
        $isHierarchical$$3$$ && ($DvtAxisAutomation$$ = Math.max($DvtAxisAutomation$$, $dvt$$3$$.$TextUtils$.$getTextWidth$($text$$45$$)));
        $text$$45$$.$alignMiddle$();
      }
    }
    $isHierarchical$$3$$ && (this.$_maxSpace$ -= $DvtAxisAutomation$$ + $DvtAxisDefaults$$.$getGapSize$($DvtAxisRenderer$$, this.$Options$, $DvtAxisConstants$$ ? this.$Options$.layout.hierarchicalLabelGapHeight : this.$Options$.layout.hierarchicalLabelGapWidth));
    return $labelDims$$8_updateLabelDims$$1$$;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$_calculateMaxWrap$ = function $$dvt$$3$$$$GroupAxisInfo$$$$_calculateMaxWrap$$($DvtAxisRenderer$$, $labels$$15$$, $isRotated$$3$$) {
    for (var $DvtAxisConstants$$ = !1;this.$IsOverlapping$($DvtAxisRenderer$$, 0) && 1 < this.$_maxLineWrap$;) {
      for (var $DvtAxisConstants$$ = !0, $DvtAxisDefaults$$ = 0;$DvtAxisDefaults$$ < $labels$$15$$.length;$DvtAxisDefaults$$++) {
        var $DvtAxisAutomation$$ = $labels$$15$$[$DvtAxisDefaults$$];
        ($DvtAxisAutomation$$ instanceof $dvt$$3$$.$MultilineText$ || $DvtAxisAutomation$$ instanceof $dvt$$3$$.$BackgroundMultilineText$) && $DvtAxisAutomation$$.$getLineCount$() == this.$_maxLineWrap$ && ($DvtAxisAutomation$$ = $DvtAxisAutomation$$.$getLineHeight$(), $isRotated$$3$$ ? $DvtAxisRenderer$$[$DvtAxisDefaults$$].$w$ -= $DvtAxisAutomation$$ : ($DvtAxisRenderer$$[$DvtAxisDefaults$$].y += .5 * $DvtAxisAutomation$$, $DvtAxisRenderer$$[$DvtAxisDefaults$$].$h$ -= $DvtAxisAutomation$$));
      }
      this.$_maxLineWrap$--;
    }
    return $DvtAxisConstants$$;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$isLabelRotated$ = function $$dvt$$3$$$$GroupAxisInfo$$$$isLabelRotated$$($dvt$$3$$) {
    null == $dvt$$3$$ && ($dvt$$3$$ = this.$_numLevels$ - 1);
    return this.$_isLabelRotated$[$dvt$$3$$];
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$_setOverflow$ = function $$dvt$$3$$$$GroupAxisInfo$$$$_setOverflow$$($DvtAxisRenderer$$, $endOverflow$$, $isRTL$$7_labels$$16$$) {
    $DvtAxisRenderer$$ = Math.max($DvtAxisRenderer$$ - this.$_startBuffer$, 0);
    $endOverflow$$ = Math.max($endOverflow$$ - this.$_endBuffer$, 0);
    $isRTL$$7_labels$$16$$ = $dvt$$3$$.$Agent$.$isRightToLeft$(this.$getCtx$());
    this.$StartCoord$ += ($DvtAxisRenderer$$ - this.$StartOverflow$) * ($isRTL$$7_labels$$16$$ ? -1 : 1);
    this.$EndCoord$ -= ($endOverflow$$ - this.$EndOverflow$) * ($isRTL$$7_labels$$16$$ ? -1 : 1);
    this.$_processGroupWidthRatios$();
    for (var $DvtAxisConstants$$ = 0;$DvtAxisConstants$$ < this.$_numLevels$;$DvtAxisConstants$$++) {
      $isRTL$$7_labels$$16$$ = this.$_labels$[$DvtAxisConstants$$];
      for (var $DvtAxisDefaults$$ = 0;$DvtAxisDefaults$$ < $isRTL$$7_labels$$16$$.length;$DvtAxisDefaults$$++) {
        var $DvtAxisAutomation$$ = $isRTL$$7_labels$$16$$[$DvtAxisDefaults$$];
        if ($DvtAxisAutomation$$) {
          var $coord$$8$$ = this.$_getLabelCoord$($DvtAxisConstants$$, this.$getLabelIndex$($DvtAxisAutomation$$));
          $DvtAxisAutomation$$.$setX$($coord$$8$$);
        }
      }
    }
    this.$StartOverflow$ = $DvtAxisRenderer$$;
    this.$EndOverflow$ = $endOverflow$$;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$getLabels$ = function $$dvt$$3$$$$GroupAxisInfo$$$$getLabels$$($dvt$$3$$, $DvtAxisRenderer$$) {
    null == $DvtAxisRenderer$$ && ($DvtAxisRenderer$$ = this.$_numLevels$ - 1);
    this.$_labels$ || this.$_generateLabels$($dvt$$3$$);
    return this.$_labels$[$DvtAxisRenderer$$];
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$_getLabelCoord$ = function $$dvt$$3$$$$GroupAxisInfo$$$$_getLabelCoord$$($dvt$$3$$, $DvtAxisRenderer$$) {
    var $startValue$$ = this.$getStartIndex$($DvtAxisRenderer$$, $dvt$$3$$), $DvtAxisConstants$$ = this.$getEndIndex$($DvtAxisRenderer$$, $dvt$$3$$);
    if (null == $startValue$$ || null == $DvtAxisConstants$$) {
      return null;
    }
    $startValue$$ < this.$MinValue$ && $DvtAxisConstants$$ > this.$MinValue$ && ($startValue$$ = this.$MinValue$);
    $DvtAxisConstants$$ > this.$MaxValue$ && $startValue$$ < this.$MaxValue$ && ($DvtAxisConstants$$ = this.$MaxValue$);
    return this.$getCoordAt$($DvtAxisConstants$$ ? $startValue$$ + ($DvtAxisConstants$$ - $startValue$$) / 2 : $startValue$$);
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$_generateLabels$ = function $$dvt$$3$$$$GroupAxisInfo$$$$_generateLabels$$($context$$97$$) {
    var $labels$$17_totalHeight$$ = [];
    this.$_labels$ = [];
    for (var $container$$16$$ = $context$$97$$.$_stage$, $DvtAxisConstants$$ = "top" == this.$Position$ || "bottom" == this.$Position$, $endOverflow$$1_isRTL$$8_minLabelDims$$ = $dvt$$3$$.$Agent$.$isRightToLeft$($context$$97$$), $DvtAxisAutomation$$ = 1 < this.$_numLevels$, $groupWidth_labelDims$$10$$ = this.$getGroupWidth$(), $availSize$$1$$ = this.$_maxSpace$, $gap$$9$$ = $DvtAxisAutomation$$ ? $DvtAxisDefaults$$.$getGapSize$($context$$97$$, this.$Options$, this.$Options$.layout[$DvtAxisConstants$$ ? 
    "hierarchicalLabelGapHeight" : "hierarchicalLabelGapWidth"]) : 0, $rotationEnabled$$ = "auto" == this.$Options$.tickLabel.rotation && $DvtAxisConstants$$, $autoRotate$$ = !$DvtAxisAutomation$$ && $rotationEnabled$$ && $groupWidth_labelDims$$10$$ < $dvt$$3$$.$GroupAxisInfo$.$_ROTATE_THRESHOLD$, $tickLabelStyle_wrapping$$ = this.$Options$.tickLabel.style, $tickLabelStyle_wrapping$$ = $DvtAxisRenderer$$.$isWrapEnabled$(this.$Options$.tickLabel.style) && "tangential" != this.$Position$ && $groupWidth_labelDims$$10$$ > 
    $dvt$$3$$.$TextUtils$.$getTextStringHeight$($context$$97$$, $tickLabelStyle_wrapping$$), $j$$30_label$$30$$, $firstLabel_firstLabelDim$$, $lastLabel_lastLabelDim_maxLabelDims$$, $cssStyle$$27_totalSpace$$1$$, $coord$$9_text$$48$$, $level$$20_startOverflow$$1$$ = 0;$level$$20_startOverflow$$1$$ < this.$_numLevels$;$level$$20_startOverflow$$1$$++) {
      var $dims$$32_levels$$1$$ = this.$_levelsArray$[$level$$20_startOverflow$$1$$], $increment$$1$$ = 1;
      $autoRotate$$ && ($increment$$1$$ = $dvt$$3$$.$GroupAxisInfo$.$_ROTATE_THRESHOLD$ / (2 * $groupWidth_labelDims$$10$$), this.$Options$._duringZoomAndScroll && ($increment$$1$$ *= 4), $increment$$1$$ = Math.max(1, Math.floor($increment$$1$$)));
      for (var $i$$221$$ = 0;$i$$221$$ < $dims$$32_levels$$1$$.length;$i$$221$$ += $increment$$1$$) {
        if ($dims$$32_levels$$1$$[$i$$221$$]) {
          if ($j$$30_label$$30$$ = this.$getLabelAt$($i$$221$$, $level$$20_startOverflow$$1$$), "" == $j$$30_label$$30$$ || !$j$$30_label$$30$$ && 0 != $j$$30_label$$30$$) {
            $labels$$17_totalHeight$$.push(null);
          } else {
            if ($coord$$9_text$$48$$ = this.$_getLabelCoord$($level$$20_startOverflow$$1$$, $i$$221$$), null != $coord$$9_text$$48$$) {
              $cssStyle$$27_totalSpace$$1$$ = this.$getLabelStyleAt$($i$$221$$, $level$$20_startOverflow$$1$$);
              var $bMultiline$$1$$ = !$autoRotate$$ && $tickLabelStyle_wrapping$$ && "number" != typeof $j$$30_label$$30$$ && 0 <= $j$$30_label$$30$$.indexOf(" ");
              $coord$$9_text$$48$$ = this.$CreateLabel$($context$$97$$, $j$$30_label$$30$$, $coord$$9_text$$48$$, $cssStyle$$27_totalSpace$$1$$, $bMultiline$$1$$);
              var $groupSpan$$1$$ = $groupWidth_labelDims$$10$$ * (this.$getEndIndex$($i$$221$$, $level$$20_startOverflow$$1$$) - this.$getStartIndex$($i$$221$$, $level$$20_startOverflow$$1$$) + 1);
              $bMultiline$$1$$ && this.$_isTextWrapNeeded$($context$$97$$, $j$$30_label$$30$$, $cssStyle$$27_totalSpace$$1$$, $rotationEnabled$$, $DvtAxisConstants$$ ? $groupSpan$$1$$ : $availSize$$1$$) && 0 < $availSize$$1$$ ? $DvtAxisConstants$$ ? $coord$$9_text$$48$$.$wrapText$($groupSpan$$1$$, $availSize$$1$$, 1, !0) : $coord$$9_text$$48$$.$wrapText$($availSize$$1$$, $coord$$9_text$$48$$.$getLineHeight$() * this.$_maxLineWrap$, 1, !1) : $bMultiline$$1$$ && (!$DvtAxisConstants$$ || 0 > $availSize$$1$$) && 
              $coord$$9_text$$48$$.$setWrapEnabled$(!1);
              $coord$$9_text$$48$$.$_index$ = $i$$221$$;
              $labels$$17_totalHeight$$.push($coord$$9_text$$48$$);
              $firstLabel_firstLabelDim$$ || 0 != $level$$20_startOverflow$$1$$ || ($firstLabel_firstLabelDim$$ = $coord$$9_text$$48$$);
              0 == $level$$20_startOverflow$$1$$ && ($lastLabel_lastLabelDim_maxLabelDims$$ = $coord$$9_text$$48$$);
            } else {
              $labels$$17_totalHeight$$.push(null);
            }
          }
        } else {
          $labels$$17_totalHeight$$.push(null);
        }
      }
      if ($tickLabelStyle_wrapping$$ && $DvtAxisAutomation$$) {
        for ($j$$30_label$$30$$ = $cssStyle$$27_totalSpace$$1$$ = 0;$j$$30_label$$30$$ < $labels$$17_totalHeight$$.length;$j$$30_label$$30$$++) {
          $labels$$17_totalHeight$$[$j$$30_label$$30$$] && ($dims$$32_levels$$1$$ = $labels$$17_totalHeight$$[$j$$30_label$$30$$].$measureDimensions$(), $cssStyle$$27_totalSpace$$1$$ = Math.max($cssStyle$$27_totalSpace$$1$$, $DvtAxisConstants$$ ? $dims$$32_levels$$1$$.$h$ : $dims$$32_levels$$1$$.$w$));
        }
        $availSize$$1$$ -= $cssStyle$$27_totalSpace$$1$$ + $gap$$9$$;
      }
      this.$_labels$.push($labels$$17_totalHeight$$);
      $labels$$17_totalHeight$$ = [];
    }
    $labels$$17_totalHeight$$ = this.$_labels$[this.$_numLevels$ - 1];
    $groupWidth_labelDims$$10$$ = [];
    if ($firstLabel_firstLabelDim$$) {
      if ("tangential" == this.$Position$) {
        $groupWidth_labelDims$$10$$ = this.$GetLabelDims$($labels$$17_totalHeight$$, $container$$16$$), this.$_labels$[0] = this.$SkipTangentialLabels$($labels$$17_totalHeight$$, $groupWidth_labelDims$$10$$);
      } else {
        for ($firstLabel_firstLabelDim$$ = $firstLabel_firstLabelDim$$.$measureDimensions$(), $DvtAxisConstants$$ && (null != this.$Options$._startOverflow && null != this.$Options$._endOverflow ? ($level$$20_startOverflow$$1$$ = this.$Options$._startOverflow, $endOverflow$$1_isRTL$$8_minLabelDims$$ = this.$Options$._endOverflow) : ($lastLabel_lastLabelDim_maxLabelDims$$ = $lastLabel_lastLabelDim_maxLabelDims$$.$measureDimensions$(), $level$$20_startOverflow$$1$$ = $endOverflow$$1_isRTL$$8_minLabelDims$$ ? 
        $firstLabel_firstLabelDim$$.$w$ + $firstLabel_firstLabelDim$$.x - this.$StartCoord$ : this.$StartCoord$ - $firstLabel_firstLabelDim$$.x, $endOverflow$$1_isRTL$$8_minLabelDims$$ = $endOverflow$$1_isRTL$$8_minLabelDims$$ ? this.$EndCoord$ - $lastLabel_lastLabelDim_maxLabelDims$$.x : $lastLabel_lastLabelDim_maxLabelDims$$.$w$ + $lastLabel_lastLabelDim_maxLabelDims$$.x - this.$EndCoord$), !$autoRotate$$ && ($level$$20_startOverflow$$1$$ > this.$_startBuffer$ || $endOverflow$$1_isRTL$$8_minLabelDims$$ > 
        this.$_endBuffer$) && this.$_setOverflow$($level$$20_startOverflow$$1$$, $endOverflow$$1_isRTL$$8_minLabelDims$$, $labels$$17_totalHeight$$)), $level$$20_startOverflow$$1$$ = 0;$level$$20_startOverflow$$1$$ < this.$_numLevels$;$level$$20_startOverflow$$1$$++) {
          if ($labels$$17_totalHeight$$ = this.$_labels$[$level$$20_startOverflow$$1$$], $autoRotate$$) {
            this.$_labels$[$level$$20_startOverflow$$1$$] = this.$_rotateLabels$($labels$$17_totalHeight$$, $container$$16$$, $firstLabel_firstLabelDim$$.$h$ / 2, $level$$20_startOverflow$$1$$);
          } else {
            if ($endOverflow$$1_isRTL$$8_minLabelDims$$ = this.$GuessLabelDims$($labels$$17_totalHeight$$, $container$$16$$, .3, $level$$20_startOverflow$$1$$), $lastLabel_lastLabelDim_maxLabelDims$$ = this.$GuessLabelDims$($labels$$17_totalHeight$$, $container$$16$$, null, $level$$20_startOverflow$$1$$), this.$IsOverlapping$($lastLabel_lastLabelDim_maxLabelDims$$, 0) || (this.$_labels$[$level$$20_startOverflow$$1$$] = $labels$$17_totalHeight$$), $DvtAxisConstants$$) {
              if ($rotationEnabled$$) {
                if (this.$IsOverlapping$($endOverflow$$1_isRTL$$8_minLabelDims$$, 0)) {
                  this.$_labels$[$level$$20_startOverflow$$1$$] = this.$_rotateLabels$($labels$$17_totalHeight$$, $container$$16$$, $firstLabel_firstLabelDim$$.$h$ / 2, $level$$20_startOverflow$$1$$);
                } else {
                  if ($groupWidth_labelDims$$10$$ = this.$GetLabelDims$($labels$$17_totalHeight$$, $container$$16$$), this.$IsOverlapping$($groupWidth_labelDims$$10$$, 0)) {
                    this.$_labels$[$level$$20_startOverflow$$1$$] = this.$_rotateLabels$($labels$$17_totalHeight$$, $container$$16$$, $firstLabel_firstLabelDim$$.$h$ / 2, $level$$20_startOverflow$$1$$);
                  } else {
                    if (this.$_labels$[$level$$20_startOverflow$$1$$] = $labels$$17_totalHeight$$, $DvtAxisAutomation$$) {
                      for ($j$$30_label$$30$$ = $labels$$17_totalHeight$$ = 0;$j$$30_label$$30$$ < $groupWidth_labelDims$$10$$.length;$j$$30_label$$30$$++) {
                        $groupWidth_labelDims$$10$$[$j$$30_label$$30$$] && ($labels$$17_totalHeight$$ = Math.max($labels$$17_totalHeight$$, $groupWidth_labelDims$$10$$[$j$$30_label$$30$$].$h$));
                      }
                      this.$_maxSpace$ -= $labels$$17_totalHeight$$ + $gap$$9$$;
                    }
                  }
                }
              } else {
                $groupWidth_labelDims$$10$$ = this.$GetLabelDims$($labels$$17_totalHeight$$, $container$$16$$), this.$_labels$[$level$$20_startOverflow$$1$$] = this.$SkipLabels$($labels$$17_totalHeight$$, $groupWidth_labelDims$$10$$);
              }
            } else {
              $tickLabelStyle_wrapping$$ && this.$_sanitizeWrappedText$($context$$97$$, $lastLabel_lastLabelDim_maxLabelDims$$, $labels$$17_totalHeight$$, !1, $DvtAxisAutomation$$) && ($lastLabel_lastLabelDim_maxLabelDims$$ = this.$GuessLabelDims$($labels$$17_totalHeight$$, $container$$16$$, null, $level$$20_startOverflow$$1$$)), this.$_labels$[$level$$20_startOverflow$$1$$] = this.$SkipLabels$($labels$$17_totalHeight$$, $lastLabel_lastLabelDim_maxLabelDims$$);
            }
          }
        }
      }
    }
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$getMajorTickCoords$ = function $$dvt$$3$$$$GroupAxisInfo$$$$getMajorTickCoords$$() {
    for (var $dvt$$3$$ = [], $DvtAxisRenderer$$, $maxIndex$$ = "tangential" == this.$Position$ ? this.$getGroupCount$() : this.$getGroupCount$() - 1, $DvtAxisConstants$$ = 0;$DvtAxisConstants$$ < this.$_levelsArray$[0].length;$DvtAxisConstants$$++) {
      if (this.$_levelsArray$[0][$DvtAxisConstants$$]) {
        $DvtAxisRenderer$$ = this.$getStartIndex$($DvtAxisConstants$$, 0);
        var $DvtAxisDefaults$$ = this.$getEndIndex$($DvtAxisConstants$$, 0);
        $DvtAxisRenderer$$ = this.$_renderGridAtLabels$ ? this.$getCoordAt$($DvtAxisRenderer$$ + .5 * ($DvtAxisDefaults$$ - $DvtAxisRenderer$$)) : $DvtAxisDefaults$$ + .5 < $maxIndex$$ ? this.$getCoordAt$($DvtAxisDefaults$$ + .5) : null;
        null != $DvtAxisRenderer$$ && $dvt$$3$$.push($DvtAxisRenderer$$);
      }
    }
    return $dvt$$3$$;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$getMinorTickCoords$ = function $$dvt$$3$$$$GroupAxisInfo$$$$getMinorTickCoords$$() {
    var $dvt$$3$$ = [], $DvtAxisRenderer$$;
    if (!this.$_levelsArray$[1]) {
      return $dvt$$3$$;
    }
    for (var $i$$223$$ = 0;$i$$223$$ < this.$_levelsArray$[1].length;$i$$223$$++) {
      if (this.$_levelsArray$[1][$i$$223$$]) {
        $DvtAxisRenderer$$ = this.$getStartIndex$($i$$223$$, 1);
        var $DvtAxisConstants$$ = this.$getEndIndex$($i$$223$$, 1);
        $DvtAxisRenderer$$ = this.$_renderGridAtLabels$ ? this.$getCoordAt$($DvtAxisRenderer$$ + .5 * ($DvtAxisConstants$$ - $DvtAxisRenderer$$)) : $DvtAxisConstants$$ + .5 < this.$getGroupCount$() - 1 ? this.$getCoordAt$($DvtAxisConstants$$ + .5) : null;
        null != $DvtAxisRenderer$$ && $dvt$$3$$.push($DvtAxisRenderer$$);
      }
    }
    return $dvt$$3$$;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$getUnboundedValueAt$ = function $$dvt$$3$$$$GroupAxisInfo$$$$getUnboundedValueAt$$($dvt$$3$$) {
    if (null == $dvt$$3$$) {
      return null;
    }
    if (this.$_groupWidthRatios$) {
      for (var $DvtAxisRenderer$$ = this.$_borderCoords$.length, $g$$1$$ = 0;$g$$1$$ < this.$_borderCoords$.length;$g$$1$$++) {
        if ($dvt$$3$$ <= this.$_borderCoords$[$g$$1$$]) {
          $DvtAxisRenderer$$ = $g$$1$$;
          break;
        }
      }
      return 0 == $DvtAxisRenderer$$ ? this.$_borderValues$[0] - (this.$_borderCoords$[0] - $dvt$$3$$) / this.$_groupWidths$[0] : this.$_borderValues$[$DvtAxisRenderer$$ - 1] + ($dvt$$3$$ - this.$_borderCoords$[$DvtAxisRenderer$$ - 1]) / this.$_groupWidths$[$DvtAxisRenderer$$];
    }
    return this.$MinValue$ + ($dvt$$3$$ - this.$StartCoord$) / ((this.$EndCoord$ - this.$StartCoord$) / (this.$MaxValue$ - this.$MinValue$));
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$getUnboundedCoordAt$ = function $$dvt$$3$$$$GroupAxisInfo$$$$getUnboundedCoordAt$$($dvt$$3$$) {
    if (null == $dvt$$3$$) {
      return null;
    }
    if (this.$_groupWidthRatios$) {
      for (var $DvtAxisRenderer$$ = this.$_borderValues$.length, $g$$2$$ = 0;$g$$2$$ < this.$_borderValues$.length;$g$$2$$++) {
        if ($dvt$$3$$ <= this.$_borderValues$[$g$$2$$]) {
          $DvtAxisRenderer$$ = $g$$2$$;
          break;
        }
      }
      return 0 == $DvtAxisRenderer$$ ? this.$_borderCoords$[0] - this.$_groupWidths$[0] * (this.$_borderValues$[0] - $dvt$$3$$) : this.$_borderCoords$[$DvtAxisRenderer$$ - 1] + this.$_groupWidths$[$DvtAxisRenderer$$] * ($dvt$$3$$ - this.$_borderValues$[$DvtAxisRenderer$$ - 1]);
    }
    return this.$StartCoord$ + (this.$EndCoord$ - this.$StartCoord$) / (this.$MaxValue$ - this.$MinValue$) * ($dvt$$3$$ - this.$MinValue$);
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$getLabelAt$ = function $$dvt$$3$$$$GroupAxisInfo$$$$getLabelAt$$($dvt$$3$$, $DvtAxisRenderer$$) {
    null == $DvtAxisRenderer$$ && ($DvtAxisRenderer$$ = this.$_numLevels$ - 1);
    $dvt$$3$$ = Math.round($dvt$$3$$);
    if (0 > $dvt$$3$$) {
      return null;
    }
    var $label$$31$$ = this.$_levelsArray$[$DvtAxisRenderer$$] && this.$_levelsArray$[$DvtAxisRenderer$$][$dvt$$3$$] ? this.$_levelsArray$[$DvtAxisRenderer$$][$dvt$$3$$].item : null;
    $label$$31$$ && ($label$$31$$.name ? $label$$31$$ = $label$$31$$.name : null != $label$$31$$.id && ($label$$31$$ = ""));
    return $label$$31$$;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$getGroupAt$ = function $$dvt$$3$$$$GroupAxisInfo$$$$getGroupAt$$($dvt$$3$$, $DvtAxisRenderer$$) {
    null == $DvtAxisRenderer$$ && ($DvtAxisRenderer$$ = this.$_numLevels$ - 1);
    $dvt$$3$$ = Math.round($dvt$$3$$);
    if (0 > $dvt$$3$$) {
      return null;
    }
    var $label$$32$$ = this.$_levelsArray$[$DvtAxisRenderer$$] && this.$_levelsArray$[$DvtAxisRenderer$$][$dvt$$3$$] ? this.$_levelsArray$[$DvtAxisRenderer$$][$dvt$$3$$].item : null;
    if ($label$$32$$) {
      if ($label$$32$$.id) {
        return $label$$32$$.id;
      }
      if ($label$$32$$.name || "" == $label$$32$$.name) {
        return $label$$32$$.name;
      }
    }
    return $label$$32$$;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$getLabelStyleAt$ = function $$dvt$$3$$$$GroupAxisInfo$$$$getLabelStyleAt$$($DvtAxisRenderer$$, $level$$23$$) {
    var $cssStyle$$28_labelStyle$$13$$ = this.$_getGroupAttribute$($DvtAxisRenderer$$, $level$$23$$, "labelStyle");
    return $cssStyle$$28_labelStyle$$13$$ ? ($cssStyle$$28_labelStyle$$13$$ = new $dvt$$3$$.$CSSStyle$($cssStyle$$28_labelStyle$$13$$), $cssStyle$$28_labelStyle$$13$$.$getStyle$("font-size") || $cssStyle$$28_labelStyle$$13$$.$setStyle$("font-size", this.$Options$.tickLabel.style.$getStyle$("font-size")), $cssStyle$$28_labelStyle$$13$$) : null;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$getDatatip$ = function $$dvt$$3$$$$GroupAxisInfo$$$$getDatatip$$($dvt$$3$$, $DvtAxisRenderer$$) {
    return this.$_getGroupAttribute$($dvt$$3$$, $DvtAxisRenderer$$, "shortDesc");
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$getAction$ = function $$dvt$$3$$$$GroupAxisInfo$$$$getAction$$($dvt$$3$$, $DvtAxisRenderer$$) {
    return this.$_getGroupAttribute$($dvt$$3$$, $DvtAxisRenderer$$, "action");
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$isDrillable$ = function $$dvt$$3$$$$GroupAxisInfo$$$$isDrillable$$($dvt$$3$$, $DvtAxisRenderer$$) {
    var $drilling$$ = this.$_getGroupAttribute$($dvt$$3$$, $DvtAxisRenderer$$, "drilling");
    return "on" == $drilling$$ ? !0 : "off" == $drilling$$ ? !1 : "on" == this.$_drilling$ || "groupsOnly" == this.$_drilling$;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$getGroup$ = function $$dvt$$3$$$$GroupAxisInfo$$$$getGroup$$($dvt$$3$$, $DvtAxisRenderer$$) {
    if (0 > $dvt$$3$$ || $dvt$$3$$ > this.$getGroupCount$() - 1) {
      return null;
    }
    if (1 == this.$_numLevels$) {
      return this.$getGroupAt$($dvt$$3$$);
    }
    var $groupLabels$$ = [];
    null == $DvtAxisRenderer$$ && ($DvtAxisRenderer$$ = this.$_numLevels$ - 1);
    for (var $DvtAxisConstants$$ = this.$getStartIndex$($dvt$$3$$, $DvtAxisRenderer$$), $DvtAxisDefaults$$ = 0;$DvtAxisDefaults$$ <= $DvtAxisRenderer$$;$DvtAxisDefaults$$++) {
      for (var $DvtAxisAutomation$$ = this.$_levelsArray$[$DvtAxisDefaults$$], $i$$224$$ = 0;$i$$224$$ < $DvtAxisAutomation$$.length;$i$$224$$++) {
        this.$getStartIndex$($i$$224$$, $DvtAxisDefaults$$) <= $DvtAxisConstants$$ && this.$getEndIndex$($i$$224$$, $DvtAxisDefaults$$) >= $DvtAxisConstants$$ && $groupLabels$$.push(this.$getGroupAt$($i$$224$$, $DvtAxisDefaults$$));
      }
    }
    return 0 < $groupLabels$$.length ? 1 == $groupLabels$$.length ? $groupLabels$$[0] : $groupLabels$$ : null;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$getGroupIndex$ = function $$dvt$$3$$$$GroupAxisInfo$$$$getGroupIndex$$($DvtAxisRenderer$$) {
    if (null == $DvtAxisRenderer$$) {
      return -1;
    }
    for (var $index$$116$$ = -1, $i$$225$$ = 0;$i$$225$$ < this.$_groupCount$;$i$$225$$++) {
      var $DvtAxisConstants$$ = this.$getGroup$($i$$225$$);
      if ($DvtAxisRenderer$$ instanceof Array && $DvtAxisConstants$$ instanceof Array ? $dvt$$3$$.$ArrayUtils$.$equals$($DvtAxisRenderer$$, $DvtAxisConstants$$) : $DvtAxisRenderer$$ == $DvtAxisConstants$$) {
        $index$$116$$ = $i$$225$$;
        break;
      }
    }
    return $index$$116$$;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$getMinimumExtent$ = function $$dvt$$3$$$$GroupAxisInfo$$$$getMinimumExtent$$() {
    return 1;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$getGroupWidth$ = function $$dvt$$3$$$$GroupAxisInfo$$$$getGroupWidth$$() {
    return Math.abs(this.$EndCoord$ - this.$StartCoord$) / Math.abs(this.$MaxValue$ - this.$MinValue$);
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$getGroupCount$ = function $$dvt$$3$$$$GroupAxisInfo$$$$getGroupCount$$() {
    return this.$_groupCount$;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$getNumLevels$ = function $$dvt$$3$$$$GroupAxisInfo$$$$getNumLevels$$() {
    return this.$_numLevels$;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$_generateLevelsArray$ = function $$dvt$$3$$$$GroupAxisInfo$$$$_generateLevelsArray$$($dvt$$3$$, $DvtAxisRenderer$$, $levelsArray$$, $DvtAxisConstants$$) {
    for (var $DvtAxisDefaults$$ = 0;$DvtAxisDefaults$$ < $dvt$$3$$.length;$DvtAxisDefaults$$++) {
      if ($levelsArray$$[$DvtAxisRenderer$$] || ($levelsArray$$[$DvtAxisRenderer$$] = []), $levelsArray$$[$DvtAxisRenderer$$].push({item:$dvt$$3$$[$DvtAxisDefaults$$], start:$DvtAxisConstants$$, end:$DvtAxisConstants$$, position:$DvtAxisDefaults$$}), $dvt$$3$$[$DvtAxisDefaults$$] && $dvt$$3$$[$DvtAxisDefaults$$].groups) {
        $DvtAxisConstants$$ = $levelsArray$$[$DvtAxisRenderer$$].length - 1;
        var $DvtAxisAutomation$$ = this.$_generateLevelsArray$($dvt$$3$$[$DvtAxisDefaults$$].groups, $DvtAxisRenderer$$ + 1, $levelsArray$$, $levelsArray$$[$DvtAxisRenderer$$][$DvtAxisConstants$$].start);
        $levelsArray$$[$DvtAxisRenderer$$][$DvtAxisConstants$$].end = $DvtAxisAutomation$$ - 1;
        $DvtAxisConstants$$ = $DvtAxisAutomation$$;
      } else {
        $DvtAxisConstants$$++;
      }
    }
    return $DvtAxisConstants$$;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$_getGroupAttribute$ = function $$dvt$$3$$$$GroupAxisInfo$$$$_getGroupAttribute$$($dvt$$3$$, $DvtAxisRenderer$$, $attribute$$) {
    null == $DvtAxisRenderer$$ && ($DvtAxisRenderer$$ = this.$_numLevels$ - 1);
    return ($dvt$$3$$ = this.$_levelsArray$[$DvtAxisRenderer$$] && this.$_levelsArray$[$DvtAxisRenderer$$][$dvt$$3$$] ? this.$_levelsArray$[$DvtAxisRenderer$$][$dvt$$3$$].item : null) ? $dvt$$3$$[$attribute$$] : null;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$getSeparatorColor$ = function $$dvt$$3$$$$GroupAxisInfo$$$$getSeparatorColor$$() {
    return this.$_separatorColor$;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$getStartIndex$ = function $$dvt$$3$$$$GroupAxisInfo$$$$getStartIndex$$($dvt$$3$$, $DvtAxisRenderer$$) {
    null == $DvtAxisRenderer$$ && ($DvtAxisRenderer$$ = this.$_numLevels$ - 1);
    return this.$_levelsArray$[$DvtAxisRenderer$$] && this.$_levelsArray$[$DvtAxisRenderer$$][$dvt$$3$$] ? this.$_levelsArray$[$DvtAxisRenderer$$][$dvt$$3$$].start : null;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$getEndIndex$ = function $$dvt$$3$$$$GroupAxisInfo$$$$getEndIndex$$($dvt$$3$$, $DvtAxisRenderer$$) {
    null == $DvtAxisRenderer$$ && ($DvtAxisRenderer$$ = this.$_numLevels$ - 1);
    return this.$_levelsArray$[$DvtAxisRenderer$$] && this.$_levelsArray$[$DvtAxisRenderer$$][$dvt$$3$$] ? this.$_levelsArray$[$DvtAxisRenderer$$][$dvt$$3$$].end : null;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$getPosition$ = function $$dvt$$3$$$$GroupAxisInfo$$$$getPosition$$($dvt$$3$$, $DvtAxisRenderer$$) {
    null == $DvtAxisRenderer$$ && ($DvtAxisRenderer$$ = this.$_numLevels$ - 1);
    return this.$_levelsArray$[$DvtAxisRenderer$$] && this.$_levelsArray$[$DvtAxisRenderer$$][$dvt$$3$$] ? this.$_levelsArray$[$DvtAxisRenderer$$][$dvt$$3$$].position : null;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$setLastRenderedLevel$ = function $$dvt$$3$$$$GroupAxisInfo$$$$setLastRenderedLevel$$($dvt$$3$$) {
    this.$_lastRenderedLevel$ = $dvt$$3$$;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$getLabelIndex$ = function $$dvt$$3$$$$GroupAxisInfo$$$$getLabelIndex$$($dvt$$3$$) {
    return 0 <= $dvt$$3$$.$_index$ ? $dvt$$3$$.$_index$ : null;
  };
  $dvt$$3$$.$GroupAxisInfo$.prototype.$_isTextWrapNeeded$ = function $$dvt$$3$$$$GroupAxisInfo$$$$_isTextWrapNeeded$$($DvtAxisRenderer$$, $label$$35$$, $style$$57$$, $DvtAxisConstants$$, $DvtAxisDefaults$$) {
    $DvtAxisRenderer$$ = $dvt$$3$$.$TextUtils$.$getTextStringWidth$($DvtAxisRenderer$$, $label$$35$$, $style$$57$$);
    return $DvtAxisRenderer$$ >= $DvtAxisDefaults$$ && ($DvtAxisRenderer$$ / this.$_maxLineWrap$ < $DvtAxisDefaults$$ || !$DvtAxisConstants$$) ? !0 : !1;
  };
  $dvt$$3$$.$Obj$.$createSubclass$($DvtAxisObjPeer$$, $dvt$$3$$.$SimpleObjPeer$);
  $DvtAxisObjPeer$$.prototype.Init = function $$DvtAxisObjPeer$$$$Init$($dvt$$3$$, $DvtAxisRenderer$$, $group$$11$$, $DvtAxisConstants$$, $DvtAxisDefaults$$, $DvtAxisAutomation$$, $datatip$$4$$, $params$$8$$) {
    $DvtAxisObjPeer$$.$superclass$.Init.call(this, $DvtAxisAutomation$$, $datatip$$4$$, null, $params$$8$$);
    this.$_axis$ = $dvt$$3$$;
    this.$_label$ = $DvtAxisRenderer$$;
    this.$_group$ = $group$$11$$;
    this.$_action$ = $DvtAxisConstants$$;
    this.$_drillable$ = $DvtAxisDefaults$$;
    (this.$_action$ || this.$_drillable$) && $DvtAxisRenderer$$.setCursor("pointer");
    $dvt$$3$$.$__registerObject$(this);
  };
  $DvtAxisObjPeer$$.prototype.$getLabel$ = function $$DvtAxisObjPeer$$$$$getLabel$$() {
    return this.$_label$;
  };
  $DvtAxisObjPeer$$.prototype.getId = function $$DvtAxisObjPeer$$$$getId$() {
    return this.$_group$;
  };
  $DvtAxisObjPeer$$.prototype.$getAction$ = function $$DvtAxisObjPeer$$$$$getAction$$() {
    return this.$_action$;
  };
  $DvtAxisObjPeer$$.prototype.$isDrillable$ = function $$DvtAxisObjPeer$$$$$isDrillable$$() {
    return this.$_drillable$;
  };
  $DvtAxisObjPeer$$.prototype.$getGroup$ = function $$DvtAxisObjPeer$$$$$getGroup$$() {
    return this.$_group$;
  };
  $DvtAxisObjPeer$$.prototype.$getNextNavigable$ = function $$DvtAxisObjPeer$$$$$getNextNavigable$$($DvtAxisRenderer$$) {
    return $DvtAxisRenderer$$.type == $dvt$$3$$.MouseEvent.$CLICK$ ? this : $dvt$$3$$.$KeyboardHandler$.$getNextNavigable$(this, $DvtAxisRenderer$$, this.$_axis$.$_navigablePeers$);
  };
  $DvtAxisObjPeer$$.prototype.$getKeyboardBoundingBox$ = function $$DvtAxisObjPeer$$$$$getKeyboardBoundingBox$$($DvtAxisRenderer$$) {
    return this.$_label$ ? this.$_label$.$getDimensions$($DvtAxisRenderer$$) : new $dvt$$3$$.$Rectangle$(0, 0, 0, 0);
  };
  $DvtAxisObjPeer$$.prototype.$getDisplayable$ = function $$DvtAxisObjPeer$$$$$getDisplayable$$() {
    return this.$_label$;
  };
  $DvtAxisObjPeer$$.prototype.$getTargetElem$ = function $$DvtAxisObjPeer$$$$$getTargetElem$$() {
    return this.$_label$ ? this.$_label$.$getElem$() : null;
  };
  $DvtAxisObjPeer$$.prototype.$showKeyboardFocusEffect$ = function $$DvtAxisObjPeer$$$$$showKeyboardFocusEffect$$() {
    this.$_isShowingKeyboardFocusEffect$ = !0;
    if (this.$_label$) {
      var $DvtAxisRenderer$$ = this.$getKeyboardBoundingBox$();
      this.$_overlayRect$ = new $dvt$$3$$.Rect(this.$_axis$.$getCtx$(), $DvtAxisRenderer$$.x, $DvtAxisRenderer$$.y, $DvtAxisRenderer$$.$w$, $DvtAxisRenderer$$.$h$);
      this.$_overlayRect$.$setSolidStroke$($dvt$$3$$.$Agent$.$getFocusColor$());
      this.$_overlayRect$.$setInvisibleFill$();
      this.$_axis$.$addChild$(this.$_overlayRect$);
    }
  };
  $DvtAxisObjPeer$$.prototype.$hideKeyboardFocusEffect$ = function $$DvtAxisObjPeer$$$$$hideKeyboardFocusEffect$$() {
    this.$_isShowingKeyboardFocusEffect$ = !1;
    this.$_label$ && (this.$_axis$.removeChild(this.$_overlayRect$), this.$_overlayRect$ = null);
  };
  $DvtAxisObjPeer$$.prototype.$isShowingKeyboardFocusEffect$ = function $$DvtAxisObjPeer$$$$$isShowingKeyboardFocusEffect$$() {
    return this.$_isShowingKeyboardFocusEffect$;
  };
  $DvtAxisObjPeer$$.prototype.$getAriaLabel$ = function $$DvtAxisObjPeer$$$$$getAriaLabel$$() {
    var $DvtAxisRenderer$$;
    this.$isDrillable$() && ($DvtAxisRenderer$$ = [$dvt$$3$$.$Bundle$.$getTranslation$(this.$_axis$.$getOptions$(), "stateDrillable", $dvt$$3$$.$Bundle$.$UTIL_PREFIX$, "STATE_DRILLABLE")]);
    if (null != this.$getDatatip$()) {
      return $dvt$$3$$.$Displayable$.$generateAriaLabel$(this.$getDatatip$(), $DvtAxisRenderer$$);
    }
    if (null != $DvtAxisRenderer$$) {
      return $dvt$$3$$.$Displayable$.$generateAriaLabel$(this.$getLabel$().$getTextString$(), $DvtAxisRenderer$$);
    }
  };
  $DvtAxisObjPeer$$.prototype.$isDragAvailable$ = function $$DvtAxisObjPeer$$$$$isDragAvailable$$() {
    return !0;
  };
  $DvtAxisObjPeer$$.prototype.$getDragTransferable$ = function $$DvtAxisObjPeer$$$$$getDragTransferable$$() {
    return [this.getId()];
  };
  $DvtAxisObjPeer$$.prototype.$getDragFeedback$ = function $$DvtAxisObjPeer$$$$$getDragFeedback$$() {
    return [this.$getDisplayable$()];
  };
  $dvt$$3$$.$LinearScaleAxisValueFormatter$ = function $$dvt$$3$$$$LinearScaleAxisValueFormatter$$($dvt$$3$$, $DvtAxisRenderer$$, $maxValue$$, $DvtAxisConstants$$, $DvtAxisDefaults$$, $DvtAxisAutomation$$) {
    this.Init($dvt$$3$$, $DvtAxisRenderer$$, $maxValue$$, $DvtAxisConstants$$, $DvtAxisDefaults$$, $DvtAxisAutomation$$);
  };
  $dvt$$3$$.$Obj$.$createSubclass$($dvt$$3$$.$LinearScaleAxisValueFormatter$, $dvt$$3$$.$Obj$);
  $dvt$$3$$.$LinearScaleAxisValueFormatter$.$SCALE_NONE$ = "none";
  $dvt$$3$$.$LinearScaleAxisValueFormatter$.$SCALE_AUTO$ = "auto";
  $dvt$$3$$.$LinearScaleAxisValueFormatter$.$SCALE_THOUSAND$ = "thousand";
  $dvt$$3$$.$LinearScaleAxisValueFormatter$.$SCALE_MILLION$ = "million";
  $dvt$$3$$.$LinearScaleAxisValueFormatter$.$SCALE_BILLION$ = "billion";
  $dvt$$3$$.$LinearScaleAxisValueFormatter$.$SCALE_TRILLION$ = "trillion";
  $dvt$$3$$.$LinearScaleAxisValueFormatter$.$SCALE_QUADRILLION$ = "quadrillion";
  $dvt$$3$$.$LinearScaleAxisValueFormatter$.$SCALING_FACTOR_DIFFERENCE$ = 3;
  $dvt$$3$$.$LinearScaleAxisValueFormatter$.prototype.Init = function $$dvt$$3$$$$LinearScaleAxisValueFormatter$$$Init$($dvt$$3$$, $DvtAxisRenderer$$, $maxValue$$1$$, $DvtAxisConstants$$, $DvtAxisDefaults$$, $DvtAxisAutomation$$) {
    this.$_context$ = $dvt$$3$$;
    this.$_scales$ = {};
    this.$_scalesOrder$ = [];
    this.$_factorToScaleMapping$ = {};
    this.$InitScales$();
    this.$InitFormatter$($DvtAxisRenderer$$, $maxValue$$1$$, $DvtAxisConstants$$, $DvtAxisDefaults$$, $DvtAxisAutomation$$);
  };
  $dvt$$3$$.$LinearScaleAxisValueFormatter$.prototype.$InitScales$ = function $$dvt$$3$$$$LinearScaleAxisValueFormatter$$$$InitScales$$() {
    function $DvtAxisRenderer$$($diff$$1$$, $createScale$$, $DvtAxisConstants$$) {
      var $DvtAxisDefaults$$;
      $DvtAxisConstants$$ && ($DvtAxisDefaults$$ = $dvt$$3$$.$Bundle$.$getTranslatedString$($dvt$$3$$.$Bundle$.$UTIL_PREFIX$, $DvtAxisConstants$$));
      $DvtAxisConstants$$ = {$scaleFactor$:$createScale$$, $localizedSuffix$:$DvtAxisDefaults$$};
      this.$_scales$[$diff$$1$$] = $DvtAxisConstants$$;
      this.$_scalesOrder$.push($DvtAxisConstants$$);
      this.$_factorToScaleMapping$[$createScale$$] = $DvtAxisConstants$$;
    }
    var $diff$$1$$ = $dvt$$3$$.$LinearScaleAxisValueFormatter$.$SCALING_FACTOR_DIFFERENCE$;
    $DvtAxisRenderer$$.call(this, $dvt$$3$$.$LinearScaleAxisValueFormatter$.$SCALE_NONE$, 0 * $diff$$1$$);
    $DvtAxisRenderer$$.call(this, $dvt$$3$$.$LinearScaleAxisValueFormatter$.$SCALE_THOUSAND$, 1 * $diff$$1$$, "SCALING_SUFFIX_THOUSAND");
    $DvtAxisRenderer$$.call(this, $dvt$$3$$.$LinearScaleAxisValueFormatter$.$SCALE_MILLION$, 2 * $diff$$1$$, "SCALING_SUFFIX_MILLION");
    $DvtAxisRenderer$$.call(this, $dvt$$3$$.$LinearScaleAxisValueFormatter$.$SCALE_BILLION$, 3 * $diff$$1$$, "SCALING_SUFFIX_BILLION");
    $DvtAxisRenderer$$.call(this, $dvt$$3$$.$LinearScaleAxisValueFormatter$.$SCALE_TRILLION$, 4 * $diff$$1$$, "SCALING_SUFFIX_TRILLION");
    $DvtAxisRenderer$$.call(this, $dvt$$3$$.$LinearScaleAxisValueFormatter$.$SCALE_QUADRILLION$, 5 * $diff$$1$$, "SCALING_SUFFIX_QUADRILLION");
    this.$_scalesOrder$.sort(function($dvt$$3$$, $DvtAxisRenderer$$) {
      return $dvt$$3$$.$scaleFactor$ < $DvtAxisRenderer$$.$scaleFactor$ ? -1 : $dvt$$3$$.$scaleFactor$ > $DvtAxisRenderer$$.$scaleFactor$ ? 1 : 0;
    });
  };
  $dvt$$3$$.$LinearScaleAxisValueFormatter$.prototype.$InitFormatter$ = function $$dvt$$3$$$$LinearScaleAxisValueFormatter$$$$InitFormatter$$($dvt$$3$$, $DvtAxisRenderer$$, $tickStep$$2$$, $DvtAxisConstants$$, $DvtAxisDefaults$$) {
    var $DvtAxisAutomation$$ = !1, $decimalPlaces$$, $useAutoPrecision$$ = !1;
    "off" !== $DvtAxisDefaults$$ && ($useAutoPrecision$$ = !0);
    $DvtAxisConstants$$ = this.$_getScaleFactor$($DvtAxisConstants$$);
    "number" !== typeof $DvtAxisConstants$$ && ($DvtAxisAutomation$$ = !0);
    $DvtAxisAutomation$$ && ($DvtAxisConstants$$ = this.$_findNearestLEScaleFactor$(this.$_getPowerOfTen$(Math.max(Math.abs($dvt$$3$$), Math.abs($DvtAxisRenderer$$)))));
    !0 === $useAutoPrecision$$ && (0 == $tickStep$$2$$ && $dvt$$3$$ == $DvtAxisRenderer$$ ? ($dvt$$3$$ = $DvtAxisConstants$$ - this.$_getPowerOfTen$($DvtAxisRenderer$$), $decimalPlaces$$ = 0 >= $dvt$$3$$ ? Math.max($dvt$$3$$ + 3, 0) : Math.max($dvt$$3$$, 4)) : $decimalPlaces$$ = Math.max($DvtAxisConstants$$ - this.$_getPowerOfTen$($tickStep$$2$$), 0));
    this.$_useAutoPrecision$ = $useAutoPrecision$$;
    this.$_scaleFactor$ = $DvtAxisConstants$$;
    this.$_decimalPlaces$ = $decimalPlaces$$;
  };
  $dvt$$3$$.$LinearScaleAxisValueFormatter$.prototype.$_findNearestLEScaleFactor$ = function $$dvt$$3$$$$LinearScaleAxisValueFormatter$$$$_findNearestLEScaleFactor$$($dvt$$3$$) {
    var $DvtAxisRenderer$$ = 0;
    if ($dvt$$3$$ <= this.$_scalesOrder$[0].$scaleFactor$) {
      $DvtAxisRenderer$$ = this.$_scalesOrder$[0].$scaleFactor$;
    } else {
      if ($dvt$$3$$ >= this.$_scalesOrder$[this.$_scalesOrder$.length - 1].$scaleFactor$) {
        $DvtAxisRenderer$$ = this.$_scalesOrder$[this.$_scalesOrder$.length - 1].$scaleFactor$;
      } else {
        for (var $i$$227$$ = this.$_scalesOrder$.length - 1;0 <= $i$$227$$;$i$$227$$--) {
          if (this.$_scalesOrder$[$i$$227$$].$scaleFactor$ <= $dvt$$3$$) {
            $DvtAxisRenderer$$ = this.$_scalesOrder$[$i$$227$$].$scaleFactor$;
            break;
          }
        }
      }
    }
    return $DvtAxisRenderer$$;
  };
  $dvt$$3$$.$LinearScaleAxisValueFormatter$.prototype.$_getScaleFactor$ = function $$dvt$$3$$$$LinearScaleAxisValueFormatter$$$$_getScaleFactor$$($DvtAxisRenderer$$) {
    $DvtAxisRenderer$$ || ($DvtAxisRenderer$$ = $dvt$$3$$.$LinearScaleAxisValueFormatter$.$SCALE_AUTO$);
    var $scaleFactor$$4$$;
    if ($DvtAxisRenderer$$ = this.$_scales$[$DvtAxisRenderer$$]) {
      $scaleFactor$$4$$ = $DvtAxisRenderer$$.$scaleFactor$;
    }
    return $scaleFactor$$4$$;
  };
  $dvt$$3$$.$LinearScaleAxisValueFormatter$.prototype.format = function $$dvt$$3$$$$LinearScaleAxisValueFormatter$$$format$($dvt$$3$$, $DvtAxisRenderer$$) {
    var $parsed$$ = parseFloat($dvt$$3$$);
    if (isNaN($parsed$$)) {
      return $dvt$$3$$;
    }
    var $DvtAxisConstants$$;
    if (0 < this.$_scaleFactor$) {
      for ($DvtAxisConstants$$ = 0;$DvtAxisConstants$$ < this.$_scaleFactor$;$DvtAxisConstants$$++) {
        $parsed$$ /= 10;
      }
      $DvtAxisConstants$$ = this.$_factorToScaleMapping$[this.$_scaleFactor$].$localizedSuffix$;
    }
    if ($DvtAxisRenderer$$ && $DvtAxisRenderer$$.getAsString) {
      $parsed$$ = $DvtAxisRenderer$$.getAsString($parsed$$);
    } else {
      if ($DvtAxisRenderer$$ && $DvtAxisRenderer$$.format) {
        $parsed$$ = $DvtAxisRenderer$$.format($parsed$$);
      } else {
        var $DvtAxisDefaults$$ = this.$_context$.$getNumberConverter$({minimumFractionDigits:this.$_decimalPlaces$, maximumFractionDigits:this.$_decimalPlaces$});
        $DvtAxisDefaults$$ && $DvtAxisDefaults$$.format ? $parsed$$ = $DvtAxisDefaults$$.format($parsed$$) : this.$_useAutoPrecision$ && !isNaN(parseFloat($parsed$$)) && ($parsed$$ = parseFloat((new Number($parsed$$)).toFixed(this.$_decimalPlaces$)), $parsed$$ = this.$_formatFraction$($parsed$$));
      }
    }
    "string" === typeof $DvtAxisConstants$$ && 0 != $dvt$$3$$ && ($parsed$$ += $DvtAxisConstants$$);
    return $parsed$$;
  };
  $dvt$$3$$.$LinearScaleAxisValueFormatter$.prototype.$_formatFraction$ = function $$dvt$$3$$$$LinearScaleAxisValueFormatter$$$$_formatFraction$$($DvtAxisRenderer$$) {
    $DvtAxisRenderer$$ = $DvtAxisRenderer$$.toString();
    if (-1 != $DvtAxisRenderer$$.indexOf("e")) {
      return $DvtAxisRenderer$$;
    }
    var $decimalSep_existingPlacesCount$$ = ".", $decimalSep_existingPlacesCount$$ = $dvt$$3$$.$Bundle$.$getTranslatedString$($dvt$$3$$.$Bundle$.$UTIL_PREFIX$, "NUMBER_FORMAT_DECIMAL_SEPARATOR");
    if (0 < this.$_decimalPlaces$) {
      for ($DvtAxisRenderer$$ = -1 == $DvtAxisRenderer$$.indexOf(".") ? $DvtAxisRenderer$$ + $decimalSep_existingPlacesCount$$ : $DvtAxisRenderer$$.replace(".", $decimalSep_existingPlacesCount$$), $decimalSep_existingPlacesCount$$ = $DvtAxisRenderer$$.substring($DvtAxisRenderer$$.indexOf($decimalSep_existingPlacesCount$$) + 1).length;$decimalSep_existingPlacesCount$$ < this.$_decimalPlaces$;) {
        $DvtAxisRenderer$$ += "0", $decimalSep_existingPlacesCount$$++;
      }
    }
    return $DvtAxisRenderer$$;
  };
  $dvt$$3$$.$LinearScaleAxisValueFormatter$.prototype.$_getPowerOfTen$ = function $$dvt$$3$$$$LinearScaleAxisValueFormatter$$$$_getPowerOfTen$$($dvt$$3$$) {
    $dvt$$3$$ = 0 <= $dvt$$3$$ ? $dvt$$3$$ : -$dvt$$3$$;
    var $DvtAxisRenderer$$ = 0;
    if (1E-15 > $dvt$$3$$) {
      return 0;
    }
    if (Infinity == $dvt$$3$$) {
      return Number.MAX_VALUE;
    }
    if (10 <= $dvt$$3$$) {
      for (;10 <= $dvt$$3$$;) {
        $DvtAxisRenderer$$ += 1, $dvt$$3$$ /= 10;
      }
    } else {
      if (1 > $dvt$$3$$) {
        for (;1 > $dvt$$3$$;) {
          --$DvtAxisRenderer$$, $dvt$$3$$ *= 10;
        }
      }
    }
    return $DvtAxisRenderer$$;
  };
  $dvt$$3$$.$TimeAxisInfo$ = function $$dvt$$3$$$$TimeAxisInfo$$($dvt$$3$$, $DvtAxisRenderer$$, $availSpace$$16$$) {
    this.Init($dvt$$3$$, $DvtAxisRenderer$$, $availSpace$$16$$);
  };
  $dvt$$3$$.$Obj$.$createSubclass$($dvt$$3$$.$TimeAxisInfo$, $dvt$$3$$.$AxisInfo$);
  $dvt$$3$$.$TimeAxisInfo$.$TIME_SECOND$ = 1E3;
  $dvt$$3$$.$TimeAxisInfo$.$TIME_MINUTE$ = 60 * $dvt$$3$$.$TimeAxisInfo$.$TIME_SECOND$;
  $dvt$$3$$.$TimeAxisInfo$.$TIME_HOUR$ = 60 * $dvt$$3$$.$TimeAxisInfo$.$TIME_MINUTE$;
  $dvt$$3$$.$TimeAxisInfo$.$TIME_DAY$ = 24 * $dvt$$3$$.$TimeAxisInfo$.$TIME_HOUR$;
  $dvt$$3$$.$TimeAxisInfo$.$TIME_MONTH_MIN$ = 28 * $dvt$$3$$.$TimeAxisInfo$.$TIME_DAY$;
  $dvt$$3$$.$TimeAxisInfo$.$TIME_MONTH_MAX$ = 31 * $dvt$$3$$.$TimeAxisInfo$.$TIME_DAY$;
  $dvt$$3$$.$TimeAxisInfo$.$TIME_YEAR_MIN$ = 365 * $dvt$$3$$.$TimeAxisInfo$.$TIME_DAY$;
  $dvt$$3$$.$TimeAxisInfo$.$TIME_YEAR_MAX$ = 366 * $dvt$$3$$.$TimeAxisInfo$.$TIME_DAY$;
  $dvt$$3$$.$TimeAxisInfo$.prototype.Init = function $$dvt$$3$$$$TimeAxisInfo$$$Init$($DvtAxisRenderer$$, $options$$32$$, $availSpace$$17_converter$$1_startOffset$$2$$) {
    $dvt$$3$$.$TimeAxisInfo$.$superclass$.Init.call(this, $DvtAxisRenderer$$, $options$$32$$, $availSpace$$17_converter$$1_startOffset$$2$$);
    "top" == this.$Position$ || "bottom" == this.$Position$ ? ($options$$32$$._isOverview || "on" != $options$$32$$.tickLabel.rendered || (this.$StartOverflow$ = Math.max($dvt$$3$$.$Axis$.$MINIMUM_AXIS_BUFFER$ - $options$$32$$.leftBuffer, 0), this.$EndOverflow$ = Math.max($dvt$$3$$.$Axis$.$MINIMUM_AXIS_BUFFER$ - $options$$32$$.rightBuffer, 0)), $dvt$$3$$.$Agent$.$isRightToLeft$($DvtAxisRenderer$$) ? (this.$_startCoord$ = this.$EndCoord$ - this.$EndOverflow$, this.$_endCoord$ = this.$StartCoord$ + 
    this.$StartOverflow$) : (this.$_startCoord$ = this.$StartCoord$ + this.$StartOverflow$, this.$_endCoord$ = this.$EndCoord$ - this.$EndOverflow$)) : (this.$_startCoord$ = this.$StartCoord$, this.$_endCoord$ = this.$EndCoord$);
    this.$_label1Converter$ = ($availSpace$$17_converter$$1_startOffset$$2$$ = null != $options$$32$$.tickLabel ? $options$$32$$.tickLabel.converter : null) && $availSpace$$17_converter$$1_startOffset$$2$$[0] ? $availSpace$$17_converter$$1_startOffset$$2$$[0] : $availSpace$$17_converter$$1_startOffset$$2$$;
    this.$_label2Converter$ = $availSpace$$17_converter$$1_startOffset$$2$$ && $availSpace$$17_converter$$1_startOffset$$2$$[1] ? $availSpace$$17_converter$$1_startOffset$$2$$[1] : null;
    this.$_dateToIsoWithTimeZoneConverter$ = $DvtAxisRenderer$$.$getLocaleHelpers$().dateToIsoWithTimeZoneConverter;
    this.$_groups$ = $options$$32$$.groups;
    $DvtAxisRenderer$$ = $options$$32$$.timeAxisType;
    this.$_skipGaps$ = "skipGaps" == $DvtAxisRenderer$$;
    this.$_mixedFrequency$ = "mixedFrequency" == $DvtAxisRenderer$$;
    this.$DataMin$ = $options$$32$$.dataMin;
    this.$DataMax$ = $options$$32$$.dataMax;
    this.$_averageInterval$ = 1 < this.$_groups$.length ? (this.$DataMax$ - this.$DataMin$) / (this.$_groups$.length - 1) : 0 < this.$DataMax$ - this.$DataMin$ ? this.$DataMax$ - this.$DataMin$ : 6 * $dvt$$3$$.$TimeAxisInfo$.$TIME_MINUTE$;
    this.$_step$ = $options$$32$$.step;
    $DvtAxisRenderer$$ = 0 < $options$$32$$.endGroupOffset ? $options$$32$$.endGroupOffset * this.$_averageInterval$ : 0;
    $availSpace$$17_converter$$1_startOffset$$2$$ = 0 < $options$$32$$.startGroupOffset ? $options$$32$$.startGroupOffset * this.$_averageInterval$ : 0;
    this.$GlobalMin$ = null != $options$$32$$.min ? $options$$32$$.min : this.$DataMin$ - $availSpace$$17_converter$$1_startOffset$$2$$;
    this.$GlobalMax$ = null != $options$$32$$.max ? $options$$32$$.max : this.$DataMax$ + $DvtAxisRenderer$$;
    null != $options$$32$$.viewportStartGroup && (this.$MinValue$ = $options$$32$$.viewportStartGroup - $availSpace$$17_converter$$1_startOffset$$2$$);
    null != $options$$32$$.viewportEndGroup && (this.$MaxValue$ = $options$$32$$.viewportEndGroup + $DvtAxisRenderer$$);
    null != $options$$32$$.viewportMin && (this.$MinValue$ = $options$$32$$.viewportMin);
    null != $options$$32$$.viewportMax && (this.$MaxValue$ = $options$$32$$.viewportMax);
    null == this.$MinValue$ && (this.$MinValue$ = this.$GlobalMin$);
    null == this.$MaxValue$ && (this.$MaxValue$ = this.$GlobalMax$);
    this.$GlobalMin$ > this.$MinValue$ && (this.$GlobalMin$ = this.$MinValue$);
    this.$GlobalMax$ < this.$MaxValue$ && (this.$GlobalMax$ = this.$MaxValue$);
    this.$_timeRange$ = this.$MaxValue$ - this.$MinValue$;
    this.$_level2Coords$ = this.$_level1Coords$ = this.$_level2Labels$ = this.$_level1Labels$ = null;
    this.$_isOneLevel$ = !0;
    this.$_level1Overflow$ = [];
    this.$_level2Overflow$ = [];
    this.$_locale$ = $options$$32$$._locale.toLowerCase();
    this.$_monthResources$ = [$dvt$$3$$.$Bundle$.$getTranslatedString$($dvt$$3$$.$Bundle$.$UTIL_PREFIX$, "MONTH_SHORT_JANUARY"), $dvt$$3$$.$Bundle$.$getTranslatedString$($dvt$$3$$.$Bundle$.$UTIL_PREFIX$, "MONTH_SHORT_FEBRUARY"), $dvt$$3$$.$Bundle$.$getTranslatedString$($dvt$$3$$.$Bundle$.$UTIL_PREFIX$, "MONTH_SHORT_MARCH"), $dvt$$3$$.$Bundle$.$getTranslatedString$($dvt$$3$$.$Bundle$.$UTIL_PREFIX$, "MONTH_SHORT_APRIL"), $dvt$$3$$.$Bundle$.$getTranslatedString$($dvt$$3$$.$Bundle$.$UTIL_PREFIX$, "MONTH_SHORT_MAY"), 
    $dvt$$3$$.$Bundle$.$getTranslatedString$($dvt$$3$$.$Bundle$.$UTIL_PREFIX$, "MONTH_SHORT_JUNE"), $dvt$$3$$.$Bundle$.$getTranslatedString$($dvt$$3$$.$Bundle$.$UTIL_PREFIX$, "MONTH_SHORT_JULY"), $dvt$$3$$.$Bundle$.$getTranslatedString$($dvt$$3$$.$Bundle$.$UTIL_PREFIX$, "MONTH_SHORT_AUGUST"), $dvt$$3$$.$Bundle$.$getTranslatedString$($dvt$$3$$.$Bundle$.$UTIL_PREFIX$, "MONTH_SHORT_SEPTEMBER"), $dvt$$3$$.$Bundle$.$getTranslatedString$($dvt$$3$$.$Bundle$.$UTIL_PREFIX$, "MONTH_SHORT_OCTOBER"), $dvt$$3$$.$Bundle$.$getTranslatedString$($dvt$$3$$.$Bundle$.$UTIL_PREFIX$, 
    "MONTH_SHORT_NOVEMBER"), $dvt$$3$$.$Bundle$.$getTranslatedString$($dvt$$3$$.$Bundle$.$UTIL_PREFIX$, "MONTH_SHORT_DECEMBER")];
  };
  $dvt$$3$$.$TimeAxisInfo$.$_getAMString$ = function $$dvt$$3$$$$TimeAxisInfo$$$_getAMString$$($dvt$$3$$) {
    if ("en-au" == $dvt$$3$$ || "en-ie" == $dvt$$3$$ || "en-ph" == $dvt$$3$$) {
      return "am";
    }
    if ("en-gb" == $dvt$$3$$) {
      return "";
    }
    switch($dvt$$3$$.substring(0, 2)) {
      case "en":
        return "AM";
      case "ar":
        return "\u0635";
      case "el":
        return "\u03c0\u03bc";
      case "ko":
        return "\uc624\uc804";
      case "zh":
        return "\u4e0a\u5348";
      default:
        return "";
    }
  };
  $dvt$$3$$.$TimeAxisInfo$.$_getPMString$ = function $$dvt$$3$$$$TimeAxisInfo$$$_getPMString$$($dvt$$3$$) {
    if ("en-au" == $dvt$$3$$ || "en-ie" == $dvt$$3$$ || "en-ph" == $dvt$$3$$) {
      return "pm";
    }
    if ("en-gb" == $dvt$$3$$) {
      return "";
    }
    switch($dvt$$3$$.substring(0, 2)) {
      case "en":
        return "PM";
      case "ar":
        return "\u0645";
      case "el":
        return "\u03bc\u03bc";
      case "ko":
        return "\uc624\ud6c4";
      case "zh":
        return "\u4e0b\u5348";
      default:
        return "";
    }
  };
  $dvt$$3$$.$TimeAxisInfo$.$_getAMPMBefore$ = function $$dvt$$3$$$$TimeAxisInfo$$$_getAMPMBefore$$($dvt$$3$$) {
    $dvt$$3$$ = $dvt$$3$$.substring(0, 2);
    return "ko" == $dvt$$3$$ || "zh" == $dvt$$3$$ ? !0 : !1;
  };
  $dvt$$3$$.$TimeAxisInfo$.$_getDMYOrder$ = function $$dvt$$3$$$$TimeAxisInfo$$$_getDMYOrder$$($dvt$$3$$) {
    var $DvtAxisRenderer$$ = $dvt$$3$$.substring(0, 2);
    return "en-us" == $dvt$$3$$ || "en-ph" == $dvt$$3$$ ? "MDY" : "fa" == $DvtAxisRenderer$$ || "hu" == $DvtAxisRenderer$$ || "ja" == $DvtAxisRenderer$$ || "ko" == $DvtAxisRenderer$$ || "lt" == $DvtAxisRenderer$$ || "mn" == $DvtAxisRenderer$$ || "zh" == $DvtAxisRenderer$$ ? "YMD" : "DMY";
  };
  $dvt$$3$$.$TimeAxisInfo$.$_getYearTrailingCharacters$ = function $$dvt$$3$$$$TimeAxisInfo$$$_getYearTrailingCharacters$$($dvt$$3$$) {
    return 0 == $dvt$$3$$.indexOf("ja") || 0 == $dvt$$3$$.indexOf("zh") ? "\u5e74" : 0 == $dvt$$3$$.indexOf("ko") ? "\ub144" : "";
  };
  $dvt$$3$$.$TimeAxisInfo$.$_getDayTrailingCharacters$ = function $$dvt$$3$$$$TimeAxisInfo$$$_getDayTrailingCharacters$$($dvt$$3$$) {
    return 0 == $dvt$$3$$.indexOf("ja") || 0 == $dvt$$3$$.indexOf("zh") ? "\u65e5" : 0 == $dvt$$3$$.indexOf("ko") ? "\uc77c" : "";
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$formatLabel$ = function $$dvt$$3$$$$TimeAxisInfo$$$$formatLabel$$($DvtAxisRenderer$$) {
    $DvtAxisRenderer$$ = this.$_formatAxisLabel$(new Date($DvtAxisRenderer$$), null, !0);
    return null != $DvtAxisRenderer$$[1] ? "YMD" == $dvt$$3$$.$TimeAxisInfo$.$_getDMYOrder$(this.$_locale$) || this.$_timeRange$ < $dvt$$3$$.$TimeAxisInfo$.$TIME_MONTH_MIN$ && this.$_step$ < $dvt$$3$$.$TimeAxisInfo$.$TIME_DAY$ ? $DvtAxisRenderer$$[1] + " " + $DvtAxisRenderer$$[0] : $DvtAxisRenderer$$[0] + " " + $DvtAxisRenderer$$[1] : $DvtAxisRenderer$$[0];
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$_formatAxisLabelWithConverter$ = function $$dvt$$3$$$$TimeAxisInfo$$$$_formatAxisLabelWithConverter$$($dvt$$3$$, $DvtAxisRenderer$$, $converter$$2$$) {
    if ($converter$$2$$) {
      var $DvtAxisConstants$$ = null, $DvtAxisDefaults$$ = null;
      $converter$$2$$.getAsString ? ($DvtAxisConstants$$ = $converter$$2$$.getAsString($dvt$$3$$), $DvtAxisDefaults$$ = $converter$$2$$.getAsString($DvtAxisRenderer$$)) : $converter$$2$$.format && ($DvtAxisConstants$$ = $converter$$2$$.format(this.$_dateToIsoWithTimeZoneConverter$ && $dvt$$3$$ ? this.$_dateToIsoWithTimeZoneConverter$($dvt$$3$$) : $dvt$$3$$), $DvtAxisDefaults$$ = $converter$$2$$.format(this.$_dateToIsoWithTimeZoneConverter$ && $DvtAxisRenderer$$ ? this.$_dateToIsoWithTimeZoneConverter$($DvtAxisRenderer$$) : 
      $DvtAxisRenderer$$));
      if ($DvtAxisDefaults$$ != $DvtAxisConstants$$) {
        return $DvtAxisConstants$$;
      }
    }
    return null;
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$_formatAxisLabel$ = function $$dvt$$3$$$$TimeAxisInfo$$$$_formatAxisLabel$$($DvtAxisRenderer$$, $prevDate$$1$$, $bOneLabel$$) {
    var $DvtAxisConstants$$ = null, $DvtAxisDefaults$$ = null, $DvtAxisAutomation$$ = "left" == this.$Position$ || "right" == this.$Position$;
    if (this.$_label1Converter$ || this.$_label2Converter$) {
      return this.$_label1Converter$ && ($DvtAxisConstants$$ = this.$_formatAxisLabelWithConverter$($DvtAxisRenderer$$, $prevDate$$1$$, this.$_label1Converter$)), this.$_label2Converter$ && ($DvtAxisDefaults$$ = this.$_formatAxisLabelWithConverter$($DvtAxisRenderer$$, $prevDate$$1$$, this.$_label2Converter$)), [$DvtAxisConstants$$, $DvtAxisDefaults$$];
    }
    if (this.$_step$ >= $dvt$$3$$.$TimeAxisInfo$.$TIME_YEAR_MIN$ || this.$_timeRange$ >= 6 * $dvt$$3$$.$TimeAxisInfo$.$TIME_YEAR_MIN$) {
      $DvtAxisConstants$$ = this.$_formatDate$($DvtAxisRenderer$$, !1, !1, !0);
    } else {
      if (this.$_step$ >= $dvt$$3$$.$TimeAxisInfo$.$TIME_MONTH_MIN$ || this.$_timeRange$ >= 6 * $dvt$$3$$.$TimeAxisInfo$.$TIME_MONTH_MIN$) {
        if (null == $prevDate$$1$$ || $prevDate$$1$$.getMonth() != $DvtAxisRenderer$$.getMonth()) {
          $DvtAxisConstants$$ = this.$_formatDate$($DvtAxisRenderer$$, !1, !0, !1);
        }
        if (null == $prevDate$$1$$ || $prevDate$$1$$.getYear() != $DvtAxisRenderer$$.getYear()) {
          $DvtAxisDefaults$$ = this.$_formatDate$($DvtAxisRenderer$$, !1, !1, !0);
        }
      } else {
        if (this.$_step$ >= $dvt$$3$$.$TimeAxisInfo$.$TIME_DAY$ || this.$_timeRange$ >= 6 * $dvt$$3$$.$TimeAxisInfo$.$TIME_DAY$) {
          if ($bOneLabel$$) {
            $DvtAxisConstants$$ = this.$_formatDate$($DvtAxisRenderer$$, !0, !0, !0);
          } else {
            if (null == $prevDate$$1$$ || $prevDate$$1$$.getDate() != $DvtAxisRenderer$$.getDate()) {
              $DvtAxisConstants$$ = this.$_formatDate$($DvtAxisRenderer$$, !0, !1, !1);
            }
            null == $prevDate$$1$$ || $prevDate$$1$$.getYear() != $DvtAxisRenderer$$.getYear() ? $DvtAxisDefaults$$ = this.$_formatDate$($DvtAxisRenderer$$, !1, !0, !0) : $prevDate$$1$$.getMonth() != $DvtAxisRenderer$$.getMonth() && ($DvtAxisDefaults$$ = this.$_formatDate$($DvtAxisRenderer$$, !1, !0, !1));
          }
        } else {
          if (this.$_step$ >= $dvt$$3$$.$TimeAxisInfo$.$TIME_HOUR$ || this.$_timeRange$ >= 6 * $dvt$$3$$.$TimeAxisInfo$.$TIME_HOUR$) {
            if (null == $prevDate$$1$$ || $prevDate$$1$$.getHours() != $DvtAxisRenderer$$.getHours()) {
              $DvtAxisConstants$$ = this.$_formatTime$($DvtAxisRenderer$$, !1, !1);
            }
          } else {
            if (this.$_step$ >= $dvt$$3$$.$TimeAxisInfo$.$TIME_MINUTE$ || this.$_timeRange$ >= 6 * $dvt$$3$$.$TimeAxisInfo$.$TIME_MINUTE$) {
              if (null == $prevDate$$1$$ || $prevDate$$1$$.getMinutes() != $DvtAxisRenderer$$.getMinutes()) {
                $DvtAxisConstants$$ = this.$_formatTime$($DvtAxisRenderer$$, !0, !1);
              }
            } else {
              if (null == $prevDate$$1$$ || $prevDate$$1$$.getSeconds() != $DvtAxisRenderer$$.getSeconds()) {
                $DvtAxisConstants$$ = this.$_formatTime$($DvtAxisRenderer$$, !0, !0);
              }
            }
          }
          if ($DvtAxisAutomation$$) {
            if (null == $prevDate$$1$$ || $prevDate$$1$$.getDate() != $DvtAxisRenderer$$.getDate()) {
              $DvtAxisDefaults$$ = this.$_formatDate$($DvtAxisRenderer$$, !0, !0, !1);
            }
          } else {
            null == $prevDate$$1$$ || $prevDate$$1$$.getYear() != $DvtAxisRenderer$$.getYear() ? $DvtAxisDefaults$$ = this.$_formatDate$($DvtAxisRenderer$$, !0, !0, !0) : $prevDate$$1$$.getMonth() != $DvtAxisRenderer$$.getMonth() ? $DvtAxisDefaults$$ = this.$_formatDate$($DvtAxisRenderer$$, !0, !0, !1) : $prevDate$$1$$.getDate() != $DvtAxisRenderer$$.getDate() && ($DvtAxisDefaults$$ = this.$_formatDate$($DvtAxisRenderer$$, !0, !1, !1));
          }
        }
      }
    }
    return [$DvtAxisConstants$$, $DvtAxisDefaults$$];
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$_formatDate$ = function $$dvt$$3$$$$TimeAxisInfo$$$$_formatDate$$($DvtAxisRenderer$$, $showDay$$, $showMonth$$, $DvtAxisConstants$$) {
    var $DvtAxisDefaults$$ = "th" == this.$_locale$.substring(0, 2) && "jet" != this.$Options$._environment ? $DvtAxisRenderer$$.getFullYear() + 543 : $DvtAxisRenderer$$.getFullYear(), $DvtAxisAutomation$$;
    $DvtAxisAutomation$$ = this.$_monthResources$ && 12 <= this.$_monthResources$.length ? this.$_monthResources$[$DvtAxisRenderer$$.getMonth()] : $DvtAxisRenderer$$.toString().split(" ")[1];
    $DvtAxisRenderer$$ = $DvtAxisRenderer$$.getDate();
    $DvtAxisDefaults$$ += $dvt$$3$$.$TimeAxisInfo$.$_getYearTrailingCharacters$(this.$_locale$);
    $DvtAxisRenderer$$ += $dvt$$3$$.$TimeAxisInfo$.$_getDayTrailingCharacters$(this.$_locale$);
    for (var $dmyOrder$$ = $dvt$$3$$.$TimeAxisInfo$.$_getDMYOrder$(this.$_locale$), $dateStr$$ = "", $i$$229$$ = 0;$i$$229$$ < $dmyOrder$$.length;$i$$229$$++) {
      $showDay$$ && "D" == $dmyOrder$$[$i$$229$$] ? $dateStr$$ += $DvtAxisRenderer$$ + " " : $showMonth$$ && "M" == $dmyOrder$$[$i$$229$$] ? $dateStr$$ += $DvtAxisAutomation$$ + " " : $DvtAxisConstants$$ && "Y" == $dmyOrder$$[$i$$229$$] && ($dateStr$$ += $DvtAxisDefaults$$ + " ");
    }
    return 0 < $dateStr$$.length ? $dateStr$$.slice(0, $dateStr$$.length - 1) : $dateStr$$;
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$_formatTime$ = function $$dvt$$3$$$$TimeAxisInfo$$$$_formatTime$$($DvtAxisRenderer$$, $showMinute$$, $showSecond$$) {
    var $DvtAxisConstants$$ = $DvtAxisRenderer$$.getHours(), $DvtAxisDefaults$$ = $DvtAxisRenderer$$.getMinutes();
    $DvtAxisRenderer$$ = $DvtAxisRenderer$$.getSeconds();
    var $DvtAxisAutomation$$ = $dvt$$3$$.$TimeAxisInfo$.$_getAMString$(this.$_locale$), $pm$$1$$ = $dvt$$3$$.$TimeAxisInfo$.$_getPMString$(this.$_locale$), $ampmBefore$$ = $dvt$$3$$.$TimeAxisInfo$.$_getAMPMBefore$(this.$_locale$), $b12HFormat$$ = "" != $DvtAxisAutomation$$ && "" != $pm$$1$$, $ampm$$, $timeLabel$$ = "";
    $dvt$$3$$.$Agent$.$isRightToLeft$(this.$getCtx$()) && ($timeLabel$$ = "\u200f");
    if ($b12HFormat$$) {
      if (12 > $DvtAxisConstants$$ ? ($ampm$$ = $DvtAxisAutomation$$, 0 == $DvtAxisConstants$$ && ($DvtAxisConstants$$ = 12)) : ($ampm$$ = $pm$$1$$, 12 < $DvtAxisConstants$$ && ($DvtAxisConstants$$ -= 12)), $timeLabel$$ += $DvtAxisConstants$$, $showMinute$$ || 0 != $DvtAxisDefaults$$) {
        $timeLabel$$ += ":" + this.$_doubleDigit$($DvtAxisDefaults$$);
      }
    } else {
      $timeLabel$$ += this.$_doubleDigit$($DvtAxisConstants$$) + ":" + this.$_doubleDigit$($DvtAxisDefaults$$);
    }
    $showSecond$$ && ($timeLabel$$ += ":" + this.$_doubleDigit$($DvtAxisRenderer$$));
    return $b12HFormat$$ ? $ampmBefore$$ ? $ampm$$ + " " + $timeLabel$$ : $timeLabel$$ + " " + $ampm$$ : $timeLabel$$;
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$_doubleDigit$ = function $$dvt$$3$$$$TimeAxisInfo$$$$_doubleDigit$$($dvt$$3$$) {
    return 10 > $dvt$$3$$ ? "0" + $dvt$$3$$ : "" + $dvt$$3$$;
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$_getMixedFrequencyStep$ = function $$dvt$$3$$$$TimeAxisInfo$$$$_getMixedFrequencyStep$$() {
    return this.$_timeRange$ >= 6 * $dvt$$3$$.$TimeAxisInfo$.$TIME_YEAR_MIN$ ? $dvt$$3$$.$TimeAxisInfo$.$TIME_YEAR_MIN$ : this.$_timeRange$ >= 6 * $dvt$$3$$.$TimeAxisInfo$.$TIME_MONTH_MIN$ ? $dvt$$3$$.$TimeAxisInfo$.$TIME_MONTH_MIN$ : this.$_timeRange$ >= 6 * $dvt$$3$$.$TimeAxisInfo$.$TIME_DAY$ ? $dvt$$3$$.$TimeAxisInfo$.$TIME_DAY$ : this.$_timeRange$ >= $dvt$$3$$.$TimeAxisInfo$.$TIME_DAY$ ? 3 * $dvt$$3$$.$TimeAxisInfo$.$TIME_HOUR$ : this.$_timeRange$ >= 6 * $dvt$$3$$.$TimeAxisInfo$.$TIME_HOUR$ ? 
    $dvt$$3$$.$TimeAxisInfo$.$TIME_HOUR$ : this.$_timeRange$ >= $dvt$$3$$.$TimeAxisInfo$.$TIME_HOUR$ ? 15 * $dvt$$3$$.$TimeAxisInfo$.$TIME_MINUTE$ : this.$_timeRange$ >= 30 * $dvt$$3$$.$TimeAxisInfo$.$TIME_MINUTE$ ? 5 * $dvt$$3$$.$TimeAxisInfo$.$TIME_MINUTE$ : this.$_timeRange$ >= 6 * $dvt$$3$$.$TimeAxisInfo$.$TIME_MINUTE$ ? $dvt$$3$$.$TimeAxisInfo$.$TIME_MINUTE$ : this.$_timeRange$ >= $dvt$$3$$.$TimeAxisInfo$.$TIME_MINUTE$ ? 15 * $dvt$$3$$.$TimeAxisInfo$.$TIME_SECOND$ : this.$_timeRange$ >= 30 * 
    $dvt$$3$$.$TimeAxisInfo$.$TIME_SECOND$ ? 5 * $dvt$$3$$.$TimeAxisInfo$.$TIME_SECOND$ : $dvt$$3$$.$TimeAxisInfo$.$TIME_SECOND$;
  };
  $dvt$$3$$.$TimeAxisInfo$.$_getLabelPositions$ = function $$dvt$$3$$$$TimeAxisInfo$$$_getLabelPositions$$($DvtAxisRenderer$$, $end$$13$$, $step$$) {
    var $DvtAxisConstants$$ = new Date($DvtAxisRenderer$$);
    $DvtAxisConstants$$.setMonth(0, 1);
    $DvtAxisConstants$$.setHours(0, 0, 0, 0);
    var $DvtAxisConstants$$ = $DvtAxisConstants$$.getTime(), $DvtAxisDefaults$$ = [];
    if ($step$$ >= $dvt$$3$$.$TimeAxisInfo$.$TIME_YEAR_MIN$ && $step$$ <= $dvt$$3$$.$TimeAxisInfo$.$TIME_YEAR_MAX$) {
      for (;$DvtAxisConstants$$ < $DvtAxisRenderer$$;) {
        $DvtAxisConstants$$ = $dvt$$3$$.$TimeAxisInfo$.$_addOneYear$($DvtAxisConstants$$);
      }
      for (;$DvtAxisConstants$$ <= $end$$13$$;) {
        $DvtAxisDefaults$$.push($DvtAxisConstants$$), $DvtAxisConstants$$ = $dvt$$3$$.$TimeAxisInfo$.$_addOneYear$($DvtAxisConstants$$);
      }
    } else {
      if ($step$$ >= $dvt$$3$$.$TimeAxisInfo$.$TIME_MONTH_MIN$ && $step$$ <= $dvt$$3$$.$TimeAxisInfo$.$TIME_MONTH_MAX$) {
        for (;$DvtAxisConstants$$ < $DvtAxisRenderer$$;) {
          $DvtAxisConstants$$ = $dvt$$3$$.$TimeAxisInfo$.$_addOneMonth$($DvtAxisConstants$$);
        }
        for (;$DvtAxisConstants$$ <= $end$$13$$;) {
          $DvtAxisDefaults$$.push($DvtAxisConstants$$), $DvtAxisConstants$$ = $dvt$$3$$.$TimeAxisInfo$.$_addOneMonth$($DvtAxisConstants$$);
        }
      } else {
        for ($DvtAxisConstants$$ += Math.ceil(($DvtAxisRenderer$$ - $DvtAxisConstants$$) / $step$$) * $step$$;$DvtAxisConstants$$ <= $end$$13$$;) {
          $DvtAxisDefaults$$.push($DvtAxisConstants$$), $DvtAxisConstants$$ += $step$$;
        }
      }
    }
    return $DvtAxisDefaults$$;
  };
  $dvt$$3$$.$TimeAxisInfo$.$_addOneYear$ = function $$dvt$$3$$$$TimeAxisInfo$$$_addOneYear$$($dvt$$3$$) {
    $dvt$$3$$ = new Date($dvt$$3$$);
    $dvt$$3$$.setFullYear($dvt$$3$$.getFullYear() + 1);
    return $dvt$$3$$.getTime();
  };
  $dvt$$3$$.$TimeAxisInfo$.$_addOneMonth$ = function $$dvt$$3$$$$TimeAxisInfo$$$_addOneMonth$$($dvt$$3$$) {
    $dvt$$3$$ = new Date($dvt$$3$$);
    $dvt$$3$$.setMonth($dvt$$3$$.getMonth() + 1);
    return $dvt$$3$$.getTime();
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$_generateLabels$ = function $$dvt$$3$$$$TimeAxisInfo$$$$_generateLabels$$($DvtAxisRenderer$$) {
    var $labels1$$ = [], $labels2$$ = [], $DvtAxisConstants$$ = [], $DvtAxisDefaults$$ = [], $DvtAxisAutomation$$ = [], $label1$$1_prevDate$$2_text$$49$$ = null, $c1$$ = 0, $c2$$ = 0, $container$$17$$ = $DvtAxisRenderer$$.$_stage$, $isRTL$$9$$ = $dvt$$3$$.$Agent$.$isRightToLeft$($DvtAxisRenderer$$), $isVert$$3$$ = "left" == this.$Position$ || "right" == this.$Position$, $scrollable$$ = "off" != this.$Options$.zoomAndScroll, $first$$3$$ = !0, $levelsGap$$ = 0;
    $isVert$$3$$ && $dvt$$3$$.$Agent$.$isBrowserChrome$() && ($levelsGap$$ = .16 * this.$getTickLabelHeight$());
    var $times$$1$$ = [];
    if (null != this.$_step$) {
      $times$$1$$ = $dvt$$3$$.$TimeAxisInfo$.$_getLabelPositions$(this.$MinValue$, this.$MaxValue$, this.$_step$);
    } else {
      if (this.$_mixedFrequency$) {
        this.$_step$ = this.$_getMixedFrequencyStep$(), $times$$1$$ = $dvt$$3$$.$TimeAxisInfo$.$_getLabelPositions$(this.$MinValue$, this.$MaxValue$, this.$_step$);
      } else {
        for (var $firstLabel$$1_i$$230$$ = 0;$firstLabel$$1_i$$230$$ < this.$_groups$.length;$firstLabel$$1_i$$230$$++) {
          this.$_groups$[$firstLabel$$1_i$$230$$] >= this.$MinValue$ && this.$_groups$[$firstLabel$$1_i$$230$$] <= this.$MaxValue$ && $times$$1$$.push(this.$_groups$[$firstLabel$$1_i$$230$$]);
        }
        this.$_step$ = this.$_averageInterval$;
        this.$_skipGaps$ || ($firstLabel$$1_i$$230$$ = new $dvt$$3$$.$OutputText$($DvtAxisRenderer$$, this.$_formatAxisLabel$(new Date($times$$1$$[0]))[0], 0, 0), (($isVert$$3$$ ? $dvt$$3$$.$TextUtils$.$guessTextDimensions$($firstLabel$$1_i$$230$$).$h$ : $firstLabel$$1_i$$230$$.$measureDimensions$().$w$) + this.$GetTickLabelGapSize$()) * ($times$$1$$.length - 1) > Math.abs(this.$_endCoord$ - this.$_startCoord$) && (this.$_step$ = this.$_getMixedFrequencyStep$(), $times$$1$$ = $dvt$$3$$.$TimeAxisInfo$.$_getLabelPositions$(this.$MinValue$, 
        this.$MaxValue$, this.$_step$)));
      }
    }
    0 == $times$$1$$.length && ($times$$1$$ = [this.$MinValue$]);
    for ($firstLabel$$1_i$$230$$ = 0;$firstLabel$$1_i$$230$$ < $times$$1$$.length;$firstLabel$$1_i$$230$$++) {
      var $date$$9_time$$3$$ = $times$$1$$[$firstLabel$$1_i$$230$$], $coord$$13$$ = this.$getCoordAt$($date$$9_time$$3$$);
      if (null != $coord$$13$$) {
        var $date$$9_time$$3$$ = new Date($date$$9_time$$3$$), $label2$$1_twoLabels$$1$$ = this.$_formatAxisLabel$($date$$9_time$$3$$, $label1$$1_prevDate$$2_text$$49$$), $label1$$1_prevDate$$2_text$$49$$ = $label2$$1_twoLabels$$1$$[0], $label2$$1_twoLabels$$1$$ = $label2$$1_twoLabels$$1$$[1];
        null != $label1$$1_prevDate$$2_text$$49$$ ? ($DvtAxisConstants$$.push({text:$label1$$1_prevDate$$2_text$$49$$, $coord$:null != $label2$$1_twoLabels$$1$$ ? $coord$$13$$ + $levelsGap$$ : $coord$$13$$}), $DvtAxisDefaults$$.push($coord$$13$$), $c1$$++) : ($DvtAxisConstants$$.push(null), $DvtAxisDefaults$$.push(null));
        $labels1$$.push(null);
        $scrollable$$ && $first$$3$$ && ($coord$$13$$ = this.$MinValue$ ? this.$getCoordAt$(this.$MinValue$) : $coord$$13$$);
        $first$$3$$ = !1;
        null != $label2$$1_twoLabels$$1$$ ? ($label1$$1_prevDate$$2_text$$49$$ = this.$CreateLabel$($DvtAxisRenderer$$, $label2$$1_twoLabels$$1$$, null != $label2$$1_twoLabels$$1$$ ? $coord$$13$$ - $levelsGap$$ : $coord$$13$$), $DvtAxisAutomation$$.push($coord$$13$$), $isVert$$3$$ || ($isRTL$$9$$ ? $label1$$1_prevDate$$2_text$$49$$.$alignRight$() : $label1$$1_prevDate$$2_text$$49$$.$alignLeft$()), $labels2$$.push($label1$$1_prevDate$$2_text$$49$$), this.$_isOneLevel$ = !1, $c2$$++) : ($labels2$$.push(null), 
        $DvtAxisAutomation$$.push(null));
        $label1$$1_prevDate$$2_text$$49$$ = $date$$9_time$$3$$;
      }
    }
    $c1$$ = this.$_skipLabelsUniform$($DvtAxisConstants$$, $labels1$$, $container$$17$$);
    if (!$scrollable$$ && 1 < $c2$$ && $c1$$ < 1.5 * $c2$$) {
      $labels1$$ = $labels2$$;
      $labels2$$ = null;
      for ($DvtAxisRenderer$$ = 0;$DvtAxisRenderer$$ < $labels1$$.length;$DvtAxisRenderer$$++) {
        null != $labels1$$[$DvtAxisRenderer$$] && $labels1$$[$DvtAxisRenderer$$].$alignCenter$();
      }
      this.$_skipLabelsGreedy$($labels1$$, this.$GetLabelDims$($labels1$$, $container$$17$$), !1, $isRTL$$9$$);
    } else {
      $c2$$ = this.$_skipLabelsGreedy$($labels2$$, this.$GetLabelDims$($labels2$$, $container$$17$$), !0, $isRTL$$9$$), 0 == $c2$$ && ($labels2$$ = null);
    }
    $isVert$$3$$ && null != $labels2$$ && this.$_skipVertLabels$($labels1$$, $labels2$$);
    this.$_level1Labels$ = $labels1$$;
    this.$_level2Labels$ = $labels2$$;
    this.$_level1Coords$ = $DvtAxisDefaults$$;
    this.$_level2Coords$ = $DvtAxisAutomation$$;
  };
  $dvt$$3$$.$TimeAxisInfo$.$_isOverlapping$ = function $$dvt$$3$$$$TimeAxisInfo$$$_isOverlapping$$($dvt$$3$$, $DvtAxisRenderer$$, $pointB1$$2$$, $DvtAxisConstants$$, $DvtAxisDefaults$$) {
    return $pointB1$$2$$ >= $dvt$$3$$ && $pointB1$$2$$ - $DvtAxisDefaults$$ < $DvtAxisRenderer$$ || $pointB1$$2$$ < $dvt$$3$$ && $DvtAxisConstants$$ + $DvtAxisDefaults$$ > $dvt$$3$$ ? !0 : !1;
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$_getLabelOverflow$ = function $$dvt$$3$$$$TimeAxisInfo$$$$_getLabelOverflow$$($dvt$$3$$, $DvtAxisRenderer$$, $isStartAligned$$, $DvtAxisConstants$$) {
    var $DvtAxisDefaults$$ = $dvt$$3$$ - ($isStartAligned$$ ? $DvtAxisConstants$$ ? $DvtAxisRenderer$$ : 0 : .5 * $DvtAxisRenderer$$);
    if ($DvtAxisDefaults$$ < this.$Options$._minOverflowCoord) {
      return Math.floor($DvtAxisDefaults$$ - this.$Options$._minOverflowCoord);
    }
    $dvt$$3$$ += $isStartAligned$$ ? $DvtAxisConstants$$ ? 0 : $DvtAxisRenderer$$ : .5 * $DvtAxisRenderer$$;
    return $dvt$$3$$ > this.$Options$._maxOverflowCoord ? Math.ceil($dvt$$3$$ - this.$Options$._maxOverflowCoord) : 0;
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$_skipLabelsGreedy$ = function $$dvt$$3$$$$TimeAxisInfo$$$$_skipLabelsGreedy$$($DvtAxisRenderer$$, $labelDims$$11$$, $isStartAligned$$1_pointB1$$3$$, $DvtAxisConstants$$) {
    if (!$labelDims$$11$$ || 0 >= $labelDims$$11$$.length) {
      return !1;
    }
    for (var $DvtAxisDefaults$$ = "left" == this.$Position$ || "right" == this.$Position$, $DvtAxisAutomation$$ = this.$getTickLabelHeight$(), $DvtAxisAutomation$$ = $DvtAxisDefaults$$ ? .08 * $DvtAxisAutomation$$ : .24 * $DvtAxisAutomation$$, $count$$14$$ = 0, $pointA1$$3$$, $pointA2$$3$$, $label$$39$$, $availWidth$$10$$ = Math.abs(this.$_endCoord$ - this.$_startCoord$), $j$$32$$ = 0;$j$$32$$ < $labelDims$$11$$.length;$j$$32$$++) {
      if (this.$_level2Overflow$.push(0), null != $DvtAxisRenderer$$[$j$$32$$]) {
        $label$$39$$ = $DvtAxisRenderer$$[$j$$32$$];
        var $labelLength$$1_overflow$$2$$ = $dvt$$3$$.$TextUtils$.$getTextWidth$($label$$39$$);
        $labelDims$$11$$[$j$$32$$].$w$ > $availWidth$$10$$ ? $DvtAxisRenderer$$[$j$$32$$] = null : ($labelLength$$1_overflow$$2$$ = this.$_getLabelOverflow$($label$$39$$.$getX$(), $labelLength$$1_overflow$$2$$, $isStartAligned$$1_pointB1$$3$$, $DvtAxisConstants$$), this.$_level2Overflow$[$j$$32$$] = $labelLength$$1_overflow$$2$$, 0 != $labelLength$$1_overflow$$2$$ && ($label$$39$$.$setX$($label$$39$$.$getX$() - $labelLength$$1_overflow$$2$$), $labelDims$$11$$[$j$$32$$].x -= $labelLength$$1_overflow$$2$$));
      }
    }
    for ($j$$32$$ = 0;$j$$32$$ < $labelDims$$11$$.length;$j$$32$$++) {
      null != $labelDims$$11$$[$j$$32$$] && ($DvtAxisDefaults$$ ? ($isStartAligned$$1_pointB1$$3$$ = $labelDims$$11$$[$j$$32$$].y, $DvtAxisConstants$$ = $labelDims$$11$$[$j$$32$$].y + $labelDims$$11$$[$j$$32$$].$h$) : ($isStartAligned$$1_pointB1$$3$$ = $labelDims$$11$$[$j$$32$$].x, $DvtAxisConstants$$ = $labelDims$$11$$[$j$$32$$].x + $labelDims$$11$$[$j$$32$$].$w$), null != $pointA1$$3$$ && null != $pointA2$$3$$ && $dvt$$3$$.$TimeAxisInfo$.$_isOverlapping$($pointA1$$3$$, $pointA2$$3$$, $isStartAligned$$1_pointB1$$3$$, 
      $DvtAxisConstants$$, $DvtAxisAutomation$$) && ($DvtAxisRenderer$$[$j$$32$$] = null), null != $DvtAxisRenderer$$[$j$$32$$] && ($pointA1$$3$$ = $isStartAligned$$1_pointB1$$3$$, $pointA2$$3$$ = $DvtAxisConstants$$, $count$$14$$++));
    }
    return $count$$14$$;
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$_skipLabelsUniform$ = function $$dvt$$3$$$$TimeAxisInfo$$$$_skipLabelsUniform$$($dvt$$3$$, $DvtAxisRenderer$$, $container$$18$$) {
    function $DvtAxisConstants$$($dvt$$3$$) {
      if (null == $DvtAxisAutomation$$[$dvt$$3$$]) {
        if ($DvtAxisDefaults$$[$dvt$$3$$].label = $_this$$.$CreateLabel$($container$$18$$.$getCtx$(), $DvtAxisDefaults$$[$dvt$$3$$].text, $DvtAxisDefaults$$[$dvt$$3$$].$coord$), $DvtAxisAutomation$$[$dvt$$3$$] = $DvtAxisDefaults$$[$dvt$$3$$].label.$measureDimensions$($container$$18$$), $DvtAxisAutomation$$[$dvt$$3$$].$w$ > $availWidth$$11$$) {
          $DvtAxisDefaults$$[$dvt$$3$$].label = null, $DvtAxisAutomation$$[$dvt$$3$$].$w$ = 0, $DvtAxisAutomation$$[$dvt$$3$$].$h$ = 0;
        } else {
          var $DvtAxisRenderer$$ = $_this$$.$_getLabelOverflow$($DvtAxisDefaults$$[$dvt$$3$$].$coord$, $DvtAxisAutomation$$[$dvt$$3$$].$w$, !1, !1);
          0 != $DvtAxisRenderer$$ && ($DvtAxisDefaults$$[$dvt$$3$$].$coord$ -= $DvtAxisRenderer$$, $DvtAxisAutomation$$[$dvt$$3$$].x -= $DvtAxisRenderer$$, $DvtAxisDefaults$$[$dvt$$3$$].label.$setX$($DvtAxisDefaults$$[$dvt$$3$$].label.$getX$() - $DvtAxisRenderer$$), $_this$$.$_level1Overflow$[$dvt$$3$$] = $DvtAxisRenderer$$);
        }
      }
      return $isVert$$5$$ ? $DvtAxisAutomation$$[$dvt$$3$$].$h$ : $DvtAxisAutomation$$[$dvt$$3$$].$w$;
    }
    for (var $DvtAxisDefaults$$ = [], $DvtAxisAutomation$$ = [], $availWidth$$11$$ = Math.abs(this.$_endCoord$ - this.$_startCoord$), $bOverlaps$$1_j$$33_totalWidth$$2$$ = 0;$bOverlaps$$1_j$$33_totalWidth$$2$$ < $dvt$$3$$.length;$bOverlaps$$1_j$$33_totalWidth$$2$$++) {
      null != $dvt$$3$$[$bOverlaps$$1_j$$33_totalWidth$$2$$] && ($DvtAxisDefaults$$.push($dvt$$3$$[$bOverlaps$$1_j$$33_totalWidth$$2$$]), $DvtAxisAutomation$$.push(null), this.$_level1Overflow$.push(0));
    }
    for (var $isVert$$5$$ = "left" == this.$Position$ || "right" == this.$Position$, $_this$$ = this, $bOverlaps$$1_j$$33_totalWidth$$2$$ = ($DvtAxisConstants$$(0) + this.$GetTickLabelGapSize$()) * ($DvtAxisDefaults$$.length - 1), $count$$15_skip$$ = 0 < $availWidth$$11$$ ? Math.ceil($bOverlaps$$1_j$$33_totalWidth$$2$$ / $availWidth$$11$$) - 1 : 0, $bOverlaps$$1_j$$33_totalWidth$$2$$ = !0;$bOverlaps$$1_j$$33_totalWidth$$2$$;) {
      for ($bOverlaps$$1_j$$33_totalWidth$$2$$ = 0;$bOverlaps$$1_j$$33_totalWidth$$2$$ < $DvtAxisDefaults$$.length;$bOverlaps$$1_j$$33_totalWidth$$2$$++) {
        0 == $bOverlaps$$1_j$$33_totalWidth$$2$$ % ($count$$15_skip$$ + 1) ? ($DvtAxisConstants$$($bOverlaps$$1_j$$33_totalWidth$$2$$), $DvtAxisDefaults$$[$bOverlaps$$1_j$$33_totalWidth$$2$$].$skipped$ = !1) : $DvtAxisDefaults$$[$bOverlaps$$1_j$$33_totalWidth$$2$$].$skipped$ = !0;
      }
      $bOverlaps$$1_j$$33_totalWidth$$2$$ = this.$IsOverlapping$($DvtAxisAutomation$$, $count$$15_skip$$);
      $count$$15_skip$$++;
    }
    for ($bOverlaps$$1_j$$33_totalWidth$$2$$ = $count$$15_skip$$ = 0;$bOverlaps$$1_j$$33_totalWidth$$2$$ < $dvt$$3$$.length;$bOverlaps$$1_j$$33_totalWidth$$2$$++) {
      null == $dvt$$3$$[$bOverlaps$$1_j$$33_totalWidth$$2$$] || $dvt$$3$$[$bOverlaps$$1_j$$33_totalWidth$$2$$].$skipped$ || ($DvtAxisRenderer$$[$bOverlaps$$1_j$$33_totalWidth$$2$$] = $dvt$$3$$[$bOverlaps$$1_j$$33_totalWidth$$2$$].label, $count$$15_skip$$++);
    }
    return $count$$15_skip$$;
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$_skipVertLabels$ = function $$dvt$$3$$$$TimeAxisInfo$$$$_skipVertLabels$$($DvtAxisRenderer$$, $labels2$$1$$) {
    function $isOverlapping$$($DvtAxisRenderer$$, $labels2$$1$$) {
      return $dvt$$3$$.$TimeAxisInfo$.$_isOverlapping$($DvtAxisRenderer$$.y, $DvtAxisRenderer$$.y + $DvtAxisRenderer$$.$h$, $labels2$$1$$.y, $labels2$$1$$.y + $labels2$$1$$.$h$, $DvtAxisConstants$$);
    }
    for (var $DvtAxisConstants$$ = .08 * this.$getTickLabelHeight$(), $DvtAxisDefaults$$ = null, $DvtAxisAutomation$$ = !1, $i$$232$$ = 0;$i$$232$$ < $DvtAxisRenderer$$.length;$i$$232$$++) {
      if ($DvtAxisRenderer$$[$i$$232$$] && $labels2$$1$$[$i$$232$$]) {
        $DvtAxisRenderer$$[$i$$232$$].$alignTop$();
        $labels2$$1$$[$i$$232$$].$alignBottom$();
        if ($DvtAxisDefaults$$ && $isOverlapping$$($DvtAxisDefaults$$, $labels2$$1$$[$i$$232$$].$measureDimensions$())) {
          $DvtAxisAutomation$$ = !0;
          break;
        }
        $DvtAxisDefaults$$ = $DvtAxisRenderer$$[$i$$232$$].$measureDimensions$();
      } else {
        if ($DvtAxisRenderer$$[$i$$232$$] || $labels2$$1$$[$i$$232$$]) {
          var $label$$40_lastLv2Dims$$ = $DvtAxisRenderer$$[$i$$232$$] ? $DvtAxisRenderer$$[$i$$232$$] : $labels2$$1$$[$i$$232$$];
          if ($DvtAxisDefaults$$ && $isOverlapping$$($DvtAxisDefaults$$, $label$$40_lastLv2Dims$$.$measureDimensions$())) {
            $DvtAxisAutomation$$ = !0;
            break;
          }
          $DvtAxisDefaults$$ = $label$$40_lastLv2Dims$$.$measureDimensions$();
        }
      }
    }
    if ($DvtAxisAutomation$$) {
      for (var $label$$40_lastLv2Dims$$ = $DvtAxisAutomation$$ = $DvtAxisDefaults$$ = null, $dims$$33$$, $i$$232$$ = 0;$i$$232$$ < $DvtAxisRenderer$$.length;$i$$232$$++) {
        $labels2$$1$$[$i$$232$$] ? ($DvtAxisRenderer$$[$i$$232$$] = null, $labels2$$1$$[$i$$232$$].$alignMiddle$(), $dims$$33$$ = $labels2$$1$$[$i$$232$$].$measureDimensions$(), $DvtAxisAutomation$$ && $isOverlapping$$($DvtAxisAutomation$$, $dims$$33$$) && ($DvtAxisRenderer$$[$DvtAxisDefaults$$] = null), $label$$40_lastLv2Dims$$ = $dims$$33$$) : $DvtAxisRenderer$$[$i$$232$$] && ($dims$$33$$ = $DvtAxisRenderer$$[$i$$232$$].$measureDimensions$(), $label$$40_lastLv2Dims$$ && $isOverlapping$$($label$$40_lastLv2Dims$$, 
        $dims$$33$$) ? $DvtAxisRenderer$$[$i$$232$$] = null : ($DvtAxisAutomation$$ = $dims$$33$$, $DvtAxisDefaults$$ = $i$$232$$));
      }
    }
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$getLabels$ = function $$dvt$$3$$$$TimeAxisInfo$$$$getLabels$$($dvt$$3$$, $DvtAxisRenderer$$) {
    if ($DvtAxisRenderer$$ && 1 < $DvtAxisRenderer$$) {
      return null;
    }
    this.$_level1Labels$ || this.$_generateLabels$($dvt$$3$$);
    return 1 == $DvtAxisRenderer$$ ? this.$_level2Labels$ : this.$_level1Labels$;
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$getMajorTickCoords$ = function $$dvt$$3$$$$TimeAxisInfo$$$$getMajorTickCoords$$() {
    var $dvt$$3$$ = [];
    if (this.$_isOneLevel$) {
      for (var $DvtAxisRenderer$$ = 0;$DvtAxisRenderer$$ < this.$_level1Coords$.length;$DvtAxisRenderer$$++) {
        null != this.$_level1Coords$[$DvtAxisRenderer$$] && null != this.$_level1Labels$[$DvtAxisRenderer$$] && $dvt$$3$$.push(this.$_level1Coords$[$DvtAxisRenderer$$]);
      }
    } else {
      for ($DvtAxisRenderer$$ = 1;$DvtAxisRenderer$$ < this.$_level2Coords$.length;$DvtAxisRenderer$$++) {
        null != this.$_level2Coords$[$DvtAxisRenderer$$] && $dvt$$3$$.push(this.$_level2Coords$[$DvtAxisRenderer$$]);
      }
    }
    return $dvt$$3$$;
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$getMinorTickCoords$ = function $$dvt$$3$$$$TimeAxisInfo$$$$getMinorTickCoords$$() {
    if (this.$_isOneLevel$) {
      return [];
    }
    for (var $dvt$$3$$ = [], $DvtAxisRenderer$$ = 0;$DvtAxisRenderer$$ < this.$_level1Coords$.length;$DvtAxisRenderer$$++) {
      null != this.$_level1Coords$[$DvtAxisRenderer$$] && null != this.$_level1Labels$[$DvtAxisRenderer$$] && $dvt$$3$$.push(this.$_level1Coords$[$DvtAxisRenderer$$]);
    }
    return $dvt$$3$$;
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$getUnboundedValueAt$ = function $$dvt$$3$$$$TimeAxisInfo$$$$getUnboundedValueAt$$($dvt$$3$$) {
    if (null == $dvt$$3$$) {
      return null;
    }
    $dvt$$3$$ = ($dvt$$3$$ - this.$_startCoord$) / (this.$_endCoord$ - this.$_startCoord$);
    if (this.$_skipGaps$) {
      var $DvtAxisRenderer$$ = this.$_timeToIndex$(this.$MinValue$);
      return this.$_indexToTime$($DvtAxisRenderer$$ + $dvt$$3$$ * (this.$_timeToIndex$(this.$MaxValue$) - $DvtAxisRenderer$$));
    }
    return this.$MinValue$ + $dvt$$3$$ * (this.$MaxValue$ - this.$MinValue$);
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$getUnboundedCoordAt$ = function $$dvt$$3$$$$TimeAxisInfo$$$$getUnboundedCoordAt$$($dvt$$3$$) {
    if (null == $dvt$$3$$) {
      return null;
    }
    if (this.$_skipGaps$) {
      var $DvtAxisRenderer$$ = this.$_timeToIndex$(this.$MinValue$);
      $dvt$$3$$ = (this.$_timeToIndex$($dvt$$3$$) - $DvtAxisRenderer$$) / (this.$_timeToIndex$(this.$MaxValue$) - $DvtAxisRenderer$$);
    } else {
      $dvt$$3$$ = ($dvt$$3$$ - this.$MinValue$) / (this.$MaxValue$ - this.$MinValue$);
    }
    return this.$_startCoord$ + $dvt$$3$$ * (this.$_endCoord$ - this.$_startCoord$);
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$linearToActual$ = function $$dvt$$3$$$$TimeAxisInfo$$$$linearToActual$$($dvt$$3$$) {
    return null == $dvt$$3$$ ? null : this.$_skipGaps$ ? this.$_indexToTime$($dvt$$3$$) : $dvt$$3$$;
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$actualToLinear$ = function $$dvt$$3$$$$TimeAxisInfo$$$$actualToLinear$$($dvt$$3$$) {
    return null == $dvt$$3$$ ? null : this.$_skipGaps$ ? this.$_timeToIndex$($dvt$$3$$) : $dvt$$3$$;
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$_timeToIndex$ = function $$dvt$$3$$$$TimeAxisInfo$$$$_timeToIndex$$($dvt$$3$$) {
    for (var $DvtAxisRenderer$$ = this.$_groups$.length, $i$$235_startIndex$$4$$ = 0;$i$$235_startIndex$$4$$ < this.$_groups$.length;$i$$235_startIndex$$4$$++) {
      if ($dvt$$3$$ <= this.$_groups$[$i$$235_startIndex$$4$$]) {
        $DvtAxisRenderer$$ = $i$$235_startIndex$$4$$;
        break;
      }
    }
    var $i$$235_startIndex$$4$$ = $DvtAxisRenderer$$ - 1, $DvtAxisConstants$$ = void 0 !== this.$_groups$[$i$$235_startIndex$$4$$] ? this.$_groups$[$i$$235_startIndex$$4$$] : this.$_groups$[0] - this.$_averageInterval$;
    return $i$$235_startIndex$$4$$ + ($dvt$$3$$ - $DvtAxisConstants$$) / ((void 0 !== this.$_groups$[$DvtAxisRenderer$$] ? this.$_groups$[$DvtAxisRenderer$$] : this.$_groups$[this.$_groups$.length - 1] + this.$_averageInterval$) - $DvtAxisConstants$$);
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$_indexToTime$ = function $$dvt$$3$$$$TimeAxisInfo$$$$_indexToTime$$($dvt$$3$$) {
    var $DvtAxisRenderer$$ = Math.min(Math.max(Math.ceil($dvt$$3$$), 0), this.$_groups$.length), $startIndex$$5$$ = $DvtAxisRenderer$$ - 1, $DvtAxisConstants$$ = void 0 !== this.$_groups$[$startIndex$$5$$] ? this.$_groups$[$startIndex$$5$$] : this.$_groups$[0] - this.$_averageInterval$;
    return $DvtAxisConstants$$ + ($dvt$$3$$ - $startIndex$$5$$) * ((void 0 !== this.$_groups$[$DvtAxisRenderer$$] ? this.$_groups$[$DvtAxisRenderer$$] : this.$_groups$[this.$_groups$.length - 1] + this.$_averageInterval$) - $DvtAxisConstants$$);
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$getGroupWidth$ = function $$dvt$$3$$$$TimeAxisInfo$$$$getGroupWidth$$() {
    return this.$_skipGaps$ ? Math.abs(this.$getUnboundedCoordAt$(this.$_indexToTime$(1)) - this.$getUnboundedCoordAt$(this.$_indexToTime$(0))) : Math.abs(this.$getUnboundedCoordAt$(this.$MinValue$ + this.$_averageInterval$) - this.$getUnboundedCoordAt$(this.$MinValue$));
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$getMinimumExtent$ = function $$dvt$$3$$$$TimeAxisInfo$$$$getMinimumExtent$$() {
    return this.$_skipGaps$ ? 1 : this.$_mixedFrequency$ ? Math.min((this.$GlobalMax$ - this.$GlobalMin$) / 8, this.$_averageInterval$) : this.$_averageInterval$;
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$getStartOverflow$ = function $$dvt$$3$$$$TimeAxisInfo$$$$getStartOverflow$$() {
    return "top" != this.$Position$ && "bottom" != this.$Position$ || !$dvt$$3$$.$Agent$.$isRightToLeft$(this.$getCtx$()) ? this.$StartOverflow$ : this.$EndOverflow$;
  };
  $dvt$$3$$.$TimeAxisInfo$.prototype.$getEndOverflow$ = function $$dvt$$3$$$$TimeAxisInfo$$$$getEndOverflow$$() {
    return "top" != this.$Position$ && "bottom" != this.$Position$ || !$dvt$$3$$.$Agent$.$isRightToLeft$(this.$getCtx$()) ? this.$EndOverflow$ : this.$StartOverflow$;
  };
})(dvt);
