hunk.code_window:   if (!Symbol.for) {
       Symbol.for = symbolForPolyfill;
     }
   }
   export function ensureSymbol(root) {
     if (!root.Symbol) {
  
hunk.labels: keep keep keep keep add keep keep
hunk.after_edit: let id = 0;
  
hunk.file_path: src/util/SymbolShim.ts
hunk.type: add
file: import {errorObject} from './errorObject';
  
  let tryCatchTarget;
  
  function tryCatcher(): any {
    try {
      return tryCatchTarget.apply(this, arguments);
    } catch (e) {
      errorObject.e = e;
      return errorObject;
    }
  }
  
  export function tryCatch(fn: Function): Function {
    tryCatchTarget = fn;
    return tryCatcher;
  };