← Home
```go
package main

import (
	"bufio"
	"fmt"
	"os"
)

func main() {
	reader := bufio.NewReader(os.Stdin)
	writer := bufio.NewWriter(os.Stdout)
	defer writer.Flush()

	var t int
	fmt.Fscan(reader, &t)

	for ; t > 0; t-- {
		var n, k int
		fmt.Fscan(reader, &n, &k)

		if n%2 == 0 {
			fmt.Fprintln(writer, n+2*k)
		} else {
			d := n
			for i := 3; i*i <= n; i += 2 {
				if n%i == 0 {
					d = i
					break
				}
			}
			fmt.Fprintln(writer, n+d+2*(k-1))
		}
	}
}
```