finetuned classes and added step function