minor bugs with gcm ironed out.