"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const y=require("./warning.js");function g(c,o,a=!1){const u=new Set;function n(e,r,f=1){const s=u.has(e);if(y.default(!s,"Warning: There may be circular references"),s)return!1;if(e===r)return!0;if(a&&f>1)return!1;u.add(e);const i=f+1;if(Array.isArray(e)){if(!Array.isArray(r)||e.length!==r.length)return!1;for(let t=0;t<e.length;t++)if(!n(e[t],r[t],i))return!1;return!0}if(e&&r&&typeof e=="object"&&typeof r=="object"){const t=Object.keys(e);return t.length!==Object.keys(r).length?!1:t.every(l=>n(e[l],r[l],i))}return!1}return n(c,o)}exports.default=g;
