public function setEnabled(Enabled $enabled)
{
$execute = $this->execute;
$messages = $this->messages;
/** @var Execute $execute */
$execute = false === $enabled->value() ? $execute->disableTools() : $execute;
$messages = false === $enabled->value() ? $messages->disable() : $messages;
return new self(new Undefined(false), $enabled, $execute, $messages);
}