#include <bits/stdc++.h>
#define PowerUp ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(0)
#define ll long long
#define line "\n"
using namespace std;
struct burger
{
ll bun, susage, cheese;
};
burger have, cost, recipe;
ll burger_cost(ll number)
{
ll total_cost = 0;
ll bun_cost = max((((number * recipe.bun) - have.bun) * cost.bun), (ll)0);
ll susage_cost = max((((number * recipe.susage) - have.susage) * cost.susage),(ll) 0);
ll cheese_cost = max((((number * recipe.cheese) - have.cheese) * cost.cheese),(ll) 0);
total_cost += bun_cost + susage_cost + cheese_cost;
return total_cost;
}
int main()
{
PowerUp;
string s;
ll budget;
cin>>s;
cin >> have.bun >> have.susage >> have.cheese;
cin >> cost.bun >> cost.susage >> cost.cheese;
cin>>budget;
map<char,ll> mp;
for(int i=0; i<s.size(); i++)
{
mp[s[i]]++;
}
recipe.bun = mp['B'];
recipe.susage = mp['S'];
recipe.cheese = mp['C'];
ll left = 0, right = 1e12+1000, mid;
while (left < right)
{
mid = (right - left) / 2 + left;
if (burger_cost(mid)>budget)
right = mid;
else
left = mid+1;
}
if (burger_cost(right)>budget)
right--;
cout<<right;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgUG93ZXJVcCBpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTtjaW4udGllKE5VTEwpO2NvdXQudGllKDApCiNkZWZpbmUgbGwgbG9uZyBsb25nCiNkZWZpbmUgbGluZSAiXG4iCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgpzdHJ1Y3QgYnVyZ2VyCnsKICAgIGxsIGJ1biwgc3VzYWdlLCBjaGVlc2U7Cn07CgpidXJnZXIgaGF2ZSwgY29zdCwgcmVjaXBlOwoKbGwgYnVyZ2VyX2Nvc3QobGwgbnVtYmVyKQp7CiAgICBsbCB0b3RhbF9jb3N0ID0gMDsKICAgIGxsIGJ1bl9jb3N0ID0gbWF4KCgoKG51bWJlciAqIHJlY2lwZS5idW4pIC0gaGF2ZS5idW4pICogY29zdC5idW4pLCAobGwpMCk7CiAgICBsbCBzdXNhZ2VfY29zdCA9IG1heCgoKChudW1iZXIgKiByZWNpcGUuc3VzYWdlKSAtIGhhdmUuc3VzYWdlKSAqIGNvc3Quc3VzYWdlKSwobGwpIDApOwogICAgbGwgY2hlZXNlX2Nvc3QgPSBtYXgoKCgobnVtYmVyICogcmVjaXBlLmNoZWVzZSkgLSBoYXZlLmNoZWVzZSkgKiBjb3N0LmNoZWVzZSksKGxsKSAwKTsKICAgIHRvdGFsX2Nvc3QgKz0gYnVuX2Nvc3QgKyBzdXNhZ2VfY29zdCArIGNoZWVzZV9jb3N0OwogICAgcmV0dXJuIHRvdGFsX2Nvc3Q7Cn0KCmludCBtYWluKCkKewogICAgUG93ZXJVcDsKICAgIHN0cmluZyBzOwogICAgbGwgYnVkZ2V0OwoKICAgIGNpbj4+czsKICAgIGNpbiA+PiBoYXZlLmJ1biA+PiBoYXZlLnN1c2FnZSA+PiBoYXZlLmNoZWVzZTsKICAgIGNpbiA+PiBjb3N0LmJ1biA+PiBjb3N0LnN1c2FnZSA+PiBjb3N0LmNoZWVzZTsKICAgIGNpbj4+YnVkZ2V0OwoKICAgIG1hcDxjaGFyLGxsPiBtcDsKICAgIGZvcihpbnQgaT0wOyBpPHMuc2l6ZSgpOyBpKyspCiAgICB7CiAgICAgICAgbXBbc1tpXV0rKzsKICAgIH0KICAgIHJlY2lwZS5idW4gPSBtcFsnQiddOwogICAgcmVjaXBlLnN1c2FnZSA9IG1wWydTJ107CiAgICByZWNpcGUuY2hlZXNlID0gbXBbJ0MnXTsKICAgIGxsIGxlZnQgPSAwLCByaWdodCA9IDFlMTIrMTAwMCwgbWlkOwogICAgd2hpbGUgKGxlZnQgPCByaWdodCkKICAgIHsKICAgICAgICBtaWQgPSAocmlnaHQgLSBsZWZ0KSAvIDIgKyBsZWZ0OwogICAgICAgIGlmIChidXJnZXJfY29zdChtaWQpPmJ1ZGdldCkKICAgICAgICAgICAgcmlnaHQgPSBtaWQ7CiAgICAgICAgZWxzZQogICAgICAgICAgICBsZWZ0ID0gbWlkKzE7CiAgICB9CiAgICBpZiAoYnVyZ2VyX2Nvc3QocmlnaHQpPmJ1ZGdldCkKICAgICAgICByaWdodC0tOwoKICAgIGNvdXQ8PHJpZ2h0Owp9