/*
THIS INFRAGISTICS ULTIMATE SOFTWARE LICENSE  AGREEMENT ("AGREEMENT") LOCATED HERE:
https://www.infragistics.com/legal/license/igultimate-la
https://www.infragistics.com/legal/license/igultimate-eula
GOVERNS THE LICENSING, INSTALLATION AND USE OF INFRAGISTICS SOFTWARE. BY DOWNLOADING AND/OR INSTALLING AND USING INFRAGISTICS SOFTWARE:  you are indicating that you have read and understand this Agreement, and agree to be legally bound by it on behalf of the yourself and your company.
*/
import { __extends, __values } from "tslib";
import { DomainChart } from "./DomainChart";
import { fromEnum, enumGetBox, markType } from "igniteui-angular-core";
import { HorizontalAlignment_$type } from "igniteui-angular-core";
import { VerticalAlignment_$type } from "igniteui-angular-core";
import { Visibility_$type } from "igniteui-angular-core";
import { YAxisLabelLocation_$type } from "./YAxisLabelLocation";
import { XAxisLabelLocation_$type } from "./XAxisLabelLocation";
import { AxisLabelSettings } from "./AxisLabelSettings";
import { AxisDefaults } from "./AxisDefaults";
import { TitleSettings } from "./TitleSettings";
import { ScalerParams } from "./ScalerParams";
import { DeviceUtils } from "igniteui-angular-core";
/**
 * @hidden
 */
