<b>What will be the output for the following code?</b>

<span style="font-weight: 400;">function* fibonacci() {</span>

<span style="font-weight: 400;">  let prev = 0;</span>

<span style="font-weight: 400;">  let curr = 1;</span>

<span style="font-weight: 400;">  while (true) {</span>

<span style="font-weight: 400;">    yield curr;</span>

<span style="font-weight: 400;">    [prev, curr] = [curr, prev + curr];</span>

<span style="font-weight: 400;">  }</span>

<span style="font-weight: 400;">}</span>

<span style="font-weight: 400;">const fib = fibonacci();</span>

<span style="font-weight: 400;">console.log(fib.next().value);</span>

<span style="font-weight: 400;">console.log(fib.next().value);</span>

<span style="font-weight: 400;">console.log(fib.next().value);</span>

<span style="font-weight: 400;">console.log(fib.next().value);</span>