add free variables + Opt adapted