finished changing to use VariableSet