avoid using Zp constructor