func numJewelsInStones(J string, S string) int {
hash := uint64(0)
length := len(J)
for i := 0; i < length; i++ {
if J[i] <= 'Z' {
hash |= 1 << uint64(J[i] - 'A' + 1)
} else {
hash |= 1 << uint64(J[i] - 'a' + 27)
}
}
sum := 0
length = len(S)
for i := 0; i < length; i++ {
if S[i] <= 'Z' && hash&(1<<uint64(S[i] - 'A' + 1)) != 0 ||
S[i] >= 'a' && hash&(1<<uint64(S[i] - 'a' + 27)) != 0 {
sum++
}
}
return sum
}