#include <bits/stdc++.h>
#define pii pair<int,int>
using namespace std;
vector<pii> g[26];
int dp[26];
bool vis[26];
int dfs(int u){
if (vis[u]) return dp[u];
vis[u] = true;
dp[u] = 0;
for (auto [v,w]:g[u]) dp[u] = max(dp[u],dfs(v)+w);
return dp[u];
}
int main(void){
ios::sync_with_stdio(0),cin.tie(0);
char start;
int n;
while (cin>>start>>n){
for (int i=0 ; i<26 ; i++){
g[i].clear();
vis[i] = 0;
dp[i] = 0;
}
while (n--){
char a,b;
int w;
cin>>a>>b>>w;
g[a-'A'].push_back({b-'A',w});
}
cout<<dfs(start-'A')<<"\n";
}
}