Added constrained self-training