fun main(args: Array<String>) {
    val n = readLine()!!.toInt()
    val a = readLine()!!.split(' ').map(String::toInt).sorted()
    var j = 0
    var ans = true
    var levels = 0
    while (j < n) {
        var nj = j
        while (nj < n && a[nj] == a[j]) nj++
        val l = nj - j
        if (j == 0 && l > 2 || j > 0 && nj != n && l < 2 || nj < n && a[nj] != a[j] + 1) {
            ans = false
            break
        }
        j = nj
        levels++
    }
    if (ans) {
        if (a[0] == a[1] && levels != a[0]) ans = false
        if (a[0] != a[1] && levels != a[0] + 1) ans = false
    }
    println(if (ans) "Possible" else "Impossible")
}