Hint
queueMicrotask and Promise.resolve().then() are equivalent in priority β FIFO within the microtask queue.
console.log('1');
queueMicrotask(() => console.log('2'));
Promise.resolve().then(() => console.log('3'));
queueMicrotask(() => console.log('4'));
console.log('5');1 5 2 3 4
Explanation: queueMicrotask and Promise.then both add to the microtask queue in order. 1 and 5 run sync. Then microtasks drain in order: 2, 3, 4.
Key Insight: queueMicrotask and Promise.resolve().then() are equivalent in priority β FIFO within the microtask queue.