// traverse.js
// MIT licensed, see LICENSE file

const walk = require("acorn/dist/walk");

function traverse(rootNode, options) {
    const ancestors = [];
    (function c(node, st, override) {
        const parent = ancestors[ancestors.length - 1];
        const isNew = node != parent;
        if (options.pre && isNew) options.pre(node, parent);
        if (isNew) ancestors.push(node);
        walk.base[override || node.type](node, st, c);
        if (isNew) ancestors.pop();
        if (options.post && isNew) options.post(node, parent);
    })(rootNode);
}

module.exports = traverse;

@@ -85,16 +85,33 @@
 alk%22);%0A%0A
+module.exports = 
 function
@@ -290,16 +290,17 @@
  node !=
+=
  parent;
@@ -579,33 +579,6 @@
 );%0A%7D
-%0A%0Amodule.exports = traverse
 ;%0A

Fix != -> !== in traverse.js