why do we have a seperate class for model search?

In Yii 1.x the search method was in generated model class, in Yii 2.0 we have a separate class known as Model Search Class which contains search method and it’s related rules. why is this? what’s wrong with having search method in main Model Class?

Search class is extendable from Model, so, I think it just separate code.

Yes that is true, but why are those separated? what’s the point? what was wrong with Yii 1.1 approach? is it just separation of concerns or something else?