mm init and free