#include <bits/stdc++.h>
using namespace std;
int n,m;
int place[22][22][2];
int road[22][22];
int serch(int start,int finish,int money,int go,int now)
{
	if(money<0)return 0;
	if(go==1&&start==now)return money;
	if(finish==now)go=1;
	int ans=0;
	for(int i=1;i<=n;i++)if(road[now][i])ans=max(ans,serch(start,finish,money-place[now][i][0],go,i));
	return ans;
}
int main() {
	cin>>n>>m;
	char a;
	for(int i=0,num[4];i<m;i++){
		for(int j=0;j<3;j++)cin>>num[j]>>a;
		cin>>num[3];
		for(int j=0;j<2;j++){
		    place[num[0]][num[1]][j]=num[2+j];
		    place[num[1]][num[0]][j]=num[3-j];
		    road[num[0+j]][num[1-j]]=1;
		}
		
	}
	int get[4];
	for(int i=0;i<3;i++)cin>>get[i]>>a;
	cin>>get[3];
	cout<<serch(get[0],get[1],get[2]-get[3],0,get[0])<<endl;
}