{"remainingRequest":"/data/node_modules/babel-loader/lib/index.js!/data/node_modules/source-map/lib/source-map-generator.js","dependencies":[{"path":"/data/node_modules/source-map/lib/source-map-generator.js","mtime":1553611387364},{"path":"/data/.babelrc","mtime":1553611371556},{"path":"/data/node_modules/cache-loader/dist/cjs.js","mtime":1553611387012},{"path":"/data/node_modules/babel-loader/lib/index.js","mtime":1553611386992}],"contextDependencies":[],"result":["'use strict';\n\n/* -*- Mode: js; js-indent-level: 2; -*- */\n/*\n * Copyright 2011 Mozilla Foundation and contributors\n * Licensed under the New BSD license. See LICENSE or:\n * http://opensource.org/licenses/BSD-3-Clause\n */\n\nvar base64VLQ = require('./base64-vlq');\nvar util = require('./util');\nvar ArraySet = require('./array-set').ArraySet;\nvar MappingList = require('./mapping-list').MappingList;\n\n/**\n * An instance of the SourceMapGenerator represents a source map which is\n * being built incrementally. You may pass an object with the following\n * properties:\n *\n *   - file: The filename of the generated source.\n *   - sourceRoot: A root for all relative URLs in this source map.\n */\nfunction SourceMapGenerator(aArgs) {\n  if (!aArgs) {\n    aArgs = {};\n  }\n  this._file = util.getArg(aArgs, 'file', null);\n  this._sourceRoot = util.getArg(aArgs, 'sourceRoot', null);\n  this._skipValidation = util.getArg(aArgs, 'skipValidation', false);\n  this._sources = new ArraySet();\n  this._names = new ArraySet();\n  this._mappings = new MappingList();\n  this._sourcesContents = null;\n}\n\nSourceMapGenerator.prototype._version = 3;\n\n/**\n * Creates a new SourceMapGenerator based on a SourceMapConsumer\n *\n * @param aSourceMapConsumer The SourceMap.\n */\nSourceMapGenerator.fromSourceMap = function SourceMapGenerator_fromSourceMap(aSourceMapConsumer) {\n  var sourceRoot = aSourceMapConsumer.sourceRoot;\n  var generator = new SourceMapGenerator({\n    file: aSourceMapConsumer.file,\n    sourceRoot: sourceRoot\n  });\n  aSourceMapConsumer.eachMapping(function (mapping) {\n    var newMapping = {\n      generated: {\n        line: mapping.generatedLine,\n        column: mapping.generatedColumn\n      }\n    };\n\n    if (mapping.source != null) {\n      newMapping.source = mapping.source;\n      if (sourceRoot != null) {\n        newMapping.source = util.relative(sourceRoot, newMapping.source);\n      }\n\n      newMapping.original = {\n        line: mapping.originalLine,\n        column: mapping.originalColumn\n      };\n\n      if (mapping.name != null) {\n        newMapping.name = mapping.name;\n      }\n    }\n\n    generator.addMapping(newMapping);\n  });\n  aSourceMapConsumer.sources.forEach(function (sourceFile) {\n    var content = aSourceMapConsumer.sourceContentFor(sourceFile);\n    if (content != null) {\n      generator.setSourceContent(sourceFile, content);\n    }\n  });\n  return generator;\n};\n\n/**\n * Add a single mapping from original source line and column to the generated\n * source's line and column for this source map being created. The mapping\n * object should have the following properties:\n *\n *   - generated: An object with the generated line and column positions.\n *   - original: An object with the original line and column positions.\n *   - source: The original source file (relative to the sourceRoot).\n *   - name: An optional original token name for this mapping.\n */\nSourceMapGenerator.prototype.addMapping = function SourceMapGenerator_addMapping(aArgs) {\n  var generated = util.getArg(aArgs, 'generated');\n  var original = util.getArg(aArgs, 'original', null);\n  var source = util.getArg(aArgs, 'source', null);\n  var name = util.getArg(aArgs, 'name', null);\n\n  if (!this._skipValidation) {\n    this._validateMapping(generated, original, source, name);\n  }\n\n  if (source != null) {\n    source = String(source);\n    if (!this._sources.has(source)) {\n      this._sources.add(source);\n    }\n  }\n\n  if (name != null) {\n    name = String(name);\n    if (!this._names.has(name)) {\n      this._names.add(name);\n    }\n  }\n\n  this._mappings.add({\n    generatedLine: generated.line,\n    generatedColumn: generated.column,\n    originalLine: original != null && original.line,\n    originalColumn: original != null && original.column,\n    source: source,\n    name: name\n  });\n};\n\n/**\n * Set the source content for a source file.\n */\nSourceMapGenerator.prototype.setSourceContent = function SourceMapGenerator_setSourceContent(aSourceFile, aSourceContent) {\n  var source = aSourceFile;\n  if (this._sourceRoot != null) {\n    source = util.relative(this._sourceRoot, source);\n  }\n\n  if (aSourceContent != null) {\n    // Add the source content to the _sourcesContents map.\n    // Create a new _sourcesContents map if the property is null.\n    if (!this._sourcesContents) {\n      this._sourcesContents = Object.create(null);\n    }\n    this._sourcesContents[util.toSetString(source)] = aSourceContent;\n  } else if (this._sourcesContents) {\n    // Remove the source file from the _sourcesContents map.\n    // If the _sourcesContents map is empty, set the property to null.\n    delete this._sourcesContents[util.toSetString(source)];\n    if (Object.keys(this._sourcesContents).length === 0) {\n      this._sourcesContents = null;\n    }\n  }\n};\n\n/**\n * Applies the mappings of a sub-source-map for a specific source file to the\n * source map being generated. Each mapping to the supplied source file is\n * rewritten using the supplied source map. Note: The resolution for the\n * resulting mappings is the minimium of this map and the supplied map.\n *\n * @param aSourceMapConsumer The source map to be applied.\n * @param aSourceFile Optional. The filename of the source file.\n *        If omitted, SourceMapConsumer's file property will be used.\n * @param aSourceMapPath Optional. The dirname of the path to the source map\n *        to be applied. If relative, it is relative to the SourceMapConsumer.\n *        This parameter is needed when the two source maps aren't in the same\n *        directory, and the source map to be applied contains relative source\n *        paths. If so, those relative source paths need to be rewritten\n *        relative to the SourceMapGenerator.\n */\nSourceMapGenerator.prototype.applySourceMap = function SourceMapGenerator_applySourceMap(aSourceMapConsumer, aSourceFile, aSourceMapPath) {\n  var sourceFile = aSourceFile;\n  // If aSourceFile is omitted, we will use the file property of the SourceMap\n  if (aSourceFile == null) {\n    if (aSourceMapConsumer.file == null) {\n      throw new Error('SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, ' + 'or the source map\\'s \"file\" property. Both were omitted.');\n    }\n    sourceFile = aSourceMapConsumer.file;\n  }\n  var sourceRoot = this._sourceRoot;\n  // Make \"sourceFile\" relative if an absolute Url is passed.\n  if (sourceRoot != null) {\n    sourceFile = util.relative(sourceRoot, sourceFile);\n  }\n  // Applying the SourceMap can add and remove items from the sources and\n  // the names array.\n  var newSources = new ArraySet();\n  var newNames = new ArraySet();\n\n  // Find mappings for the \"sourceFile\"\n  this._mappings.unsortedForEach(function (mapping) {\n    if (mapping.source === sourceFile && mapping.originalLine != null) {\n      // Check if it can be mapped by the source map, then update the mapping.\n      var original = aSourceMapConsumer.originalPositionFor({\n        line: mapping.originalLine,\n        column: mapping.originalColumn\n      });\n      if (original.source != null) {\n        // Copy mapping\n        mapping.source = original.source;\n        if (aSourceMapPath != null) {\n          mapping.source = util.join(aSourceMapPath, mapping.source);\n        }\n        if (sourceRoot != null) {\n          mapping.source = util.relative(sourceRoot, mapping.source);\n        }\n        mapping.originalLine = original.line;\n        mapping.originalColumn = original.column;\n        if (original.name != null) {\n          mapping.name = original.name;\n        }\n      }\n    }\n\n    var source = mapping.source;\n    if (source != null && !newSources.has(source)) {\n      newSources.add(source);\n    }\n\n    var name = mapping.name;\n    if (name != null && !newNames.has(name)) {\n      newNames.add(name);\n    }\n  }, this);\n  this._sources = newSources;\n  this._names = newNames;\n\n  // Copy sourcesContents of applied map.\n  aSourceMapConsumer.sources.forEach(function (sourceFile) {\n    var content = aSourceMapConsumer.sourceContentFor(sourceFile);\n    if (content != null) {\n      if (aSourceMapPath != null) {\n        sourceFile = util.join(aSourceMapPath, sourceFile);\n      }\n      if (sourceRoot != null) {\n        sourceFile = util.relative(sourceRoot, sourceFile);\n      }\n      this.setSourceContent(sourceFile, content);\n    }\n  }, this);\n};\n\n/**\n * A mapping can have one of the three levels of data:\n *\n *   1. Just the generated position.\n *   2. The Generated position, original position, and original source.\n *   3. Generated and original position, original source, as well as a name\n *      token.\n *\n * To maintain consistency, we validate that any new mapping being added falls\n * in to one of these categories.\n */\nSourceMapGenerator.prototype._validateMapping = function SourceMapGenerator_validateMapping(aGenerated, aOriginal, aSource, aName) {\n  // When aOriginal is truthy but has empty values for .line and .column,\n  // it is most likely a programmer error. In this case we throw a very\n  // specific error message to try to guide them the right way.\n  // For example: https://github.com/Polymer/polymer-bundler/pull/519\n  if (aOriginal && typeof aOriginal.line !== 'number' && typeof aOriginal.column !== 'number') {\n    throw new Error('original.line and original.column are not numbers -- you probably meant to omit ' + 'the original mapping entirely and only map the generated position. If so, pass ' + 'null for the original mapping instead of an object with empty or null values.');\n  }\n\n  if (aGenerated && 'line' in aGenerated && 'column' in aGenerated && aGenerated.line > 0 && aGenerated.column >= 0 && !aOriginal && !aSource && !aName) {\n    // Case 1.\n    return;\n  } else if (aGenerated && 'line' in aGenerated && 'column' in aGenerated && aOriginal && 'line' in aOriginal && 'column' in aOriginal && aGenerated.line > 0 && aGenerated.column >= 0 && aOriginal.line > 0 && aOriginal.column >= 0 && aSource) {\n    // Cases 2 and 3.\n    return;\n  } else {\n    throw new Error('Invalid mapping: ' + JSON.stringify({\n      generated: aGenerated,\n      source: aSource,\n      original: aOriginal,\n      name: aName\n    }));\n  }\n};\n\n/**\n * Serialize the accumulated mappings in to the stream of base 64 VLQs\n * specified by the source map format.\n */\nSourceMapGenerator.prototype._serializeMappings = function SourceMapGenerator_serializeMappings() {\n  var previousGeneratedColumn = 0;\n  var previousGeneratedLine = 1;\n  var previousOriginalColumn = 0;\n  var previousOriginalLine = 0;\n  var previousName = 0;\n  var previousSource = 0;\n  var result = '';\n  var next;\n  var mapping;\n  var nameIdx;\n  var sourceIdx;\n\n  var mappings = this._mappings.toArray();\n  for (var i = 0, len = mappings.length; i < len; i++) {\n    mapping = mappings[i];\n    next = '';\n\n    if (mapping.generatedLine !== previousGeneratedLine) {\n      previousGeneratedColumn = 0;\n      while (mapping.generatedLine !== previousGeneratedLine) {\n        next += ';';\n        previousGeneratedLine++;\n      }\n    } else {\n      if (i > 0) {\n        if (!util.compareByGeneratedPositionsInflated(mapping, mappings[i - 1])) {\n          continue;\n        }\n        next += ',';\n      }\n    }\n\n    next += base64VLQ.encode(mapping.generatedColumn - previousGeneratedColumn);\n    previousGeneratedColumn = mapping.generatedColumn;\n\n    if (mapping.source != null) {\n      sourceIdx = this._sources.indexOf(mapping.source);\n      next += base64VLQ.encode(sourceIdx - previousSource);\n      previousSource = sourceIdx;\n\n      // lines are stored 0-based in SourceMap spec version 3\n      next += base64VLQ.encode(mapping.originalLine - 1 - previousOriginalLine);\n      previousOriginalLine = mapping.originalLine - 1;\n\n      next += base64VLQ.encode(mapping.originalColumn - previousOriginalColumn);\n      previousOriginalColumn = mapping.originalColumn;\n\n      if (mapping.name != null) {\n        nameIdx = this._names.indexOf(mapping.name);\n        next += base64VLQ.encode(nameIdx - previousName);\n        previousName = nameIdx;\n      }\n    }\n\n    result += next;\n  }\n\n  return result;\n};\n\nSourceMapGenerator.prototype._generateSourcesContent = function SourceMapGenerator_generateSourcesContent(aSources, aSourceRoot) {\n  return aSources.map(function (source) {\n    if (!this._sourcesContents) {\n      return null;\n    }\n    if (aSourceRoot != null) {\n      source = util.relative(aSourceRoot, source);\n    }\n    var key = util.toSetString(source);\n    return Object.prototype.hasOwnProperty.call(this._sourcesContents, key) ? this._sourcesContents[key] : null;\n  }, this);\n};\n\n/**\n * Externalize the source map.\n */\nSourceMapGenerator.prototype.toJSON = function SourceMapGenerator_toJSON() {\n  var map = {\n    version: this._version,\n    sources: this._sources.toArray(),\n    names: this._names.toArray(),\n    mappings: this._serializeMappings()\n  };\n  if (this._file != null) {\n    map.file = this._file;\n  }\n  if (this._sourceRoot != null) {\n    map.sourceRoot = this._sourceRoot;\n  }\n  if (this._sourcesContents) {\n    map.sourcesContent = this._generateSourcesContent(map.sources, map.sourceRoot);\n  }\n\n  return map;\n};\n\n/**\n * Render the source map being generated to a string.\n */\nSourceMapGenerator.prototype.toString = function SourceMapGenerator_toString() {\n  return JSON.stringify(this.toJSON());\n};\n\nexports.SourceMapGenerator = SourceMapGenerator;",{"version":3,"sources":["node_modules/source-map/lib/source-map-generator.js"],"names":["base64VLQ","require","util","ArraySet","MappingList","SourceMapGenerator","aArgs","_file","getArg","_sourceRoot","_skipValidation","_sources","_names","_mappings","_sourcesContents","prototype","_version","fromSourceMap","SourceMapGenerator_fromSourceMap","aSourceMapConsumer","sourceRoot","generator","file","eachMapping","mapping","newMapping","generated","line","generatedLine","column","generatedColumn","source","relative","original","originalLine","originalColumn","name","addMapping","sources","forEach","sourceFile","content","sourceContentFor","setSourceContent","SourceMapGenerator_addMapping","_validateMapping","String","has","add","SourceMapGenerator_setSourceContent","aSourceFile","aSourceContent","Object","create","toSetString","keys","length","applySourceMap","SourceMapGenerator_applySourceMap","aSourceMapPath","Error","newSources","newNames","unsortedForEach","originalPositionFor","join","SourceMapGenerator_validateMapping","aGenerated","aOriginal","aSource","aName","JSON","stringify","_serializeMappings","SourceMapGenerator_serializeMappings","previousGeneratedColumn","previousGeneratedLine","previousOriginalColumn","previousOriginalLine","previousName","previousSource","result","next","nameIdx","sourceIdx","mappings","toArray","i","len","compareByGeneratedPositionsInflated","encode","indexOf","_generateSourcesContent","SourceMapGenerator_generateSourcesContent","aSources","aSourceRoot","map","key","hasOwnProperty","call","toJSON","SourceMapGenerator_toJSON","version","names","sourcesContent","toString","SourceMapGenerator_toString","exports"],"mappings":";;AAAA;AACA;;;;;;AAMA,IAAIA,YAAYC,QAAQ,cAAR,CAAhB;AACA,IAAIC,OAAOD,QAAQ,QAAR,CAAX;AACA,IAAIE,WAAWF,QAAQ,aAAR,EAAuBE,QAAtC;AACA,IAAIC,cAAcH,QAAQ,gBAAR,EAA0BG,WAA5C;;AAEA;;;;;;;;AAQA,SAASC,kBAAT,CAA4BC,KAA5B,EAAmC;AACjC,MAAI,CAACA,KAAL,EAAY;AACVA,YAAQ,EAAR;AACD;AACD,OAAKC,KAAL,GAAaL,KAAKM,MAAL,CAAYF,KAAZ,EAAmB,MAAnB,EAA2B,IAA3B,CAAb;AACA,OAAKG,WAAL,GAAmBP,KAAKM,MAAL,CAAYF,KAAZ,EAAmB,YAAnB,EAAiC,IAAjC,CAAnB;AACA,OAAKI,eAAL,GAAuBR,KAAKM,MAAL,CAAYF,KAAZ,EAAmB,gBAAnB,EAAqC,KAArC,CAAvB;AACA,OAAKK,QAAL,GAAgB,IAAIR,QAAJ,EAAhB;AACA,OAAKS,MAAL,GAAc,IAAIT,QAAJ,EAAd;AACA,OAAKU,SAAL,GAAiB,IAAIT,WAAJ,EAAjB;AACA,OAAKU,gBAAL,GAAwB,IAAxB;AACD;;AAEDT,mBAAmBU,SAAnB,CAA6BC,QAA7B,GAAwC,CAAxC;;AAEA;;;;;AAKAX,mBAAmBY,aAAnB,GACE,SAASC,gCAAT,CAA0CC,kBAA1C,EAA8D;AAC5D,MAAIC,aAAaD,mBAAmBC,UAApC;AACA,MAAIC,YAAY,IAAIhB,kBAAJ,CAAuB;AACrCiB,UAAMH,mBAAmBG,IADY;AAErCF,gBAAYA;AAFyB,GAAvB,CAAhB;AAIAD,qBAAmBI,WAAnB,CAA+B,UAAUC,OAAV,EAAmB;AAChD,QAAIC,aAAa;AACfC,iBAAW;AACTC,cAAMH,QAAQI,aADL;AAETC,gBAAQL,QAAQM;AAFP;AADI,KAAjB;;AAOA,QAAIN,QAAQO,MAAR,IAAkB,IAAtB,EAA4B;AAC1BN,iBAAWM,MAAX,GAAoBP,QAAQO,MAA5B;AACA,UAAIX,cAAc,IAAlB,EAAwB;AACtBK,mBAAWM,MAAX,GAAoB7B,KAAK8B,QAAL,CAAcZ,UAAd,EAA0BK,WAAWM,MAArC,CAApB;AACD;;AAEDN,iBAAWQ,QAAX,GAAsB;AACpBN,cAAMH,QAAQU,YADM;AAEpBL,gBAAQL,QAAQW;AAFI,OAAtB;;AAKA,UAAIX,QAAQY,IAAR,IAAgB,IAApB,EAA0B;AACxBX,mBAAWW,IAAX,GAAkBZ,QAAQY,IAA1B;AACD;AACF;;AAEDf,cAAUgB,UAAV,CAAqBZ,UAArB;AACD,GAzBD;AA0BAN,qBAAmBmB,OAAnB,CAA2BC,OAA3B,CAAmC,UAAUC,UAAV,EAAsB;AACvD,QAAIC,UAAUtB,mBAAmBuB,gBAAnB,CAAoCF,UAApC,CAAd;AACA,QAAIC,WAAW,IAAf,EAAqB;AACnBpB,gBAAUsB,gBAAV,CAA2BH,UAA3B,EAAuCC,OAAvC;AACD;AACF,GALD;AAMA,SAAOpB,SAAP;AACD,CAxCH;;AA0CA;;;;;;;;;;AAUAhB,mBAAmBU,SAAnB,CAA6BsB,UAA7B,GACE,SAASO,6BAAT,CAAuCtC,KAAvC,EAA8C;AAC5C,MAAIoB,YAAYxB,KAAKM,MAAL,CAAYF,KAAZ,EAAmB,WAAnB,CAAhB;AACA,MAAI2B,WAAW/B,KAAKM,MAAL,CAAYF,KAAZ,EAAmB,UAAnB,EAA+B,IAA/B,CAAf;AACA,MAAIyB,SAAS7B,KAAKM,MAAL,CAAYF,KAAZ,EAAmB,QAAnB,EAA6B,IAA7B,CAAb;AACA,MAAI8B,OAAOlC,KAAKM,MAAL,CAAYF,KAAZ,EAAmB,MAAnB,EAA2B,IAA3B,CAAX;;AAEA,MAAI,CAAC,KAAKI,eAAV,EAA2B;AACzB,SAAKmC,gBAAL,CAAsBnB,SAAtB,EAAiCO,QAAjC,EAA2CF,MAA3C,EAAmDK,IAAnD;AACD;;AAED,MAAIL,UAAU,IAAd,EAAoB;AAClBA,aAASe,OAAOf,MAAP,CAAT;AACA,QAAI,CAAC,KAAKpB,QAAL,CAAcoC,GAAd,CAAkBhB,MAAlB,CAAL,EAAgC;AAC9B,WAAKpB,QAAL,CAAcqC,GAAd,CAAkBjB,MAAlB;AACD;AACF;;AAED,MAAIK,QAAQ,IAAZ,EAAkB;AAChBA,WAAOU,OAAOV,IAAP,CAAP;AACA,QAAI,CAAC,KAAKxB,MAAL,CAAYmC,GAAZ,CAAgBX,IAAhB,CAAL,EAA4B;AAC1B,WAAKxB,MAAL,CAAYoC,GAAZ,CAAgBZ,IAAhB;AACD;AACF;;AAED,OAAKvB,SAAL,CAAemC,GAAf,CAAmB;AACjBpB,mBAAeF,UAAUC,IADR;AAEjBG,qBAAiBJ,UAAUG,MAFV;AAGjBK,kBAAcD,YAAY,IAAZ,IAAoBA,SAASN,IAH1B;AAIjBQ,oBAAgBF,YAAY,IAAZ,IAAoBA,SAASJ,MAJ5B;AAKjBE,YAAQA,MALS;AAMjBK,UAAMA;AANW,GAAnB;AAQD,CAjCH;;AAmCA;;;AAGA/B,mBAAmBU,SAAnB,CAA6B4B,gBAA7B,GACE,SAASM,mCAAT,CAA6CC,WAA7C,EAA0DC,cAA1D,EAA0E;AACxE,MAAIpB,SAASmB,WAAb;AACA,MAAI,KAAKzC,WAAL,IAAoB,IAAxB,EAA8B;AAC5BsB,aAAS7B,KAAK8B,QAAL,CAAc,KAAKvB,WAAnB,EAAgCsB,MAAhC,CAAT;AACD;;AAED,MAAIoB,kBAAkB,IAAtB,EAA4B;AAC1B;AACA;AACA,QAAI,CAAC,KAAKrC,gBAAV,EAA4B;AAC1B,WAAKA,gBAAL,GAAwBsC,OAAOC,MAAP,CAAc,IAAd,CAAxB;AACD;AACD,SAAKvC,gBAAL,CAAsBZ,KAAKoD,WAAL,CAAiBvB,MAAjB,CAAtB,IAAkDoB,cAAlD;AACD,GAPD,MAOO,IAAI,KAAKrC,gBAAT,EAA2B;AAChC;AACA;AACA,WAAO,KAAKA,gBAAL,CAAsBZ,KAAKoD,WAAL,CAAiBvB,MAAjB,CAAtB,CAAP;AACA,QAAIqB,OAAOG,IAAP,CAAY,KAAKzC,gBAAjB,EAAmC0C,MAAnC,KAA8C,CAAlD,EAAqD;AACnD,WAAK1C,gBAAL,GAAwB,IAAxB;AACD;AACF;AACF,CAtBH;;AAwBA;;;;;;;;;;;;;;;;AAgBAT,mBAAmBU,SAAnB,CAA6B0C,cAA7B,GACE,SAASC,iCAAT,CAA2CvC,kBAA3C,EAA+D+B,WAA/D,EAA4ES,cAA5E,EAA4F;AAC1F,MAAInB,aAAaU,WAAjB;AACA;AACA,MAAIA,eAAe,IAAnB,EAAyB;AACvB,QAAI/B,mBAAmBG,IAAnB,IAA2B,IAA/B,EAAqC;AACnC,YAAM,IAAIsC,KAAJ,CACJ,0FACA,0DAFI,CAAN;AAID;AACDpB,iBAAarB,mBAAmBG,IAAhC;AACD;AACD,MAAIF,aAAa,KAAKX,WAAtB;AACA;AACA,MAAIW,cAAc,IAAlB,EAAwB;AACtBoB,iBAAatC,KAAK8B,QAAL,CAAcZ,UAAd,EAA0BoB,UAA1B,CAAb;AACD;AACD;AACA;AACA,MAAIqB,aAAa,IAAI1D,QAAJ,EAAjB;AACA,MAAI2D,WAAW,IAAI3D,QAAJ,EAAf;;AAEA;AACA,OAAKU,SAAL,CAAekD,eAAf,CAA+B,UAAUvC,OAAV,EAAmB;AAChD,QAAIA,QAAQO,MAAR,KAAmBS,UAAnB,IAAiChB,QAAQU,YAAR,IAAwB,IAA7D,EAAmE;AACjE;AACA,UAAID,WAAWd,mBAAmB6C,mBAAnB,CAAuC;AACpDrC,cAAMH,QAAQU,YADsC;AAEpDL,gBAAQL,QAAQW;AAFoC,OAAvC,CAAf;AAIA,UAAIF,SAASF,MAAT,IAAmB,IAAvB,EAA6B;AAC3B;AACAP,gBAAQO,MAAR,GAAiBE,SAASF,MAA1B;AACA,YAAI4B,kBAAkB,IAAtB,EAA4B;AAC1BnC,kBAAQO,MAAR,GAAiB7B,KAAK+D,IAAL,CAAUN,cAAV,EAA0BnC,QAAQO,MAAlC,CAAjB;AACD;AACD,YAAIX,cAAc,IAAlB,EAAwB;AACtBI,kBAAQO,MAAR,GAAiB7B,KAAK8B,QAAL,CAAcZ,UAAd,EAA0BI,QAAQO,MAAlC,CAAjB;AACD;AACDP,gBAAQU,YAAR,GAAuBD,SAASN,IAAhC;AACAH,gBAAQW,cAAR,GAAyBF,SAASJ,MAAlC;AACA,YAAII,SAASG,IAAT,IAAiB,IAArB,EAA2B;AACzBZ,kBAAQY,IAAR,GAAeH,SAASG,IAAxB;AACD;AACF;AACF;;AAED,QAAIL,SAASP,QAAQO,MAArB;AACA,QAAIA,UAAU,IAAV,IAAkB,CAAC8B,WAAWd,GAAX,CAAehB,MAAf,CAAvB,EAA+C;AAC7C8B,iBAAWb,GAAX,CAAejB,MAAf;AACD;;AAED,QAAIK,OAAOZ,QAAQY,IAAnB;AACA,QAAIA,QAAQ,IAAR,IAAgB,CAAC0B,SAASf,GAAT,CAAaX,IAAb,CAArB,EAAyC;AACvC0B,eAASd,GAAT,CAAaZ,IAAb;AACD;AAEF,GAlCD,EAkCG,IAlCH;AAmCA,OAAKzB,QAAL,GAAgBkD,UAAhB;AACA,OAAKjD,MAAL,GAAckD,QAAd;;AAEA;AACA3C,qBAAmBmB,OAAnB,CAA2BC,OAA3B,CAAmC,UAAUC,UAAV,EAAsB;AACvD,QAAIC,UAAUtB,mBAAmBuB,gBAAnB,CAAoCF,UAApC,CAAd;AACA,QAAIC,WAAW,IAAf,EAAqB;AACnB,UAAIkB,kBAAkB,IAAtB,EAA4B;AAC1BnB,qBAAatC,KAAK+D,IAAL,CAAUN,cAAV,EAA0BnB,UAA1B,CAAb;AACD;AACD,UAAIpB,cAAc,IAAlB,EAAwB;AACtBoB,qBAAatC,KAAK8B,QAAL,CAAcZ,UAAd,EAA0BoB,UAA1B,CAAb;AACD;AACD,WAAKG,gBAAL,CAAsBH,UAAtB,EAAkCC,OAAlC;AACD;AACF,GAXD,EAWG,IAXH;AAYD,CA3EH;;AA6EA;;;;;;;;;;;AAWApC,mBAAmBU,SAAnB,CAA6B8B,gBAA7B,GACE,SAASqB,kCAAT,CAA4CC,UAA5C,EAAwDC,SAAxD,EAAmEC,OAAnE,EAC4CC,KAD5C,EACmD;AACjD;AACA;AACA;AACA;AACA,MAAIF,aAAa,OAAOA,UAAUzC,IAAjB,KAA0B,QAAvC,IAAmD,OAAOyC,UAAUvC,MAAjB,KAA4B,QAAnF,EAA6F;AACzF,UAAM,IAAI+B,KAAJ,CACF,qFACA,iFADA,GAEA,+EAHE,CAAN;AAKH;;AAED,MAAIO,cAAc,UAAUA,UAAxB,IAAsC,YAAYA,UAAlD,IACGA,WAAWxC,IAAX,GAAkB,CADrB,IAC0BwC,WAAWtC,MAAX,IAAqB,CAD/C,IAEG,CAACuC,SAFJ,IAEiB,CAACC,OAFlB,IAE6B,CAACC,KAFlC,EAEyC;AACvC;AACA;AACD,GALD,MAMK,IAAIH,cAAc,UAAUA,UAAxB,IAAsC,YAAYA,UAAlD,IACGC,SADH,IACgB,UAAUA,SAD1B,IACuC,YAAYA,SADnD,IAEGD,WAAWxC,IAAX,GAAkB,CAFrB,IAE0BwC,WAAWtC,MAAX,IAAqB,CAF/C,IAGGuC,UAAUzC,IAAV,GAAiB,CAHpB,IAGyByC,UAAUvC,MAAV,IAAoB,CAH7C,IAIGwC,OAJP,EAIgB;AACnB;AACA;AACD,GAPI,MAQA;AACH,UAAM,IAAIT,KAAJ,CAAU,sBAAsBW,KAAKC,SAAL,CAAe;AACnD9C,iBAAWyC,UADwC;AAEnDpC,cAAQsC,OAF2C;AAGnDpC,gBAAUmC,SAHyC;AAInDhC,YAAMkC;AAJ6C,KAAf,CAAhC,CAAN;AAMD;AACF,CArCH;;AAuCA;;;;AAIAjE,mBAAmBU,SAAnB,CAA6B0D,kBAA7B,GACE,SAASC,oCAAT,GAAgD;AAC9C,MAAIC,0BAA0B,CAA9B;AACA,MAAIC,wBAAwB,CAA5B;AACA,MAAIC,yBAAyB,CAA7B;AACA,MAAIC,uBAAuB,CAA3B;AACA,MAAIC,eAAe,CAAnB;AACA,MAAIC,iBAAiB,CAArB;AACA,MAAIC,SAAS,EAAb;AACA,MAAIC,IAAJ;AACA,MAAI1D,OAAJ;AACA,MAAI2D,OAAJ;AACA,MAAIC,SAAJ;;AAEA,MAAIC,WAAW,KAAKxE,SAAL,CAAeyE,OAAf,EAAf;AACA,OAAK,IAAIC,IAAI,CAAR,EAAWC,MAAMH,SAAS7B,MAA/B,EAAuC+B,IAAIC,GAA3C,EAAgDD,GAAhD,EAAqD;AACnD/D,cAAU6D,SAASE,CAAT,CAAV;AACAL,WAAO,EAAP;;AAEA,QAAI1D,QAAQI,aAAR,KAA0BgD,qBAA9B,EAAqD;AACnDD,gCAA0B,CAA1B;AACA,aAAOnD,QAAQI,aAAR,KAA0BgD,qBAAjC,EAAwD;AACtDM,gBAAQ,GAAR;AACAN;AACD;AACF,KAND,MAOK;AACH,UAAIW,IAAI,CAAR,EAAW;AACT,YAAI,CAACrF,KAAKuF,mCAAL,CAAyCjE,OAAzC,EAAkD6D,SAASE,IAAI,CAAb,CAAlD,CAAL,EAAyE;AACvE;AACD;AACDL,gBAAQ,GAAR;AACD;AACF;;AAEDA,YAAQlF,UAAU0F,MAAV,CAAiBlE,QAAQM,eAAR,GACI6C,uBADrB,CAAR;AAEAA,8BAA0BnD,QAAQM,eAAlC;;AAEA,QAAIN,QAAQO,MAAR,IAAkB,IAAtB,EAA4B;AAC1BqD,kBAAY,KAAKzE,QAAL,CAAcgF,OAAd,CAAsBnE,QAAQO,MAA9B,CAAZ;AACAmD,cAAQlF,UAAU0F,MAAV,CAAiBN,YAAYJ,cAA7B,CAAR;AACAA,uBAAiBI,SAAjB;;AAEA;AACAF,cAAQlF,UAAU0F,MAAV,CAAiBlE,QAAQU,YAAR,GAAuB,CAAvB,GACI4C,oBADrB,CAAR;AAEAA,6BAAuBtD,QAAQU,YAAR,GAAuB,CAA9C;;AAEAgD,cAAQlF,UAAU0F,MAAV,CAAiBlE,QAAQW,cAAR,GACI0C,sBADrB,CAAR;AAEAA,+BAAyBrD,QAAQW,cAAjC;;AAEA,UAAIX,QAAQY,IAAR,IAAgB,IAApB,EAA0B;AACxB+C,kBAAU,KAAKvE,MAAL,CAAY+E,OAAZ,CAAoBnE,QAAQY,IAA5B,CAAV;AACA8C,gBAAQlF,UAAU0F,MAAV,CAAiBP,UAAUJ,YAA3B,CAAR;AACAA,uBAAeI,OAAf;AACD;AACF;;AAEDF,cAAUC,IAAV;AACD;;AAED,SAAOD,MAAP;AACD,CAhEH;;AAkEA5E,mBAAmBU,SAAnB,CAA6B6E,uBAA7B,GACE,SAASC,yCAAT,CAAmDC,QAAnD,EAA6DC,WAA7D,EAA0E;AACxE,SAAOD,SAASE,GAAT,CAAa,UAAUjE,MAAV,EAAkB;AACpC,QAAI,CAAC,KAAKjB,gBAAV,EAA4B;AAC1B,aAAO,IAAP;AACD;AACD,QAAIiF,eAAe,IAAnB,EAAyB;AACvBhE,eAAS7B,KAAK8B,QAAL,CAAc+D,WAAd,EAA2BhE,MAA3B,CAAT;AACD;AACD,QAAIkE,MAAM/F,KAAKoD,WAAL,CAAiBvB,MAAjB,CAAV;AACA,WAAOqB,OAAOrC,SAAP,CAAiBmF,cAAjB,CAAgCC,IAAhC,CAAqC,KAAKrF,gBAA1C,EAA4DmF,GAA5D,IACH,KAAKnF,gBAAL,CAAsBmF,GAAtB,CADG,GAEH,IAFJ;AAGD,GAXM,EAWJ,IAXI,CAAP;AAYD,CAdH;;AAgBA;;;AAGA5F,mBAAmBU,SAAnB,CAA6BqF,MAA7B,GACE,SAASC,yBAAT,GAAqC;AACnC,MAAIL,MAAM;AACRM,aAAS,KAAKtF,QADN;AAERsB,aAAS,KAAK3B,QAAL,CAAc2E,OAAd,EAFD;AAGRiB,WAAO,KAAK3F,MAAL,CAAY0E,OAAZ,EAHC;AAIRD,cAAU,KAAKZ,kBAAL;AAJF,GAAV;AAMA,MAAI,KAAKlE,KAAL,IAAc,IAAlB,EAAwB;AACtByF,QAAI1E,IAAJ,GAAW,KAAKf,KAAhB;AACD;AACD,MAAI,KAAKE,WAAL,IAAoB,IAAxB,EAA8B;AAC5BuF,QAAI5E,UAAJ,GAAiB,KAAKX,WAAtB;AACD;AACD,MAAI,KAAKK,gBAAT,EAA2B;AACzBkF,QAAIQ,cAAJ,GAAqB,KAAKZ,uBAAL,CAA6BI,IAAI1D,OAAjC,EAA0C0D,IAAI5E,UAA9C,CAArB;AACD;;AAED,SAAO4E,GAAP;AACD,CAnBH;;AAqBA;;;AAGA3F,mBAAmBU,SAAnB,CAA6B0F,QAA7B,GACE,SAASC,2BAAT,GAAuC;AACrC,SAAOnC,KAAKC,SAAL,CAAe,KAAK4B,MAAL,EAAf,CAAP;AACD,CAHH;;AAKAO,QAAQtG,kBAAR,GAA6BA,kBAA7B","file":"source-map-generator.js","sourceRoot":"/data","sourcesContent":["/* -*- Mode: js; js-indent-level: 2; -*- */\n/*\n * Copyright 2011 Mozilla Foundation and contributors\n * Licensed under the New BSD license. See LICENSE or:\n * http://opensource.org/licenses/BSD-3-Clause\n */\n\nvar base64VLQ = require('./base64-vlq');\nvar util = require('./util');\nvar ArraySet = require('./array-set').ArraySet;\nvar MappingList = require('./mapping-list').MappingList;\n\n/**\n * An instance of the SourceMapGenerator represents a source map which is\n * being built incrementally. You may pass an object with the following\n * properties:\n *\n *   - file: The filename of the generated source.\n *   - sourceRoot: A root for all relative URLs in this source map.\n */\nfunction SourceMapGenerator(aArgs) {\n  if (!aArgs) {\n    aArgs = {};\n  }\n  this._file = util.getArg(aArgs, 'file', null);\n  this._sourceRoot = util.getArg(aArgs, 'sourceRoot', null);\n  this._skipValidation = util.getArg(aArgs, 'skipValidation', false);\n  this._sources = new ArraySet();\n  this._names = new ArraySet();\n  this._mappings = new MappingList();\n  this._sourcesContents = null;\n}\n\nSourceMapGenerator.prototype._version = 3;\n\n/**\n * Creates a new SourceMapGenerator based on a SourceMapConsumer\n *\n * @param aSourceMapConsumer The SourceMap.\n */\nSourceMapGenerator.fromSourceMap =\n  function SourceMapGenerator_fromSourceMap(aSourceMapConsumer) {\n    var sourceRoot = aSourceMapConsumer.sourceRoot;\n    var generator = new SourceMapGenerator({\n      file: aSourceMapConsumer.file,\n      sourceRoot: sourceRoot\n    });\n    aSourceMapConsumer.eachMapping(function (mapping) {\n      var newMapping = {\n        generated: {\n          line: mapping.generatedLine,\n          column: mapping.generatedColumn\n        }\n      };\n\n      if (mapping.source != null) {\n        newMapping.source = mapping.source;\n        if (sourceRoot != null) {\n          newMapping.source = util.relative(sourceRoot, newMapping.source);\n        }\n\n        newMapping.original = {\n          line: mapping.originalLine,\n          column: mapping.originalColumn\n        };\n\n        if (mapping.name != null) {\n          newMapping.name = mapping.name;\n        }\n      }\n\n      generator.addMapping(newMapping);\n    });\n    aSourceMapConsumer.sources.forEach(function (sourceFile) {\n      var content = aSourceMapConsumer.sourceContentFor(sourceFile);\n      if (content != null) {\n        generator.setSourceContent(sourceFile, content);\n      }\n    });\n    return generator;\n  };\n\n/**\n * Add a single mapping from original source line and column to the generated\n * source's line and column for this source map being created. The mapping\n * object should have the following properties:\n *\n *   - generated: An object with the generated line and column positions.\n *   - original: An object with the original line and column positions.\n *   - source: The original source file (relative to the sourceRoot).\n *   - name: An optional original token name for this mapping.\n */\nSourceMapGenerator.prototype.addMapping =\n  function SourceMapGenerator_addMapping(aArgs) {\n    var generated = util.getArg(aArgs, 'generated');\n    var original = util.getArg(aArgs, 'original', null);\n    var source = util.getArg(aArgs, 'source', null);\n    var name = util.getArg(aArgs, 'name', null);\n\n    if (!this._skipValidation) {\n      this._validateMapping(generated, original, source, name);\n    }\n\n    if (source != null) {\n      source = String(source);\n      if (!this._sources.has(source)) {\n        this._sources.add(source);\n      }\n    }\n\n    if (name != null) {\n      name = String(name);\n      if (!this._names.has(name)) {\n        this._names.add(name);\n      }\n    }\n\n    this._mappings.add({\n      generatedLine: generated.line,\n      generatedColumn: generated.column,\n      originalLine: original != null && original.line,\n      originalColumn: original != null && original.column,\n      source: source,\n      name: name\n    });\n  };\n\n/**\n * Set the source content for a source file.\n */\nSourceMapGenerator.prototype.setSourceContent =\n  function SourceMapGenerator_setSourceContent(aSourceFile, aSourceContent) {\n    var source = aSourceFile;\n    if (this._sourceRoot != null) {\n      source = util.relative(this._sourceRoot, source);\n    }\n\n    if (aSourceContent != null) {\n      // Add the source content to the _sourcesContents map.\n      // Create a new _sourcesContents map if the property is null.\n      if (!this._sourcesContents) {\n        this._sourcesContents = Object.create(null);\n      }\n      this._sourcesContents[util.toSetString(source)] = aSourceContent;\n    } else if (this._sourcesContents) {\n      // Remove the source file from the _sourcesContents map.\n      // If the _sourcesContents map is empty, set the property to null.\n      delete this._sourcesContents[util.toSetString(source)];\n      if (Object.keys(this._sourcesContents).length === 0) {\n        this._sourcesContents = null;\n      }\n    }\n  };\n\n/**\n * Applies the mappings of a sub-source-map for a specific source file to the\n * source map being generated. Each mapping to the supplied source file is\n * rewritten using the supplied source map. Note: The resolution for the\n * resulting mappings is the minimium of this map and the supplied map.\n *\n * @param aSourceMapConsumer The source map to be applied.\n * @param aSourceFile Optional. The filename of the source file.\n *        If omitted, SourceMapConsumer's file property will be used.\n * @param aSourceMapPath Optional. The dirname of the path to the source map\n *        to be applied. If relative, it is relative to the SourceMapConsumer.\n *        This parameter is needed when the two source maps aren't in the same\n *        directory, and the source map to be applied contains relative source\n *        paths. If so, those relative source paths need to be rewritten\n *        relative to the SourceMapGenerator.\n */\nSourceMapGenerator.prototype.applySourceMap =\n  function SourceMapGenerator_applySourceMap(aSourceMapConsumer, aSourceFile, aSourceMapPath) {\n    var sourceFile = aSourceFile;\n    // If aSourceFile is omitted, we will use the file property of the SourceMap\n    if (aSourceFile == null) {\n      if (aSourceMapConsumer.file == null) {\n        throw new Error(\n          'SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, ' +\n          'or the source map\\'s \"file\" property. Both were omitted.'\n        );\n      }\n      sourceFile = aSourceMapConsumer.file;\n    }\n    var sourceRoot = this._sourceRoot;\n    // Make \"sourceFile\" relative if an absolute Url is passed.\n    if (sourceRoot != null) {\n      sourceFile = util.relative(sourceRoot, sourceFile);\n    }\n    // Applying the SourceMap can add and remove items from the sources and\n    // the names array.\n    var newSources = new ArraySet();\n    var newNames = new ArraySet();\n\n    // Find mappings for the \"sourceFile\"\n    this._mappings.unsortedForEach(function (mapping) {\n      if (mapping.source === sourceFile && mapping.originalLine != null) {\n        // Check if it can be mapped by the source map, then update the mapping.\n        var original = aSourceMapConsumer.originalPositionFor({\n          line: mapping.originalLine,\n          column: mapping.originalColumn\n        });\n        if (original.source != null) {\n          // Copy mapping\n          mapping.source = original.source;\n          if (aSourceMapPath != null) {\n            mapping.source = util.join(aSourceMapPath, mapping.source)\n          }\n          if (sourceRoot != null) {\n            mapping.source = util.relative(sourceRoot, mapping.source);\n          }\n          mapping.originalLine = original.line;\n          mapping.originalColumn = original.column;\n          if (original.name != null) {\n            mapping.name = original.name;\n          }\n        }\n      }\n\n      var source = mapping.source;\n      if (source != null && !newSources.has(source)) {\n        newSources.add(source);\n      }\n\n      var name = mapping.name;\n      if (name != null && !newNames.has(name)) {\n        newNames.add(name);\n      }\n\n    }, this);\n    this._sources = newSources;\n    this._names = newNames;\n\n    // Copy sourcesContents of applied map.\n    aSourceMapConsumer.sources.forEach(function (sourceFile) {\n      var content = aSourceMapConsumer.sourceContentFor(sourceFile);\n      if (content != null) {\n        if (aSourceMapPath != null) {\n          sourceFile = util.join(aSourceMapPath, sourceFile);\n        }\n        if (sourceRoot != null) {\n          sourceFile = util.relative(sourceRoot, sourceFile);\n        }\n        this.setSourceContent(sourceFile, content);\n      }\n    }, this);\n  };\n\n/**\n * A mapping can have one of the three levels of data:\n *\n *   1. Just the generated position.\n *   2. The Generated position, original position, and original source.\n *   3. Generated and original position, original source, as well as a name\n *      token.\n *\n * To maintain consistency, we validate that any new mapping being added falls\n * in to one of these categories.\n */\nSourceMapGenerator.prototype._validateMapping =\n  function SourceMapGenerator_validateMapping(aGenerated, aOriginal, aSource,\n                                              aName) {\n    // When aOriginal is truthy but has empty values for .line and .column,\n    // it is most likely a programmer error. In this case we throw a very\n    // specific error message to try to guide them the right way.\n    // For example: https://github.com/Polymer/polymer-bundler/pull/519\n    if (aOriginal && typeof aOriginal.line !== 'number' && typeof aOriginal.column !== 'number') {\n        throw new Error(\n            'original.line and original.column are not numbers -- you probably meant to omit ' +\n            'the original mapping entirely and only map the generated position. If so, pass ' +\n            'null for the original mapping instead of an object with empty or null values.'\n        );\n    }\n\n    if (aGenerated && 'line' in aGenerated && 'column' in aGenerated\n        && aGenerated.line > 0 && aGenerated.column >= 0\n        && !aOriginal && !aSource && !aName) {\n      // Case 1.\n      return;\n    }\n    else if (aGenerated && 'line' in aGenerated && 'column' in aGenerated\n             && aOriginal && 'line' in aOriginal && 'column' in aOriginal\n             && aGenerated.line > 0 && aGenerated.column >= 0\n             && aOriginal.line > 0 && aOriginal.column >= 0\n             && aSource) {\n      // Cases 2 and 3.\n      return;\n    }\n    else {\n      throw new Error('Invalid mapping: ' + JSON.stringify({\n        generated: aGenerated,\n        source: aSource,\n        original: aOriginal,\n        name: aName\n      }));\n    }\n  };\n\n/**\n * Serialize the accumulated mappings in to the stream of base 64 VLQs\n * specified by the source map format.\n */\nSourceMapGenerator.prototype._serializeMappings =\n  function SourceMapGenerator_serializeMappings() {\n    var previousGeneratedColumn = 0;\n    var previousGeneratedLine = 1;\n    var previousOriginalColumn = 0;\n    var previousOriginalLine = 0;\n    var previousName = 0;\n    var previousSource = 0;\n    var result = '';\n    var next;\n    var mapping;\n    var nameIdx;\n    var sourceIdx;\n\n    var mappings = this._mappings.toArray();\n    for (var i = 0, len = mappings.length; i < len; i++) {\n      mapping = mappings[i];\n      next = ''\n\n      if (mapping.generatedLine !== previousGeneratedLine) {\n        previousGeneratedColumn = 0;\n        while (mapping.generatedLine !== previousGeneratedLine) {\n          next += ';';\n          previousGeneratedLine++;\n        }\n      }\n      else {\n        if (i > 0) {\n          if (!util.compareByGeneratedPositionsInflated(mapping, mappings[i - 1])) {\n            continue;\n          }\n          next += ',';\n        }\n      }\n\n      next += base64VLQ.encode(mapping.generatedColumn\n                                 - previousGeneratedColumn);\n      previousGeneratedColumn = mapping.generatedColumn;\n\n      if (mapping.source != null) {\n        sourceIdx = this._sources.indexOf(mapping.source);\n        next += base64VLQ.encode(sourceIdx - previousSource);\n        previousSource = sourceIdx;\n\n        // lines are stored 0-based in SourceMap spec version 3\n        next += base64VLQ.encode(mapping.originalLine - 1\n                                   - previousOriginalLine);\n        previousOriginalLine = mapping.originalLine - 1;\n\n        next += base64VLQ.encode(mapping.originalColumn\n                                   - previousOriginalColumn);\n        previousOriginalColumn = mapping.originalColumn;\n\n        if (mapping.name != null) {\n          nameIdx = this._names.indexOf(mapping.name);\n          next += base64VLQ.encode(nameIdx - previousName);\n          previousName = nameIdx;\n        }\n      }\n\n      result += next;\n    }\n\n    return result;\n  };\n\nSourceMapGenerator.prototype._generateSourcesContent =\n  function SourceMapGenerator_generateSourcesContent(aSources, aSourceRoot) {\n    return aSources.map(function (source) {\n      if (!this._sourcesContents) {\n        return null;\n      }\n      if (aSourceRoot != null) {\n        source = util.relative(aSourceRoot, source);\n      }\n      var key = util.toSetString(source);\n      return Object.prototype.hasOwnProperty.call(this._sourcesContents, key)\n        ? this._sourcesContents[key]\n        : null;\n    }, this);\n  };\n\n/**\n * Externalize the source map.\n */\nSourceMapGenerator.prototype.toJSON =\n  function SourceMapGenerator_toJSON() {\n    var map = {\n      version: this._version,\n      sources: this._sources.toArray(),\n      names: this._names.toArray(),\n      mappings: this._serializeMappings()\n    };\n    if (this._file != null) {\n      map.file = this._file;\n    }\n    if (this._sourceRoot != null) {\n      map.sourceRoot = this._sourceRoot;\n    }\n    if (this._sourcesContents) {\n      map.sourcesContent = this._generateSourcesContent(map.sources, map.sourceRoot);\n    }\n\n    return map;\n  };\n\n/**\n * Render the source map being generated to a string.\n */\nSourceMapGenerator.prototype.toString =\n  function SourceMapGenerator_toString() {\n    return JSON.stringify(this.toJSON());\n  };\n\nexports.SourceMapGenerator = SourceMapGenerator;\n"]}]}