ose consecutive calls don't
 * get the same result helped with resolving the issue.
 */

/* globals exportFunction */

console.info(
  "performance.now precision has been modified for compatibility reasons. See https://bugzilla.mozilla.org/show_bug.cgi?id=1756970 for details."
);

let counter = 0;
let previousVal = 0;

const perf = Object.getPrototypeOf(performance.wrappedJSObject);
const now = perf.now;
perf.now = exportFunction(function () {
  let originalVal = now.call(this);
  if (originalVal === previousVal) {
    originalVal += 0.00000003 * ++counter;
  } else {
    previousVal = originalVal;
    counter = 0;
  }
  return originalVal;
}, window);
PK