System.register([], function (_export, _context) {
  "use strict";

  return {
    setters: [],
    execute: function () {
      const __SystemJSRewritingHack = {};
      _recorder_._src_client_reactive_babel_plugin_active_expression_rewriting_constants_js = _recorder_._src_client_reactive_babel_plugin_active_expression_rewriting_constants_js || {};
      const AEXPR_IDENTIFIER_NAME = "aexpr";

      _export("AEXPR_IDENTIFIER_NAME", AEXPR_IDENTIFIER_NAME);

      Object.defineProperty(_recorder_._src_client_reactive_babel_plugin_active_expression_rewriting_constants_js, "AEXPR_IDENTIFIER_NAME", {
        get() {
          return AEXPR_IDENTIFIER_NAME;
        },

        set(thisIsVererySecretVariableName) {
          _export("AEXPR_IDENTIFIER_NAME", AEXPR_IDENTIFIER_NAME = thisIsVererySecretVariableName);

          return true;
        },

        enumerable: true,
        configurable: true
      });
      const GET_MEMBER = "getMember";

      _export("GET_MEMBER", GET_MEMBER);

      Object.defineProperty(_recorder_._src_client_reactive_babel_plugin_active_expression_rewriting_constants_js, "GET_MEMBER", {
        get() {
          return GET_MEMBER;
        },

        set(thisIsVererySecretVariableName) {
          _export("GET_MEMBER", GET_MEMBER = thisIsVererySecretVariableName);

          return true;
        },

        enumerable: true,
        configurable: true
      });
      const GET_AND_CALL_MEMBER = "getAndCallMember";

      _export("GET_AND_CALL_MEMBER", GET_AND_CALL_MEMBER);

      Object.defineProperty(_recorder_._src_client_reactive_babel_plugin_active_expression_rewriting_constants_js, "GET_AND_CALL_MEMBER", {
        get() {
          return GET_AND_CALL_MEMBER;
        },

        set(thisIsVererySecretVariableName) {
          _export("GET_AND_CALL_MEMBER", GET_AND_CALL_MEMBER = thisIsVererySecretVariableName);

          return true;
        },

        enumerable: true,
        configurable: true
      });
      const IGNORE_STRING = "aexpr ignore";

      _export("IGNORE_STRING", IGNORE_STRING);

      Object.defineProperty(_recorder_._src_client_reactive_babel_plugin_active_expression_rewriting_constants_js, "IGNORE_STRING", {
        get() {
          return IGNORE_STRING;
        },

        set(thisIsVererySecretVariableName) {
          _export("IGNORE_STRING", IGNORE_STRING = thisIsVererySecretVariableName);

          return true;
        },

        enumerable: true,
        configurable: true
      });
      const IGNORE_INDICATOR = Symbol("aexpr ignore");

      _export("IGNORE_INDICATOR", IGNORE_INDICATOR);

      Object.defineProperty(_recorder_._src_client_reactive_babel_plugin_active_expression_rewriting_constants_js, "IGNORE_INDICATOR", {
        get() {
          return IGNORE_INDICATOR;
        },

        set(thisIsVererySecretVariableName) {
          _export("IGNORE_INDICATOR", IGNORE_INDICATOR = thisIsVererySecretVariableName);

          return true;
        },

        enumerable: true,
        configurable: true
      });
      const SET_MEMBER_BY_OPERATORS = {
        '=': 'setMember',
        '+=': 'setMemberAddition',
        '-=': 'setMemberSubtraction',
        '*=': 'setMemberMultiplication',
        '/=': 'setMemberDivision',
        '%=': 'setMemberRemainder',
        //'**=': 'setMemberExponentiation',
        '<<=': 'setMemberLeftShift',
        '>>=': 'setMemberRightShift',
        '>>>=': 'setMemberUnsignedRightShift',
        '&=': 'setMemberBitwiseAND',
        '^=': 'setMemberBitwiseXOR',
        '|=': 'setMemberBitwiseOR'
      };

      _export("SET_MEMBER_BY_OPERATORS", SET_MEMBER_BY_OPERATORS);

      Object.defineProperty(_recorder_._src_client_reactive_babel_plugin_active_expression_rewriting_constants_js, "SET_MEMBER_BY_OPERATORS", {
        get() {
          return SET_MEMBER_BY_OPERATORS;
        },

        set(thisIsVererySecretVariableName) {
          _export("SET_MEMBER_BY_OPERATORS", SET_MEMBER_BY_OPERATORS = thisIsVererySecretVariableName);

          return true;
        },

        enumerable: true,
        configurable: true
      });
      const SET_LOCAL = "setLocal";

      _export("SET_LOCAL", SET_LOCAL);

      Object.defineProperty(_recorder_._src_client_reactive_babel_plugin_active_expression_rewriting_constants_js, "SET_LOCAL", {
        get() {
          return SET_LOCAL;
        },

        set(thisIsVererySecretVariableName) {
          _export("SET_LOCAL", SET_LOCAL = thisIsVererySecretVariableName);

          return true;
        },

        enumerable: true,
        configurable: true
      });
      const GET_LOCAL = "getLocal";

      _export("GET_LOCAL", GET_LOCAL);

      Object.defineProperty(_recorder_._src_client_reactive_babel_plugin_active_expression_rewriting_constants_js, "GET_LOCAL", {
        get() {
          return GET_LOCAL;
        },

        set(thisIsVererySecretVariableName) {
          _export("GET_LOCAL", GET_LOCAL = thisIsVererySecretVariableName);

          return true;
        },

        enumerable: true,
        configurable: true
      });
      const SET_GLOBAL = "setGlobal";

      _export("SET_GLOBAL", SET_GLOBAL);

      Object.defineProperty(_recorder_._src_client_reactive_babel_plugin_active_expression_rewriting_constants_js, "SET_GLOBAL", {
        get() {
          return SET_GLOBAL;
        },

        set(thisIsVererySecretVariableName) {
          _export("SET_GLOBAL", SET_GLOBAL = thisIsVererySecretVariableName);

          return true;
        },

        enumerable: true,
        configurable: true
      });
      const GET_GLOBAL = "getGlobal";

      // TODO: use multiple flag for indication of generated content, marking explicit scopes, etc.

      _export("GET_GLOBAL", GET_GLOBAL);

      Object.defineProperty(_recorder_._src_client_reactive_babel_plugin_active_expression_rewriting_constants_js, "GET_GLOBAL", {
        get() {
          return GET_GLOBAL;
        },

        set(thisIsVererySecretVariableName) {
          _export("GET_GLOBAL", GET_GLOBAL = thisIsVererySecretVariableName);

          return true;
        },

        enumerable: true,
        configurable: true
      });
      const FLAG_GENERATED_SCOPE_OBJECT = Symbol('FLAG: generated scope object');

      _export("FLAG_GENERATED_SCOPE_OBJECT", FLAG_GENERATED_SCOPE_OBJECT);

      Object.defineProperty(_recorder_._src_client_reactive_babel_plugin_active_expression_rewriting_constants_js, "FLAG_GENERATED_SCOPE_OBJECT", {
        get() {
          return FLAG_GENERATED_SCOPE_OBJECT;
        },

        set(thisIsVererySecretVariableName) {
          _export("FLAG_GENERATED_SCOPE_OBJECT", FLAG_GENERATED_SCOPE_OBJECT = thisIsVererySecretVariableName);

          return true;
        },

        enumerable: true,
        configurable: true
      });
      const FLAG_SHOULD_NOT_REWRITE_IDENTIFIER = Symbol('FLAG: should not rewrite identifier');

      _export("FLAG_SHOULD_NOT_REWRITE_IDENTIFIER", FLAG_SHOULD_NOT_REWRITE_IDENTIFIER);

      Object.defineProperty(_recorder_._src_client_reactive_babel_plugin_active_expression_rewriting_constants_js, "FLAG_SHOULD_NOT_REWRITE_IDENTIFIER", {
        get() {
          return FLAG_SHOULD_NOT_REWRITE_IDENTIFIER;
        },

        set(thisIsVererySecretVariableName) {
          _export("FLAG_SHOULD_NOT_REWRITE_IDENTIFIER", FLAG_SHOULD_NOT_REWRITE_IDENTIFIER = thisIsVererySecretVariableName);

          return true;
        },

        enumerable: true,
        configurable: true
      });
      const FLAG_SHOULD_NOT_REWRITE_MEMBER_EXPRESSION = Symbol('FLAG: should not rewrite member expression');

      _export("FLAG_SHOULD_NOT_REWRITE_MEMBER_EXPRESSION", FLAG_SHOULD_NOT_REWRITE_MEMBER_EXPRESSION);

      Object.defineProperty(_recorder_._src_client_reactive_babel_plugin_active_expression_rewriting_constants_js, "FLAG_SHOULD_NOT_REWRITE_MEMBER_EXPRESSION", {
        get() {
          return FLAG_SHOULD_NOT_REWRITE_MEMBER_EXPRESSION;
        },

        set(thisIsVererySecretVariableName) {
          _export("FLAG_SHOULD_NOT_REWRITE_MEMBER_EXPRESSION", FLAG_SHOULD_NOT_REWRITE_MEMBER_EXPRESSION = thisIsVererySecretVariableName);

          return true;
        },

        enumerable: true,
        configurable: true
      });
      const FLAG_SHOULD_NOT_REWRITE_ASSIGNMENT_EXPRESSION = Symbol('FLAG: should not rewrite assignment expression');

      _export("FLAG_SHOULD_NOT_REWRITE_ASSIGNMENT_EXPRESSION", FLAG_SHOULD_NOT_REWRITE_ASSIGNMENT_EXPRESSION);

      Object.defineProperty(_recorder_._src_client_reactive_babel_plugin_active_expression_rewriting_constants_js, "FLAG_SHOULD_NOT_REWRITE_ASSIGNMENT_EXPRESSION", {
        get() {
          return FLAG_SHOULD_NOT_REWRITE_ASSIGNMENT_EXPRESSION;
        },

        set(thisIsVererySecretVariableName) {
          _export("FLAG_SHOULD_NOT_REWRITE_ASSIGNMENT_EXPRESSION", FLAG_SHOULD_NOT_REWRITE_ASSIGNMENT_EXPRESSION = thisIsVererySecretVariableName);

          return true;
        },

        enumerable: true,
        configurable: true
      });
      const GENERATED_IMPORT_IDENTIFIER = Symbol("generated import identifier");

      _export("GENERATED_IMPORT_IDENTIFIER", GENERATED_IMPORT_IDENTIFIER);

      Object.defineProperty(_recorder_._src_client_reactive_babel_plugin_active_expression_rewriting_constants_js, "GENERATED_IMPORT_IDENTIFIER", {
        get() {
          return GENERATED_IMPORT_IDENTIFIER;
        },

        set(thisIsVererySecretVariableName) {
          _export("GENERATED_IMPORT_IDENTIFIER", GENERATED_IMPORT_IDENTIFIER = thisIsVererySecretVariableName);

          return true;
        },

        enumerable: true,
        configurable: true
      });
    }
  };
});