beginning generalization work