docs: function (target, src, requireSame) {
      if (target === undefined) { target = {}; }
      if (src === undefined) { return target; }
      var i;
      for (i in src) {
        if (src.hasOwnProperty(i)) {
          if (requireSame && target[i] !== undefined && target[i] !== src[i]) {
            throw new sjcl.exception.invalid("required parameter overridden");
          }
          target[i] = src[i];
        }
      }
      return target;
    }