#include<stdio.h>
#include<stdlib.h>
#include<conio.h>


int main()
{
	int *a,n,m,i,*poznanici,*parovi,temp=0,temp1=0,znak,znak1,sreca=0,*brprijatelja;
	scanf("%d",&n);
	scanf("%d",&m);
	a=(int*)malloc(n*sizeof(int));
	parovi=(int*)malloc(m*sizeof(int));
	for(i=0;i<m;i++)
	{
		*(parovi+i)=0;
	}
	for(i=0;i<n;i++)
	{
		scanf("%d",(a+i));
	}
	poznanici=(int*)malloc(2*m*sizeof(int));
	for(i=0;i<2*m;i++)
	{
		scanf("%d",(poznanici+i));
	}
	
	for(i=0;i<m*2;i++)
	{
		if(*(a+*(poznanici+i)-1)<0)
		{
			temp=(*(a+*(poznanici+i)-1))*(-1);
			znak=-1;
		}
		else
		{
			temp=*(a+*(poznanici+i)-1);
			znak=1;
		}
		i++;
		if(*(a+*(poznanici+i)-1)<0)
		{
			temp1=(*(a+*(poznanici+i)-1))*(-1);
			znak1=-1;
		}
		else
		{
			temp1=*(a+*(poznanici+i)-1);
			znak1=1;
		}
		if(temp>temp1)
			*(parovi+(i-1)/2)=znak;
		else
			*(parovi+(i-1)/2)=znak1;
	}
	brprijatelja=(int*)malloc(n*sizeof(int));
	for(i=0;i<n;i++)
	{
		*(brprijatelja+i)=0;
	}
	for(i=0;i<m;i++)
	{
		if(*(parovi+i)==1)
		{
			*(brprijatelja+*(poznanici+(2*i))-1)+=1;
			*(brprijatelja+*(poznanici+(2*i+1))-1)+=1;
		}
		else
		{
			*(brprijatelja+*(poznanici+(2*i))-1)-=1;
			*(brprijatelja+*(poznanici+(2*i+1))-1)-=1;
		}
	}
	for(i=0;i<n;i++)
	{
		sreca+=(*(a+i))*(*(brprijatelja+i));
	}
	printf("%d",sreca);
	return 0;
}