added the optimization module