← Home
package main

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

func main() {
	const M = 10000000
	d := make([]int32, M+1)
	for i := int32(1); i <= M; i++ {
		for j := i; j <= M; j += i {
			d[j] += i
		}
	}
	
	ans := make([]int32, M+1)
	for i := 1; i <= M; i++ {
		ans[i] = -1
	}
	for i := int32(1); i <= M; i++ {
		if d[i] <= M && ans[d[i]] == -1 {
			ans[d[i]] = i
		}
	}

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

	var t int
	if _, err := fmt.Fscan(reader, &t); err != nil {
		return
	}
	for i := 0; i < t; i++ {
		var c int
		fmt.Fscan(reader, &c)
		fmt.Fprintln(writer, ans[c])
	}
}