{"version":3,"names":["DefaultMap","__SystemJSRewritingHack","_export","setters","execute","_recorder_","_src_babylonian_programming_editor_utils_collections_js","Map","constructor","defaultInit","iterable","_defaultInit","builder","bind","get","key","has","defaultValue","set","Object","defineProperty","thisIsVererySecretVariableName","enumerable","configurable"],"sources":["collections.js"],"sourcesContent":["export class DefaultMap extends Map {\n  constructor(defaultInit, iterable) {\n    super(iterable);\n    this._defaultInit = defaultInit;\n  }\n  \n  static builder(defaultInit) {\n    return DefaultMap.bind(null, defaultInit);\n  }\n  \n  get(key) {\n    if(!this.has(key)) {\n      const defaultValue = typeof this._defaultInit === 'function' ? \n                           new this._defaultInit() :\n                           this._defaultInit;\n      this.set(key, defaultValue);\n    }\n    return super.get(key);\n  }\n}\n"],"mappings":";;;MAAaA,UAAU,EAAAC,uBAAA;EAAAC,OAAA;EAAA;IAAAC,OAAA;IAAAC,OAAA,WAAAA,CAAA;MAAAH,uBAAA;MAAAI,UAAA,CAAAC,uDAAA,GAAAD,UAAA,CAAAC,uDAAA;MAAAJ,OAAA,eAAVF,UAAU,GAAhB,MAAMA,UAAU,SAASO,GAAG,CAAC;QAClCC,WAAWA,CAACC,WAAW,EAAEC,QAAQ,EAAE;UACjC,KAAK,CAACA,QAAQ,CAAC;UACf,IAAI,CAACC,YAAY,GAAGF,WAAW;QACjC;QAEA,OAAOG,OAAOA,CAACH,WAAW,EAAE;UAC1B,OAAOT,UAAU,CAACa,IAAI,CAAC,IAAI,EAAEJ,WAAW,CAAC;QAC3C;QAEAK,GAAGA,CAACC,GAAG,EAAE;UACP,IAAG,CAAC,IAAI,CAACC,GAAG,CAACD,GAAG,CAAC,EAAE;YACjB,MAAME,YAAY,GAAG,OAAO,IAAI,CAACN,YAAY,KAAK,UAAU,GACvC,IAAI,IAAI,CAACA,YAAY,CAAC,CAAC,GACvB,IAAI,CAACA,YAAY;YACtC,IAAI,CAACO,GAAG,CAACH,GAAG,EAAEE,YAAY,CAAC;UAC7B;UACA,OAAO,KAAK,CAACH,GAAG,CAACC,GAAG,CAAC;QACvB;MACF,CAAC;MAAAI,MAAA,CAAAC,cAAA,CAAAf,UAAA,CAAAC,uDAAA;QAAAQ,IAAA;UAAA,OAAAd,UAAA;QAAA;QAAAkB,IAAAG,8BAAA;UAAAnB,OAAA,eAnBYF,UAAA,CAAAA,CAAA,CAAAA,8BAAU;UAAA;QAAA;QAAAsB,UAAA;QAAAC,YAAA;MAAA;IAAA;EAAA;AAAA"}