added predict + train