Problema K: Karamell

# | competition: "2024 ICPC Brazil Subregional"
# | problem_id: "K"
# | title: "Karamell"


def solve(i, j, n, a, dp, c):
    if j == 0:
        return 1
    if i == n:
        return 0
    if dp[i][j] != -1:
        return dp[i][j]
    ans = solve(i + 1, j, n, a, dp, c)
    c[i][j] = 0
    if j - a[i] >= 0:
        curr = solve(i + 1, j - a[i], n, a, dp, c)
        if curr > ans:
            c[i][j] = 1
            ans = curr
    dp[i][j] = ans
    return ans


def main():
    n = int(input())
    a = list(map(int, input().split()))
    sum_a = sum(a)

    if sum_a % 2 != 0:
        print("-1")
        return

    dp = [[-1] * (sum_a // 2 + 1) for _ in range(n)]
    c = [[0] * (sum_a // 2 + 1) for _ in range(n)]

    ans = solve(0, sum_a // 2, n, a, dp, c)
    if not ans:
        print("-1")
        return

    i, j = 0, sum_a // 2
    va, vb = [], []
    while i < n:
        op = c[i][j]
        if op == 1:
            vb.append(a[i])
            j -= a[i]
        else:
            va.append(a[i])
        i += 1

    va.sort(reverse=True)
    vb.sort(reverse=True)

    suma, sumb = 0, 0
    i, j = 0, 0
    result = []
    for x in range(n):
        if suma <= sumb:
            suma += va[i]
            result.append(va[i])
            i += 1
        else:
            sumb += vb[j]
            result.append(vb[j])
            j += 1

    print(" ".join(map(str, result)))


if __name__ == "__main__":
    main()