added the zeta function stuff