cm frameworks opt