cleaned up M2