#include<bits/stdc++.h>
#define pb push_back
#define maxi 50002
typedef long long int ll;
using namespace std;
//int scan_d() {int ip=getchar_unlocked(),flag=1;int ret=0;for(;ip<'0'||ip>'9';ip=getchar_unlocked())if(ip=='-'){flag=-1;ip=getchar_unlocked();break;}for(;ip>='0'&&ip<='9';ip=getchar_unlocked())ret=ret*10+ip-'0';return flag*ret;}
bool visited[maxi]={false};
vector<int>rooms[maxi];
int win[maxi],I[maxi],id=-1;
int root_id[maxi];
ll counti=0,c,ans1;
void dfs(int v)
{
int i,tmp;
visited[v]=true;
I[v]=win[v];
root_id[v]=id;
for(i=0;i<rooms[v].size();i++)
{
tmp=rooms[v][i];
//cout<<v<<" "<<visited[v]<<"tmp="<<tmp<<" I[1] "<<I[1]<<endl;
if(!visited[tmp])
{
dfs(tmp);
I[v]+=I[tmp];
}
}
//cout<<v<<" I[v]="<<I[v]<<" I[1] "<<I[1]<<endl;
}
int main()
{
int i,n,m,j;
cin>>n>>m;
for(i=1;i<=n;i++)
cin>>win[i];
for(i=0;i<m;i++)
{
int a,b;
cin>>a>>b;
rooms[a].pb(b);
rooms[b].pb(a);
}
for(i=1;i<=n;i++)
{
if( !visited[i])
{
c=0;
id=i;
dfs(i);
counti+=I[i]*(I[i]-1)/2;
}
} ans1=0;
for(i=1;i<=n;i++)
{
// cout<<i<<" "<<root_id[i]<<" "<<I[i]<<endl;
if(I[i]>1)
{ans1++; continue;}
if(I[i]==1 && I[root_id[i]]>1 && i!=root_id[i])
{ans1++; continue;}
if(I[i]==0)
continue;
}
cout<<counti<<" "<<ans1<<endl;
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KI2RlZmluZSBwYiBwdXNoX2JhY2sKI2RlZmluZSBtYXhpIDUwMDAyCnR5cGVkZWYgbG9uZyBsb25nIGludCBsbDsKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCi8vaW50IHNjYW5fZCgpIHtpbnQgaXA9Z2V0Y2hhcl91bmxvY2tlZCgpLGZsYWc9MTtpbnQgcmV0PTA7Zm9yKDtpcDwnMCd8fGlwPic5JztpcD1nZXRjaGFyX3VubG9ja2VkKCkpaWYoaXA9PSctJyl7ZmxhZz0tMTtpcD1nZXRjaGFyX3VubG9ja2VkKCk7YnJlYWs7fWZvcig7aXA+PScwJyYmaXA8PSc5JztpcD1nZXRjaGFyX3VubG9ja2VkKCkpcmV0PXJldCoxMCtpcC0nMCc7cmV0dXJuIGZsYWcqcmV0O30KCmJvb2wgdmlzaXRlZFttYXhpXT17ZmFsc2V9Owp2ZWN0b3I8aW50PnJvb21zW21heGldOwppbnQgd2luW21heGldLElbbWF4aV0saWQ9LTE7CmludCByb290X2lkW21heGldOwpsbCBjb3VudGk9MCxjLGFuczE7Cgp2b2lkIGRmcyhpbnQgdikKewogICAgaW50IGksdG1wOwoKICAgIHZpc2l0ZWRbdl09dHJ1ZTsKICAgIElbdl09d2luW3ZdOwogICAgcm9vdF9pZFt2XT1pZDsKICAgIGZvcihpPTA7aTxyb29tc1t2XS5zaXplKCk7aSsrKQogICAgewogICAgICAgIHRtcD1yb29tc1t2XVtpXTsKICAgICAgICAvL2NvdXQ8PHY8PCIgIjw8dmlzaXRlZFt2XTw8InRtcD0iPDx0bXA8PCIgSVsxXSAiPDxJWzFdPDxlbmRsOwoKICAgICAgICBpZighdmlzaXRlZFt0bXBdKQogICAgICAgIHsKICAgICAgICAgICAgZGZzKHRtcCk7CiAgICAgICAgICAgIElbdl0rPUlbdG1wXTsKCiAgICAgICAgfQogICAgfQogICAgIC8vY291dDw8djw8IiBJW3ZdPSI8PElbdl08PCIgSVsxXSAiPDxJWzFdPDxlbmRsOwp9CmludCBtYWluKCkKewogICAgaW50IGksbixtLGo7CiAgY2luPj5uPj5tOwogICAgZm9yKGk9MTtpPD1uO2krKykKICAgICAgICBjaW4+PndpbltpXTsKICAgICAgIGZvcihpPTA7aTxtO2krKykKICAgICAgIHsKICAgICAgICBpbnQgYSxiOwogICAgICAgIGNpbj4+YT4+YjsKICAgICAgICByb29tc1thXS5wYihiKTsKICAgICAgICByb29tc1tiXS5wYihhKTsKICAgICAgIH0KICAgICAgIGZvcihpPTE7aTw9bjtpKyspCiAgICAgICB7CgogICAgICAgICAgIGlmKCAhdmlzaXRlZFtpXSkKICAgICAgICAgICB7CiAgICAgICAgICAgICAgIGM9MDsKICAgICAgICAgICAgICAgaWQ9aTsKICAgICAgICAgICAgICAgZGZzKGkpOwogICAgICAgICAgICAgICAgY291bnRpKz1JW2ldKihJW2ldLTEpLzI7CgogICAgICAgICAgIH0KCiAgICAgICB9IGFuczE9MDsKICAgICAgICBmb3IoaT0xO2k8PW47aSsrKQogICAgICAgIHsKCiAgICAgICAvLyBjb3V0PDxpPDwiICI8PHJvb3RfaWRbaV08PCIgIjw8SVtpXTw8ZW5kbDsKICAgICAgICAgICAgaWYoSVtpXT4xKQogICAgICAgICAgICB7YW5zMSsrOyBjb250aW51ZTt9CiAgICAgICAgICAgIGlmKElbaV09PTEgJiYgSVtyb290X2lkW2ldXT4xICYmIGkhPXJvb3RfaWRbaV0pCiAgICAgICAgICAgIHthbnMxKys7IGNvbnRpbnVlO30KICAgICAgICAgICAgaWYoSVtpXT09MCkKICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KCiAgICAgICBjb3V0PDxjb3VudGk8PCIgIjw8YW5zMTw8ZW5kbDsKCiAgICByZXR1cm4gMDsKfQo=