   function duplicate($options = []) {

      $input = $this->fields;
      unset($input['id']);

      if (is_array($options) && count($options)) {
         foreach ($options as $key => $val) {
            if (isset($this->fields[$key])) {
               $input[$key] = $val;
            }
         }
      }

      if ($newID = $this->clone($input)) {
         $this->updateDurationCache($newID);
         return true;
      }

      return false;
   }
The software constructs all or part of an SQL command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended SQL command when it is sent to a downstream component.