made values generic