added free variables