/**
  * @param ModelContract $model
  * @param Image         $image
  * @param string        $styleName
  * @param \Closure      $closure
  *
  * @return Image
  */
 protected function processStyle(ModelContract $model, $image, $styleName, $closure)
 {
     if (is_null($closure)) {
         $this->save($image, $model->getPath($styleName));
         return $image;
     }
     $processed = $this->applyStyle($image, $closure);
     $this->save($processed, $model->getPath($styleName));
     return $processed;
 }