added GMP support