public function get($file, $preset, $args = NULL) {
    $this->file = $file;

    if (!$this->setFilename()) {
      return $this->image_element_empty();
    }

    if (!$this->setPreset($preset)) {
      return $this->image_element_empty();
    }

    $this->setupArguments($args);

    if (!$this->image_exists()) {
      return $this->image_element_empty();
    }

    if (!$this->is_image()) {
      return $this->image_element_empty();
    }

    if ($this->is_svg()) {
      return (object) $this->image_element_original();
    }

    if (!$this->generate_cached_image()) {
      return $this->image_element_empty();
    }

    return (object) $this->image_element();
  }