var XYChart = /** @class */ /*@__PURE__*/ (function (_super) {
    __extends(XYChart, _super);
    function XYChart() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.aa1 = null;
        _this.aa2 = null;
        _this.abi = 0;
        _this.abk = 5;
        _this.abj = 0;
        _this.abh = 5;
        _this.ab1 = 5;
        _this.ab3 = 0;
        _this.ab2 = 5;
        _this.ab0 = 0;
        _this.ag4 = null;
        _this.ahb = null;
        _this.ag2 = null;
        _this.ag3 = null;
        _this.abv = 0;
        _this.ace = 0;
        _this.abu = NaN;
        _this.acd = NaN;
        _this.abx = NaN;
        _this.acg = NaN;
        _this.abw = NaN;
        _this.acf = NaN;
        _this.abt = NaN;
        _this.acc = NaN;
        _this.aha = null;
        _this.ahh = null;
        _this.ads = null;
        _this.adw = null;
        _this.adu = null;
        _this.ady = null;
        _this.adn = null;
        _this.ado = null;
        _this.ag5 = null;
        _this.ahc = null;
        _this.abl = DeviceUtils.g(1);
        _this.ab4 = DeviceUtils.g(1);
        _this.abo = DeviceUtils.g(1);
        _this.ab7 = DeviceUtils.g(1);
        _this.ag7 = null;
        _this.ahe = null;
        _this.ag8 = null;
        _this.ahf = null;
        _this.abp = DeviceUtils.g(1);
        _this.ab8 = DeviceUtils.g(1);
        _this.abq = DeviceUtils.g(8);
        _this.ab9 = 0;
        _this.ag9 = null;
        _this.ahg = null;
        _this.abr = DeviceUtils.g(1);
        _this.aca = DeviceUtils.g(1);
        _this.adt = null;
        _this.adx = null;
        _this.ag6 = null;
        _this.ahd = null;
        _this.abg = 0;
        _this.abz = 0;
        _this.abf = NaN;
        _this.aby = NaN;
        _this.abm = NaN;
        _this.ab5 = NaN;
        _this.abn = NaN;
        _this.ab6 = NaN;
        _this.abs = 0;
        _this.acb = -90;
        _this.abb = false;
        _this.abc = false;
        _this.agx = 1;
        _this.ah0 = 1;
        _this.agw = 1;
        _this.agy = 2;
        _this.ahy = 0;
        _this.ahz = 1;
        _this.ah4 = 0;
        _this.ah5 = 0;
        _this.aa9 = 4;
        _this.aa7 = 4;
        _this.adr = null;
        _this.aav = null;
        _this.adv = null;
        _this.aaw = null;
        return _this;
    }
    XYChart.prototype.provideContainer = function (a) {
        if (a != null) {
            var b = this.aaz();
            var c = this.aa0();
            if (b != null) {
                b.provideRenderer(a);
            }
            if (c != null) {
                c.provideRenderer(a);
            }
        }
        _super.prototype.provideContainer.call(this, a);
    };
    XYChart.prototype.vw = function () {
        _super.prototype.vw.call(this);
        var a = this.aaz();
        var b = this.aa0();
        if (a != null && a.a3 != null) {
            this.ahk = a.a3.textColor;
        }
        if (b != null && b.a3 != null) {
            this.ahr = b.a3.textColor;
        }
        this.ahp = AxisDefaults.axis_TickBrush;
        this.ahw = AxisDefaults.axis_TickBrush;
        this.ahl = AxisDefaults.axis_MajorBrush;
        this.ahs = AxisDefaults.axis_MajorBrush;
        this.aho = AxisDefaults.axis_LineBrush;
        this.ahv = AxisDefaults.axis_LineBrush;
    };
    XYChart.prototype.wr = function (a, b, c) {
        var _this = this;
        _super.prototype.wr.call(this, a, b, c);
        switch (a) {
            case "XAxisLabelLeftMargin":
                this.ago(function (d) { return d.leftMargin = _this.aco; });
                break;
            case "XAxisLabelTopMargin":
                this.ago(function (d) { return d.topMargin = _this.acq; });
                break;
            case "XAxisLabelRightMargin":
                this.ago(function (d) { return d.rightMargin = _this.acp; });
                break;
            case "XAxisLabelBottomMargin":
                this.ago(function (d) { return d.bottomMargin = _this.acn; });
                break;
            case "YAxisLabelLeftMargin":
                this.agt(function (d) { return d.leftMargin = _this.ac7; });
                break;
            case "YAxisLabelTopMargin":
                this.agt(function (d) { return d.topMargin = _this.ac9; });
                break;
            case "YAxisLabelRightMargin":
                this.agt(function (d) { return d.rightMargin = _this.ac8; });
                break;
            case "YAxisLabelBottomMargin":
                this.agt(function (d) { return d.bottomMargin = _this.ac6; });
                break;
            case "ActualItemsSource":
            case "ShouldDisplayMockData":
            case "ShouldUseSkeletonStyleForMockData":
                this.ahi = this.zt(this.ahk);
                this.ahj = this.zt(this.ahr);
                break;
            case "XAxisLabelTextColor":
                this.ahi = this.zt(this.ahk);
                break;
            case "YAxisLabelTextColor":
                this.ahj = this.zt(this.ahr);
                break;
            case "ActualXAxisLabelTextColor":
                this.ago(function (d) { return d.textColor = _this.ahi; });
                break;
            case "ActualYAxisLabelTextColor":
                this.agt(function (d) { return d.textColor = _this.ahj; });
                break;
            case "XAxisTitleMargin":
                this.agq(function (d) { return d.margin = _this.ac1; });
                break;
            case "YAxisTitleMargin":
                this.agv(function (d) { return d.margin = _this.adk; });
                break;
            case "XAxisTitleLeftMargin":
                this.agq(function (d) { return d.leftMargin = _this.ac0; });
                break;
            case "YAxisTitleLeftMargin":
                this.agv(function (d) { return d.leftMargin = _this.adj; });
                break;
            case "XAxisTitleTopMargin":
                this.agq(function (d) { return d.topMargin = _this.ac3; });
                break;
            case "YAxisTitleTopMargin":
                this.agv(function (d) { return d.topMargin = _this.adm; });
                break;
            case "XAxisTitleRightMargin":
                this.agq(function (d) { return d.rightMargin = _this.ac2; });
                break;
            case "YAxisTitleRightMargin":
                this.agv(function (d) { return d.rightMargin = _this.adl; });
                break;
            case "XAxisTitleBottomMargin":
                this.agq(function (d) { return d.bottomMargin = _this.acz; });
                break;
            case "YAxisTitleBottomMargin":
                this.agv(function (d) { return d.bottomMargin = _this.adi; });
                break;
            case "XAxisTitleTextColor":
                this.agq(function (d) { return d.textColor = _this.ahq; });
                break;
            case "YAxisTitleTextColor":
                this.agv(function (d) { return d.textColor = _this.ahx; });
                break;
            case "XAxisFormatLabel":
                this.agm(function (d) { return d.ay = _this.aa3; });
                break;
            case "YAxisFormatLabel":
                this.agr(function (d) { return d.ay = _this.aa4; });
                break;
        }
    };
    Object.defineProperty(XYChart.prototype, "aa3", {
        get: function () {
            return this.aa1;
        },
        set: function (a) {
            var b = this.aa3;
            if (a != b) {
                this.aa1 = a;
                this.wn("XAxisFormatLabel", b, this.aa3);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "aa4", {
        get: function () {
            return this.aa2;
        },
        set: function (a) {
            var b = this.aa4;
            if (a != b) {
                this.aa2 = a;
                this.wn("YAxisFormatLabel", b, this.aa4);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "aco", {
        get: function () {
            return this.abi;
        },
        set: function (a) {
            var b = this.aco;
            if (a != b) {
                this.abi = a;
                this.wn("XAxisLabelLeftMargin", b, this.aco);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "acq", {
        get: function () {
            return this.abk;
        },
        set: function (a) {
            var b = this.acq;
            if (a != b) {
                this.abk = a;
                this.wn("XAxisLabelTopMargin", b, this.acq);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "acp", {
        get: function () {
            return this.abj;
        },
        set: function (a) {
            var b = this.acp;
            if (a != b) {
                this.abj = a;
                this.wn("XAxisLabelRightMargin", b, this.acp);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "acn", {
        get: function () {
            return this.abh;
        },
        set: function (a) {
            var b = this.acn;
            if (a != b) {
                this.abh = a;
                this.wn("XAxisLabelBottomMargin", b, this.acn);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ac7", {
        get: function () {
            return this.ab1;
        },
        set: function (a) {
            var b = this.ac7;
            if (a != b) {
                this.ab1 = a;
                this.wn("YAxisLabelLeftMargin", b, this.ac7);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ac9", {
        get: function () {
            return this.ab3;
        },
        set: function (a) {
            var b = this.ac9;
            if (a != b) {
                this.ab3 = a;
                this.wn("YAxisLabelTopMargin", b, this.ac9);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ac8", {
        get: function () {
            return this.ab2;
        },
        set: function (a) {
            var b = this.ac8;
            if (a != b) {
                this.ab2 = a;
                this.wn("YAxisLabelRightMargin", b, this.ac8);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ac6", {
        get: function () {
            return this.ab0;
        },
        set: function (a) {
            var b = this.ac6;
            if (a != b) {
                this.ab0 = a;
                this.wn("YAxisLabelBottomMargin", b, this.ac6);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ahk", {
        get: function () {
            return this.ag4;
        },
        set: function (a) {
            var b = this.ahk;
            if (a != b) {
                this.ag4 = a;
                this.wn("XAxisLabelTextColor", b, this.ahk);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ahr", {
        get: function () {
            return this.ahb;
        },
        set: function (a) {
            var b = this.ahr;
            if (a != b) {
                this.ahb = a;
                this.wn("YAxisLabelTextColor", b, this.ahr);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ahi", {
        get: function () {
            return this.ag2;
        },
        set: function (a) {
            var b = this.ag2;
            if (a != b) {
                this.ag2 = a;
                this.wn("ActualXAxisLabelTextColor", b, this.ahi);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ahj", {
        get: function () {
            return this.ag3;
        },
        set: function (a) {
            var b = this.ag3;
            if (a != b) {
                this.ag3 = a;
                this.wn("ActualYAxisLabelTextColor", b, this.ahj);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ac1", {
        get: function () {
            return this.abv;
        },
        set: function (a) {
            var b = this.ac1;
            if (a != b) {
                this.abv = a;
                this.wn("XAxisTitleMargin", b, this.ac1);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "adk", {
        get: function () {
            return this.ace;
        },
        set: function (a) {
            var b = this.adk;
            if (a != b) {
                this.ace = a;
                this.wn("YAxisTitleMargin", b, this.adk);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ac0", {
        get: function () {
            return this.abu;
        },
        set: function (a) {
            var b = this.ac0;
            if (a != b) {
                this.abu = a;
                this.wn("XAxisTitleLeftMargin", b, this.ac0);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "adj", {
        get: function () {
            return this.acd;
        },
        set: function (a) {
            var b = this.adj;
            if (a != b) {
                this.acd = a;
                this.wn("YAxisTitleLeftMargin", b, this.adj);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ac3", {
        get: function () {
            return this.abx;
        },
        set: function (a) {
            var b = this.ac3;
            if (a != b) {
                this.abx = a;
                this.wn("XAxisTitleTopMargin", b, this.ac3);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "adm", {
        get: function () {
            return this.acg;
        },
        set: function (a) {
            var b = this.adm;
            if (a != b) {
                this.acg = a;
                this.wn("YAxisTitleTopMargin", b, this.adm);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ac2", {
        get: function () {
            return this.abw;
        },
        set: function (a) {
            var b = this.ac2;
            if (a != b) {
                this.abw = a;
                this.wn("XAxisTitleRightMargin", b, this.ac2);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "adl", {
        get: function () {
            return this.acf;
        },
        set: function (a) {
            var b = this.adl;
            if (a != b) {
                this.acf = a;
                this.wn("YAxisTitleRightMargin", b, this.adl);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "acz", {
        get: function () {
            return this.abt;
        },
        set: function (a) {
            var b = this.acz;
            if (a != b) {
                this.abt = a;
                this.wn("XAxisTitleBottomMargin", b, this.acz);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "adi", {
        get: function () {
            return this.acc;
        },
        set: function (a) {
            var b = this.adi;
            if (a != b) {
                this.acc = a;
                this.wn("YAxisTitleBottomMargin", b, this.adi);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ahq", {
        get: function () {
            return this.aha;
        },
        set: function (a) {
            var b = this.ahq;
            if (a != b) {
                this.aha = a;
                this.wn("XAxisTitleTextColor", b, this.ahq);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ahx", {
        get: function () {
            return this.ahh;
        },
        set: function (a) {
            var b = this.ahx;
            if (a != b) {
                this.ahh = a;
                this.wn("YAxisTitleTextColor", b, this.ahx);
            }
        },
        enumerable: false,
        configurable: true
    });
    XYChart.prototype.ws = function (a, b, c) {
        var _this = this;
        _super.prototype.ws.call(this, a, b, c);
        switch (a) {
            case "XAxisLabelTextStyle":
                this.ago(function (d) { return d.textStyle = _this.aeg; });
                break;
            case "YAxisLabelTextStyle":
                this.agt(function (d) { return d.textStyle = _this.afn; });
                break;
            case "XAxisTitleTextStyle":
                this.agq(function (d) { return d.textStyle = _this.ae6; });
                break;
            case "YAxisTitleTextStyle":
                this.agv(function (d) { return d.textStyle = _this.agd; });
                break;
        }
    };
    Object.defineProperty(XYChart.prototype, "aeg", {
        get: function () {
            return this.ads;
        },
        set: function (a) {
            var b = this.aeg;
            if (a != b) {
                this.ads = a;
                this.wn("XAxisLabelTextStyle", b, this.aeg);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "afn", {
        get: function () {
            return this.adw;
        },
        set: function (a) {
            var b = this.afn;
            if (a != b) {
                this.adw = a;
                this.wn("YAxisLabelTextStyle", b, this.afn);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ae6", {
        get: function () {
            return this.adu;
        },
        set: function (a) {
            var b = this.ae6;
            if (a != b) {
                this.adu = a;
                this.wn("XAxisTitleTextStyle", b, this.ae6);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "agd", {
        get: function () {
            return this.ady;
        },
        set: function (a) {
            var b = this.agd;
            if (a != b) {
                this.ady = a;
                this.wn("YAxisTitleTextStyle", b, this.agd);
            }
        },
        enumerable: false,
        configurable: true
    });
    XYChart.prototype.agj = function (a) {
        var _this = this;
        this.agg(a, function (b) { return b.leftMargin = _this.aco; });
        this.agg(a, function (b) { return b.topMargin = _this.acq; });
        this.agg(a, function (b) { return b.rightMargin = _this.acp; });
        this.agg(a, function (b) { return b.bottomMargin = _this.acn; });
        this.agg(a, function (b) { return b.textColor = _this.ahi; });
        this.agh(a, function (b) { return b.textColor = _this.ahq; });
        this.agh(a, function (b) { return b.leftMargin = _this.ac0; });
        this.agh(a, function (b) { return b.topMargin = _this.ac3; });
        this.agh(a, function (b) { return b.rightMargin = _this.ac2; });
        this.agh(a, function (b) { return b.bottomMargin = _this.acz; });
        this.agg(a, function (b) { return b.textStyle = _this.aeg; });
        this.agh(a, function (b) { return b.textStyle = _this.ae6; });
    };
    XYChart.prototype.agl = function (a) {
        var _this = this;
        this.agg(a, function (b) { return b.leftMargin = _this.ac7; });
        this.agg(a, function (b) { return b.topMargin = _this.ac9; });
        this.agg(a, function (b) { return b.rightMargin = _this.ac8; });
        this.agg(a, function (b) { return b.bottomMargin = _this.ac6; });
        this.agg(a, function (b) { return b.textColor = _this.ahj; });
        this.agh(a, function (b) { return b.textColor = _this.ahx; });
        this.agh(a, function (b) { return b.leftMargin = _this.adj; });
        this.agh(a, function (b) { return b.topMargin = _this.adm; });
        this.agh(a, function (b) { return b.rightMargin = _this.adl; });
        this.agh(a, function (b) { return b.bottomMargin = _this.adi; });
        this.agg(a, function (b) { return b.textStyle = _this.afn; });
        this.agh(a, function (b) { return b.textStyle = _this.agd; });
    };
    XYChart.prototype.xk = function (a) {
        var b = this.bf(a);
        var c = this.dd(a, b);
        if (c == null) {
            return;
        }
        c.itemsSource = this.ib(a);
        if (a.highlightedData != null) {
            c.highlightedItemsSource = this.ic(a);
        }
        c.name = this.q9(a);
        c.title = this.ra(a, b);
        this.dataChart.series.add(c);
    };
    XYChart.prototype.agm = function (a) {
        this.agn(a, null);
    };
    XYChart.prototype.agn = function (a, b) {
        a(this.aaz());
    };
    XYChart.prototype.ags = function (a, b) {
        a(this.aa0());
    };
    XYChart.prototype.agr = function (a) {
        this.ags(a, true);
    };
    XYChart.prototype.vf = function (a, b) {
        this.agm(a);
        this.ags(a, b);
    };
    XYChart.prototype.agq = function (a) {
        this.agh(this.aaz(), a);
    };
    XYChart.prototype.agv = function (a) {
        this.agh(this.aa0(), a);
    };
    XYChart.prototype.agt = function (a) {
        this.agg(this.aa0(), a);
    };
    XYChart.prototype.ago = function (a) {
        this.agg(this.aaz(), a);
    };
    XYChart.prototype.ach = function (a) {
        var b = this.aaz();
        return b.ft(a, new ScalerParams(1, this.z2, this.z1, b.df));
    };
    XYChart.prototype.acj = function (a) {
        var b = this.aaz();
        return b.fw(a, new ScalerParams(1, this.z2, this.z1, b.df));
    };
    XYChart.prototype.aci = function (a) {
        var b = this.aa0();
        return b.ft(a, new ScalerParams(1, this.z2, this.z1, b.df));
    };
    XYChart.prototype.ack = function (a) {
        var b = this.aa0();
        return b.fw(a, new ScalerParams(1, this.z2, this.z1, b.df));
    };
    XYChart.prototype.xh = function (a) {
        _super.prototype.xh.call(this, a);
        if (a == null) {
            return;
        }
        if (a.axes != null) {
            var b = this.aaz();
            var c = this.aa0();
            if (a.axes.contains(b)) {
                a.axes.remove(b);
            }
            if (a.axes.contains(c)) {
                a.axes.remove(c);
            }
        }
    };
    XYChart.ad1 = function (a, b) {
        var e_1, _a;
        try {
            for (var _b = __values(fromEnum(b)), _c = _b.next(); !_c.done; _c = _b.next()) {
                var c = _c.value;
                var d = c.findMatchingHint(16);
                if (d != null) {
                    var e = d.path;
                    return e;
                }
            }
        }
        catch (e_1_1) {
            e_1 = { error: e_1_1 };
        }
        finally {
            try {
                if (_c && !_c.done && (_a = _b.return))
                    _a.call(_b);
            }
            finally {
                if (e_1)
                    throw e_1.error;
            }
        }
        return null;
    };
    XYChart.prototype.vr = function (a, b) {
        _super.prototype.vr.call(this, a, b);
        if (a == this.dataChart) {
            this.dataChart.axes.add(this.aaz());
            this.dataChart.axes.add(this.aa0());
        }
    };
    XYChart.prototype.agi = function (a) {
        var _this = this;
        if (a != null && this.mb != null && a.gx == null) {
            a.provideRenderer(this.mb);
        }
        a.ni = this.ahl;
        a.f1 = this.acr;
        a.nj = this.ahm;
        a.f4 = this.acu;
        a.nm = this.aho;
        a.gs = this.acv;
        a.nl = this.ahn;
        a.gt = this.acw;
        a.nn = this.ahp;
        a.gu = this.acx;
        a.d5 = true;
        a.dv = this.shouldAvoidAxisAnnotationCollisions;
        a.dx = this.shouldAvoidAxisAnnotationCollisions;
        var b = a == this.aaz();
        if (b) {
            a.jb = this.aex;
        }
        a.hg = this.adp;
        a.ik = this.ad7;
        a.ah = this.aax;
        this.agg(a, function (c) { return c.angle = _this.acm; });
        this.agg(a, function (c) {
            if (c.extent != _this.acl) {
                c.extent = _this.acl;
            }
        });
        this.agg(a, function (c) {
            if (c.maximumExtent != _this.acs) {
                c.maximumExtent = _this.acs;
            }
        });
        this.agg(a, function (c) {
            if (c.maximumExtentPercentage != _this.act) {
                c.maximumExtentPercentage = _this.act;
            }
        });
        this.agg(a, function (c) { return c.horizontalAlignment = _this.agz; });
        this.agg(a, function (c) { return c.verticalAlignment = _this.ah1; });
        this.agg(a, function (c) { return c.visibility = _this.ah6; });
        this.agg(a, function (c) { return c.location = _this.aa5(_this.aa8); });
        this.agh(a, function (c) { return c.horizontalAlignment = _this.ag0; });
        this.agh(a, function (c) { return c.angle = _this.acy; });
        this.agj(a);
    };
    XYChart.prototype.agk = function (a) {
        var _this = this;
        if (a == null) {
            return;
        }
        if (this.mb != null && a.gx == null) {
            a.provideRenderer(this.mb);
        }
        a.dv = this.shouldAvoidAxisAnnotationCollisions;
        a.dx = this.shouldAvoidAxisAnnotationCollisions;
        this.agg(a, function (b) { return b.angle = _this.ac5; });
        this.agg(a, function (b) {
            if (b.extent != _this.ac4) {
                b.extent = _this.ac4;
            }
        });
        this.agg(a, function (b) {
            if (b.maximumExtent != _this.adb) {
                b.maximumExtent = _this.adb;
            }
        });
        this.agg(a, function (b) {
            if (b.maximumExtentPercentage != _this.adc) {
                b.maximumExtentPercentage = _this.adc;
            }
        });
        this.agg(a, function (b) { return b.horizontalAlignment = _this.ag1; });
        this.agg(a, function (b) { return b.verticalAlignment = _this.ah2; });
        this.agg(a, function (b) { return b.visibility = _this.ah7; });
        this.agg(a, function (b) { return b.location = _this.aa6(_this.aba); });
        this.agh(a, function (b) { return b.verticalAlignment = _this.ah3; });
        this.agh(a, function (b) { return b.angle = _this.adh; });
        a.ni = this.ahs;
        a.f1 = this.ada;
        a.nj = this.aht;
        a.f4 = this.add;
        a.nm = this.ahv;
        a.gs = this.ade;
        a.nl = this.ahu;
        a.gt = this.adf;
        a.nn = this.ahw;
        a.gu = this.adg;
        var b = a == this.aa0();
        if (b) {
            a.jb = this.af4;
        }
        a.ik = this.afe;
        a.ah = this.aay;
        this.agl(a);
    };
    XYChart.prototype.vo = function () {
        _super.prototype.vo.call(this);
        this.agi(this.aaz());
        this.agk(this.aa0());
    };
    XYChart.prototype.agg = function (a, b) {
        if (a == null) {
            return;
        }
        if (a.a3 == null) {
            a.a3 = new AxisLabelSettings();
            a.a3.angle = a.ff();
            a.a3.bottomMargin = a.fg();
            a.a3.leftMargin = a.fh();
            a.a3.rightMargin = a.fi();
            a.a3.topMargin = a.fj();
            a.a3.horizontalAlignment = a.m7();
            a.a3.location = a.a5();
            a.a3.verticalAlignment = a.n9();
        }
        b(a.a3);
    };
    XYChart.prototype.agh = function (a, b) {
        if (a == null) {
            return;
        }
        if (a.bx == null) {
            a.bx = new TitleSettings();
            a.bx.bottomMargin = a.fl();
            a.bx.leftMargin = a.fm();
            a.bx.rightMargin = a.fn();
            a.bx.topMargin = a.fo();
            a.bx.location = a.a6();
            a.bx.angle = a.fk();
            a.bx.horizontalAlignment = a.m8();
            a.bx.verticalAlignment = a.oa();
        }
        b(a.bx);
    };
    XYChart.prototype.wn = function (a, b, c) {
        var _this = this;
        _super.prototype.wn.call(this, a, b, c);
        switch (a) {
            case "XAxisLabelAngle":
                this.ago(function (d) { return d.angle = _this.acm; });
                break;
            case "YAxisLabelAngle":
                this.agt(function (d) { return d.angle = _this.ac5; });
                break;
            case "XAxisLabelHorizontalAlignment":
                this.ago(function (d) { return d.horizontalAlignment = _this.agz; });
                break;
            case "YAxisLabelHorizontalAlignment":
                this.agt(function (d) { return d.horizontalAlignment = _this.ag1; });
                break;
            case "XAxisLabelVerticalAlignment":
                this.ago(function (d) { return d.verticalAlignment = _this.ah1; });
                break;
            case "YAxisLabelVerticalAlignment":
                this.agt(function (d) { return d.verticalAlignment = _this.ah2; });
                break;
            case "XAxisLabelVisibility":
                this.ago(function (d) { return d.visibility = _this.ah6; });
                break;
            case "YAxisLabelVisibility":
                this.agt(function (d) { return d.visibility = _this.ah7; });
                break;
            case "XAxisLabel":
                this.agm(function (d) { return d.hg = _this.adp; });
                break;
            case "YAxisLabel":
                this.agr(function (d) { return d.hg = _this.adq; });
                break;
            case "XAxisLabelFormat":
                this.agm(function (d) { return d.ik = _this.ad7; });
                break;
            case "XAxisLabelFormatSpecifiers":
                this.agm(function (d) { return d.ah = _this.aax; });
                break;
            case "YAxisLabelFormat":
                this.agr(function (d) { return d.ik = _this.afe; });
                break;
            case "YAxisLabelFormatSpecifiers":
                this.agr(function (d) { return d.ah = _this.aay; });
                break;
            case "XAxisTitleAngle":
                this.agq(function (d) { return d.angle = _this.acy; });
                break;
            case "YAxisTitleAngle":
                this.agv(function (d) { return d.angle = _this.adh; });
                break;
            case "XAxisTitleAlignment":
                this.agq(function (d) { return d.horizontalAlignment = _this.ag0; });
                break;
            case "YAxisTitleAlignment":
                this.agv(function (d) { return d.verticalAlignment = _this.ah3; });
                break;
            case "XAxisTitle":
                this.agm(function (d) { return d.jb = _this.aex; });
                break;
            case "YAxisTitle":
                this.ags(function (d) { return d.jb = _this.af4; }, false);
                break;
            case "XAxisMajorStroke":
                this.agn(function (d) { return d.ni = _this.ahl; }, a);
                break;
            case "YAxisMajorStroke":
                this.agr(function (d) { return d.ni = _this.ahs; });
                break;
            case "XAxisMajorStrokeThickness":
                this.agn(function (d) { return d.f1 = _this.acr; }, a);
                break;
            case "YAxisMajorStrokeThickness":
                this.agr(function (d) { return d.f1 = _this.ada; });
                break;
            case "XAxisMinorStroke":
                this.agm(function (d) { return d.nj = _this.ahm; });
                break;
            case "YAxisMinorStroke":
                this.agr(function (d) { return d.nj = _this.aht; });
                break;
            case "XAxisMinorStrokeThickness":
                this.agm(function (d) { return d.f4 = _this.acu; });
                break;
            case "YAxisMinorStrokeThickness":
                this.agr(function (d) { return d.f4 = _this.add; });
                break;
            case "XAxisTickLength":
                this.agm(function (d) { return d.gt = _this.acw; });
                break;
            case "YAxisTickLength":
                this.agr(function (d) { return d.gt = _this.adf; });
                break;
            case "XAxisTickStroke":
                this.agm(function (d) { return d.nn = _this.ahp; });
                break;
            case "YAxisTickStroke":
                this.agr(function (d) { return d.nn = _this.ahw; });
                break;
            case "XAxisTickStrokeThickness":
                this.agm(function (d) { return d.gu = _this.acx; });
                break;
            case "YAxisTickStrokeThickness":
                this.agr(function (d) { return d.gu = _this.adg; });
                break;
            case "XAxisStroke":
                this.agm(function (d) { return d.nm = _this.aho; });
                break;
            case "YAxisStroke":
                this.agr(function (d) { return d.nm = _this.ahv; });
                break;
            case "XAxisStrokeThickness":
                this.agm(function (d) { return d.gs = _this.acv; });
                break;
            case "YAxisStrokeThickness":
                this.agr(function (d) { return d.gs = _this.ade; });
                break;
            case "XAxisExtent":
                this.ago(function (d) { return d.extent = _this.acl; });
                break;
            case "YAxisExtent":
                this.agt(function (d) { return d.extent = _this.ac4; });
                break;
            case "XAxisMaximumExtent":
                this.ago(function (d) { return d.maximumExtent = _this.acs; });
                break;
            case "YAxisMaximumExtent":
                this.agt(function (d) { return d.maximumExtent = _this.adb; });
                break;
            case "XAxisMaximumExtentPercentage":
                this.ago(function (d) { return d.maximumExtentPercentage = _this.act; });
                break;
            case "YAxisMaximumExtentPercentage":
                this.agt(function (d) { return d.maximumExtentPercentage = _this.adc; });
                break;
            case "XAxisStrip":
                this.agm(function (d) { return d.nl = _this.ahn; });
                break;
            case "YAxisStrip":
                this.agr(function (d) { return d.nl = _this.ahu; });
                break;
            case "XAxisInverted":
                this.agm(function (d) { return d.df = _this.abd; });
                break;
            case "YAxisInverted":
                this.agr(function (d) { return d.df = _this.abe; });
                break;
            case "YAxisLabelLocation":
                this.agu();
                break;
            case "XAxisLabelLocation":
                this.agp();
                break;
        }
    };
    XYChart.prototype.agu = function () {
        var a = this.aa6(this.aba);
        if (a == 2 || a == 7) {
            this.ag1 = 2;
        }
        else {
            this.ag1 = 0;
        }
        this.agt(function (b) { return b.location = a; });
    };
    XYChart.prototype.agp = function () {
        var a = this.aa5(this.aa8);
        if (a == 1 || a == 5) {
            this.ah1 = 0;
        }
        else {
            this.ah1 = 2;
        }
        this.ago(function (b) { return b.location = a; });
    };
    XYChart.prototype.aa6 = function (a) {
        if (a == 0) {
            return 2;
        }
        else if (a == 1) {
            return 3;
        }
        else if (a == 3) {
            return 7;
        }
        else if (a == 2) {
            return 6;
        }
        else {
            if (this.cc == 1) {
                return 3;
            }
            else {
                return 2;
            }
        }
    };
    XYChart.prototype.aa5 = function (a) {
        if (a == 1) {
            return 1;
        }
        else if (a == 0) {
            return 0;
        }
        else if (a == 3) {
            return 5;
        }
        else if (a == 2) {
            return 4;
        }
        else {
            return 1;
        }
    };
    Object.defineProperty(XYChart.prototype, "adp", {
        get: function () {
            return this.adn;
        },
        set: function (a) {
            var b = this.adp;
            if (a != b) {
                this.adn = a;
                this.wn("XAxisLabel", b, this.adp);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "adq", {
        get: function () {
            return this.ado;
        },
        set: function (a) {
            var b = this.adq;
            if (a != b) {
                this.ado = a;
                this.wn("YAxisLabel", b, this.adq);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ahl", {
        get: function () {
            return this.ag5;
        },
        set: function (a) {
            var b = this.ahl;
            if (a != b) {
                this.ag5 = a;
                this.wn("XAxisMajorStroke", b, this.ahl);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ahs", {
        get: function () {
            return this.ahc;
        },
        set: function (a) {
            var b = this.ahs;
            if (a != b) {
                this.ahc = a;
                this.wn("YAxisMajorStroke", b, this.ahs);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "acr", {
        get: function () {
            return this.abl;
        },
        set: function (a) {
            var b = this.acr;
            if (a != b) {
                this.abl = a;
                this.wn("XAxisMajorStrokeThickness", b, this.acr);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ada", {
        get: function () {
            return this.ab4;
        },
        set: function (a) {
            var b = this.ada;
            if (a != b) {
                this.ab4 = a;
                this.wn("YAxisMajorStrokeThickness", b, this.ada);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "acu", {
        get: function () {
            return this.abo;
        },
        set: function (a) {
            var b = this.acu;
            if (a != b) {
                this.abo = a;
                this.wn("XAxisMinorStrokeThickness", b, this.acu);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "add", {
        get: function () {
            return this.ab7;
        },
        set: function (a) {
            var b = this.add;
            if (a != b) {
                this.ab7 = a;
                this.wn("YAxisMinorStrokeThickness", b, this.add);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ahn", {
        get: function () {
            return this.ag7;
        },
        set: function (a) {
            var b = this.ahn;
            if (a != b) {
                this.ag7 = a;
                this.wn("XAxisStrip", b, this.ahn);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ahu", {
        get: function () {
            return this.ahe;
        },
        set: function (a) {
            var b = this.ahu;
            if (a != b) {
                this.ahe = a;
                this.wn("YAxisStrip", b, this.ahu);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "aho", {
        get: function () {
            return this.ag8;
        },
        set: function (a) {
            var b = this.aho;
            if (a != b) {
                this.ag8 = a;
                this.wn("XAxisStroke", b, this.aho);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ahv", {
        get: function () {
            return this.ahf;
        },
        set: function (a) {
            var b = this.ahv;
            if (a != b) {
                this.ahf = a;
                this.wn("YAxisStroke", b, this.ahv);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "acv", {
        get: function () {
            return this.abp;
        },
        set: function (a) {
            var b = this.acv;
            if (a != b) {
                this.abp = a;
                this.wn("XAxisStrokeThickness", b, this.acv);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ade", {
        get: function () {
            return this.ab8;
        },
        set: function (a) {
            var b = this.ade;
            if (a != b) {
                this.ab8 = a;
                this.wn("YAxisStrokeThickness", b, this.ade);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "acw", {
        get: function () {
            return this.abq;
        },
        set: function (a) {
            var b = this.acw;
            if (a != b) {
                this.abq = a;
                this.wn("XAxisTickLength", b, this.acw);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "adf", {
        get: function () {
            return this.ab9;
        },
        set: function (a) {
            var b = this.adf;
            if (a != b) {
                this.ab9 = a;
                this.wn("YAxisTickLength", b, this.adf);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ahp", {
        get: function () {
            return this.ag9;
        },
        set: function (a) {
            var b = this.ahp;
            if (a != b) {
                this.ag9 = a;
                this.wn("XAxisTickStroke", b, this.ahp);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ahw", {
        get: function () {
            return this.ahg;
        },
        set: function (a) {
            var b = this.ahw;
            if (a != b) {
                this.ahg = a;
                this.wn("YAxisTickStroke", b, this.ahw);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "acx", {
        get: function () {
            return this.abr;
        },
        set: function (a) {
            var b = this.acx;
            if (a != b) {
                this.abr = a;
                this.wn("XAxisTickStrokeThickness", b, this.acx);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "adg", {
        get: function () {
            return this.aca;
        },
        set: function (a) {
            var b = this.adg;
            if (a != b) {
                this.aca = a;
                this.wn("YAxisTickStrokeThickness", b, this.adg);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "aex", {
        get: function () {
            return this.adt;
        },
        set: function (a) {
            var b = this.aex;
            if (a != b) {
                this.adt = a;
                this.wn("XAxisTitle", b, this.aex);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "af4", {
        get: function () {
            return this.adx;
        },
        set: function (a) {
            var b = this.af4;
            if (a != b) {
                this.adx = a;
                this.wn("YAxisTitle", b, this.af4);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ahm", {
        get: function () {
            return this.ag6;
        },
        set: function (a) {
            var b = this.ahm;
            if (a != b) {
                this.ag6 = a;
                this.wn("XAxisMinorStroke", b, this.ahm);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "aht", {
        get: function () {
            return this.ahd;
        },
        set: function (a) {
            var b = this.aht;
            if (a != b) {
                this.ahd = a;
                this.wn("YAxisMinorStroke", b, this.aht);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "acm", {
        get: function () {
            return this.abg;
        },
        set: function (a) {
            var b = this.acm;
            if (a != b) {
                this.abg = a;
                this.wn("XAxisLabelAngle", b, this.acm);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ac5", {
        get: function () {
            return this.abz;
        },
        set: function (a) {
            var b = this.ac5;
            if (a != b) {
                this.abz = a;
                this.wn("YAxisLabelAngle", b, this.ac5);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "acl", {
        get: function () {
            return this.abf;
        },
        set: function (a) {
            var b = this.acl;
            if (a != b) {
                this.abf = a;
                this.wn("XAxisExtent", b, this.acl);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ac4", {
        get: function () {
            return this.aby;
        },
        set: function (a) {
            var b = this.ac4;
            if (a != b) {
                this.aby = a;
                this.wn("YAxisExtent", b, this.ac4);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "acs", {
        get: function () {
            return this.abm;
        },
        set: function (a) {
            var b = this.acs;
            if (a != b) {
                this.abm = a;
                this.wn("XAxisMaximumExtent", b, this.acs);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "adb", {
        get: function () {
            return this.ab5;
        },
        set: function (a) {
            var b = this.adb;
            if (a != b) {
                this.ab5 = a;
                this.wn("YAxisMaximumExtent", b, this.adb);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "act", {
        get: function () {
            return this.abn;
        },
        set: function (a) {
            var b = this.act;
            if (a != b) {
                this.abn = a;
                this.wn("XAxisMaximumExtentPercentage", b, this.act);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "adc", {
        get: function () {
            return this.ab6;
        },
        set: function (a) {
            var b = this.adc;
            if (a != b) {
                this.ab6 = a;
                this.wn("YAxisMaximumExtentPercentage", b, this.adc);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "acy", {
        get: function () {
            return this.abs;
        },
        set: function (a) {
            var b = this.acy;
            if (a != b) {
                this.abs = a;
                this.wn("XAxisTitleAngle", b, this.acy);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "adh", {
        get: function () {
            return this.acb;
        },
        set: function (a) {
            var b = this.adh;
            if (a != b) {
                this.acb = a;
                this.wn("YAxisTitleAngle", b, this.adh);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "abd", {
        get: function () {
            return this.abb;
        },
        set: function (a) {
            var b = this.abd;
            if (a != b) {
                this.abb = a;
                this.wn("XAxisInverted", b, this.abd);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "abe", {
        get: function () {
            return this.abc;
        },
        set: function (a) {
            var b = this.abe;
            if (a != b) {
                this.abc = a;
                this.wn("YAxisInverted", b, this.abe);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ag0", {
        get: function () {
            return this.agx;
        },
        set: function (a) {
            var b = this.ag0;
            if (a != b) {
                this.agx = a;
                this.wn("XAxisTitleAlignment", enumGetBox(HorizontalAlignment_$type, b), enumGetBox(HorizontalAlignment_$type, this.ag0));
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ah3", {
        get: function () {
            return this.ah0;
        },
        set: function (a) {
            var b = this.ah3;
            if (a != b) {
                this.ah0 = a;
                this.wn("YAxisTitleAlignment", enumGetBox(VerticalAlignment_$type, b), enumGetBox(VerticalAlignment_$type, this.ah3));
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "agz", {
        get: function () {
            return this.agw;
        },
        set: function (a) {
            var b = this.agz;
            if (a != b) {
                this.agw = a;
                this.wn("XAxisLabelHorizontalAlignment", enumGetBox(HorizontalAlignment_$type, b), enumGetBox(HorizontalAlignment_$type, this.agz));
            }
        },
        enumerable: false,
        configurable: true
    });
    XYChart.prototype.get_ag1 = function () {
        return this.agy;
    };
    XYChart.prototype.set_ag1 = function (a) {
        var b = this.ag1;
        if (a != b) {
            this.agy = a;
            this.wn("YAxisLabelHorizontalAlignment", enumGetBox(HorizontalAlignment_$type, b), enumGetBox(HorizontalAlignment_$type, this.ag1));
        }
    };
    Object.defineProperty(XYChart.prototype, "ag1", {
        get: function () {
            return this.get_ag1();
        },
        set: function (a) {
            this.set_ag1(a);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ah1", {
        get: function () {
            return this.ahy;
        },
        set: function (a) {
            var b = this.ah1;
            if (a != b) {
                this.ahy = a;
                this.wn("XAxisLabelVerticalAlignment", enumGetBox(VerticalAlignment_$type, b), enumGetBox(VerticalAlignment_$type, this.ah1));
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ah2", {
        get: function () {
            return this.ahz;
        },
        set: function (a) {
            var b = this.ah2;
            if (a != b) {
                this.ahz = a;
                this.wn("YAxisLabelVerticalAlignment", enumGetBox(VerticalAlignment_$type, b), enumGetBox(VerticalAlignment_$type, this.ah2));
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ah6", {
        get: function () {
            return this.ah4;
        },
        set: function (a) {
            var b = this.ah6;
            if (a != b) {
                this.ah4 = a;
                this.wn("XAxisLabelVisibility", enumGetBox(Visibility_$type, b), enumGetBox(Visibility_$type, this.ah6));
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ah7", {
        get: function () {
            return this.ah5;
        },
        set: function (a) {
            var b = this.ah7;
            if (a != b) {
                this.ah5 = a;
                this.wn("YAxisLabelVisibility", enumGetBox(Visibility_$type, b), enumGetBox(Visibility_$type, this.ah7));
            }
        },
        enumerable: false,
        configurable: true
    });
    XYChart.prototype.get_aba = function () {
        return this.aa9;
    };
    XYChart.prototype.set_aba = function (a) {
        var b = this.aba;
        if (a != b) {
            this.aa9 = a;
            this.wn("YAxisLabelLocation", enumGetBox(YAxisLabelLocation_$type, b), enumGetBox(YAxisLabelLocation_$type, this.aba));
        }
    };
    Object.defineProperty(XYChart.prototype, "aba", {
        get: function () {
            return this.get_aba();
        },
        set: function (a) {
            this.set_aba(a);
        },
        enumerable: false,
        configurable: true
    });
    XYChart.prototype.get_aa8 = function () {
        return this.aa7;
    };
    XYChart.prototype.set_aa8 = function (a) {
        var b = this.aa8;
        if (a != b) {
            this.aa7 = a;
            this.wn("XAxisLabelLocation", enumGetBox(XAxisLabelLocation_$type, b), enumGetBox(XAxisLabelLocation_$type, this.aa8));
        }
    };
    Object.defineProperty(XYChart.prototype, "aa8", {
        get: function () {
            return this.get_aa8();
        },
        set: function (a) {
            this.set_aa8(a);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ad7", {
        get: function () {
            return this.adr;
        },
        set: function (a) {
            var b = this.adr;
            if (a != b) {
                this.adr = a;
                this.wn("XAxisLabelFormat", b, this.adr);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "aax", {
        get: function () {
            return this.aav;
        },
        set: function (a) {
            var b = this.aav;
            if (a != b) {
                this.aav = a;
                this.wn("XAxisLabelFormatSpecifiers", b, this.aav);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "afe", {
        get: function () {
            return this.adv;
        },
        set: function (a) {
            var b = this.adv;
            if (a != b) {
                this.adv = a;
                this.wn("YAxisLabelFormat", b, this.adv);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "aay", {
        get: function () {
            return this.aaw;
        },
        set: function (a) {
            var b = this.aaw;
            if (a != b) {
                this.aaw = a;
                this.wn("YAxisLabelFormatSpecifiers", b, this.aaw);
            }
        },
        enumerable: false,
        configurable: true
    });
    XYChart.$t = markType(XYChart, 'XYChart', DomainChart.$);
    return XYChart;
}(DomainChart));
export { XYChart };
