#include <iostream>
#include<bits/stdc++.h>
using namespace std;
struct ucen{
long long druz;
int bp,bpN,bpP;
};
int N,M; ucen a[100002];long long sreca=0;
int main()
{
    ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);cerr.tie(0);
    cin>>N>>M;
    for(int i=0;i<N;i++){
        cin>>a[i].druz;
    }
    int x,y;
    for(int i=0;i<M;i++){
        cin>>x>>y;
        x--;y--;
        if(a[x].druz<0&&a[y].druz<0){a[x].bpN++;a[y].bpN++;}
        else if(a[x].druz>=0&&a[y].druz>=0){a[x].bpP++;a[y].bpP++;}
        else if(abs(a[x].druz)>=abs(a[y].druz)){
                if(a[x].druz>=0){a[x].bpP++;a[y].bpP++;}
                else {a[x].bpN++;a[y].bpN++;}
        }
        else {if(a[y].druz>=0){a[x].bpP++;a[y].bpP++;}
                else {a[x].bpN++;a[y].bpN++;}}

    }
    for(int i=0;i<N;i++){
        a[i].bp=a[i].bpP-a[i].bpN;
        sreca+=a[i].druz*a[i].bp;
    }
    cout<<sreca;

}