def eh_quadrado_magico(quadrado):
    if len(quadrado[0]) != len(quadrado):
        return False

    verifica = []
    for a in range(len(quadrado)):
        verifica += quadrado[a]
    if len(verifica) != set(verifica):
        return False

    lista = []
    for i in range(len(quadrado)):
        somalinhas = 0
        for j in range(len(quadrado[i])):
            somalinhas += quadrado[i][j]
        lista.append(somalinhas)

    for k in range(len(quadrado[0])):
        somacolunas = 0
        for l in range(len(quadrado)):
            somacolunas += quadrado[k][l]
        lista.append(somacolunas)

    somadiagP = 0
    somadiagS = 0
    for x in range(len(quadrado)):
        for y in range(len(quadrado[x])):
            if x == y:
                somadiagP += quadrado[x][j]
            if x + y == len(quadrado)-1:
                somadiagS += quadrado[x][j]

    lista.append(somadiagP)
    lista.append(somadiagS)

    if len(set(lista)) == 1:
        return True
    else:
        return False