Initial GP(p^2) implementation