added some hyperopt code