refactor and remove separate mms fix