gmp refactored
automatic msg