text: //// [declarationEmit_nameConflicts2.ts]
  module X.Y.base {
      export function f() { }
      export class C { }
      export module M {
          export var v;
      }
      export enum E { }
  }
  
  module X.Y.base.Z {
      export var f = X.Y.base.f; // Should be base.f
      export var C = X.Y.base.C; // Should be base.C
      export var M = X.Y.base.M; // Should be base.M
      export var E = X.Y.base.E; // Should be base.E
  }
  
  //// [declarationEmit_nameConflicts2.js]
  var X;
  (function (X) {
      var Y;
      (function (Y) {
          var base;
          (function (base) {
              function f() { }
              base.f = f;
              var C = (function () {
                  function C() {
                  }
                  return C;
              })();
              base.C = C;
              var M;
              (function (M) {
              })(M = base.M || (base.M = {}));
              (function (E) {
              })(base.E || (base.E = {}));
              var E = base.E;
          })(base = Y.base || (Y.base = {}));
      })(Y = X.Y || (X.Y = {}));
  })(X || (X = {}));
  var X;
  (function (X) {
      var Y;
      (function (Y) {
          var base;
          (function (base) {
              var Z;
              (function (Z) {
                  Z.f = X.Y.base.f; // Should be base.f
                  Z.C = X.Y.base.C; // Should be base.C
                  Z.M = X.Y.base.M; // Should be base.M
                  Z.E = X.Y.base.E; // Should be base.E
              })(Z = base.Z || (base.Z = {}));
          })(base = Y.base || (Y.base = {}));
      })(Y = X.Y || (X.Y = {}));
  })(X || (X = {}));
  
  
  //// [declarationEmit_nameConflicts2.d.ts]
  declare module X.Y.base {
      function f(): void;
      class C {
      }
      module M {
          var v: any;
      }
      enum E {
      }
  }
  declare module X.Y.base.Z {
      var f: typeof base.f;
      var C: typeof base.C;
      var M: typeof base.M;
      var E: typeof base.E;
  }
  