function getBoundSuper(obj, fn) {
  if (typeof _WeakMap === 'undefined') {
    throw new Error('Using @autobind on ' + fn.name + '() requires WeakMap support due to its use of super.' + fn.name + '()');
  }

  if (!mapStore) {
    mapStore = new _WeakMap();
  }

  if (mapStore.has(obj) === false) {
    mapStore.set(obj, new _WeakMap());
  }

  var superStore = mapStore.get(obj);
  // $FlowFixMe: already insure superStore is not undefined
  if (superStore.has(fn) === false) {
    // $FlowFixMe: already insure superStore is not undefined
    superStore.set(fn, bind$1(fn, obj));
  }
  // $FlowFixMe: already insure superStore is not undefined
  return superStore.get(fn);
}
function getBoundSuper(obj, fn) {
  if (typeof _WeakMap === 'undefined') {
    throw new Error('Using @autobind on ' + fn.name + '() requires WeakMap support due to its use of super.' + fn.name + '()');
  }

  if (!mapStore) {
    mapStore = new _WeakMap();
  }

  if (mapStore.has(obj) === false) {
    mapStore.set(obj, new _WeakMap());
  }

  var superStore = mapStore.get(obj);
  
  if (superStore.has(fn) === false) {
    
    superStore.set(fn, bind$1(fn, obj));
  }
  
  return superStore.get(fn);
}
function getBoundSuper ( obj , fn ) { if ( typeof _WeakMap === 'undefined' ) { throw new Error ( 'Using @autobind on ' + fn . name + '() requires WeakMap support due to its use of super.' + fn . name + '()' ) ; } if ( ! mapStore ) { mapStore = new _WeakMap ( ) ; } if ( mapStore . has ( obj ) === false ) { mapStore . set ( obj , new _WeakMap ( ) ) ; } var superStore = mapStore . get ( obj ) ; // $FlowFixMe: already insure superStore is not undefined if ( superStore . has ( fn ) === false ) { // $FlowFixMe: already insure superStore is not undefined superStore . set ( fn , bind$1 ( fn , obj ) ) ; } // $FlowFixMe: already insure superStore is not undefined return superStore . get ( fn ) ; }
save bound function for super
save bound function for super