code: public function hydrate($value)
      {
          if (!is_array($value)) {
              return null;
          }
  
          $entity = $this->getTargetEntity();
  
          foreach ($value as $key=>$v) {
              $entity->{"set$key"}($v);
          }
          return $entity;
      }
docs: Hydrates and returns a clone of the target entity.
  
  <b>$value</b> must be either null or the array returned from
  {@link extract()}.
  
  if <b>$value</b> is null, nothing is done and <i>NULL</i> is returned.
  
  @param array|null $value
  @return FileInterface
  @see \Zend\Hydrator\Strategy\StrategyInterface::hydrate()