#include <iostream>
using namespace std;
bool generisiSledecuKombinaciju(int M, int kombinacija[])
{
    bool ret = false;
    int firstZeroposition = -1;
    for (int i = 0; i < M; i++)
    {
        if (kombinacija[i] == 0)
        {
            firstZeroposition = i;
            break;
        }
    }
    if (firstZeroposition > -1)
    {
        for (int i = 0; i < firstZeroposition; i++)
        {
            kombinacija[i] = 0;
        }
        kombinacija[firstZeroposition] = 0;
        ret = true;
    }
    return ret;
}
int main()
{
    const int MAX_TAKMICARI = 10000;
    int N;
    int M;
    int Ai[MAX_TAKMICARI];
    int parovi[MAX_TAKMICARI][2];
    cin >> N >> M;
    for (int i = 0; i < N; i++)
    {
        cin >> Ai[i];
    }
    for (int i = 0; i < M; i++)
    {
        int X, Y;
        cin >> X >> Y;
        parovi[i][0] = X;
        parovi[i][1] = Y;
    }
    int kombinacija[MAX_TAKMICARI];
    fill(kombinacija, kombinacija + M, 0);
    int maxSreca = 0;
    int takmicarPrijateljNeprijatelj[MAX_TAKMICARI][2];
    do {
        for (int i = 0; i < N; i++)
        {
            takmicarPrijateljNeprijatelj[i][0] = 0;
            takmicarPrijateljNeprijatelj[i][1] = 0;
        }
        for (int i = 0; i < M; i++)
        {
            int Xi = parovi[i][0];
            int Yi = parovi[i][1];
            int prijatelj = kombinacija[i] == 0;
            if (prijatelj)
            {
                takmicarPrijateljNeprijatelj[Xi - 1][0]++;
                takmicarPrijateljNeprijatelj[Yi - 1][0]++;
            }
            else
            {
                takmicarPrijateljNeprijatelj[Xi - 1][1]++;
                takmicarPrijateljNeprijatelj[Yi - 1][1]++;
            }
        }
        int sreca = 0;
        for (int i = 0; i < N; i++)
        {
            int srecatakmicara =
                Ai[i] * (takmicarPrijateljNeprijatelj[i][0] - takmicarPrijateljNeprijatelj[i][1]);
            sreca += srecatakmicara;
        }
        if (sreca > maxSreca)
        {
            maxSreca = sreca;
        }
    } 
    while (generisiSledecuKombinaciju(M, kombinacija));
    cout << maxSreca;
}