@Override
  public boolean equals(Object o) {
    if (this == o) return true;
    if (o == null || getClass() != o.getClass()) return false;

    ExternalSystemTaskExecutionSettings settings = (ExternalSystemTaskExecutionSettings)o;

    if (!Objects.equals(myExecutionName, settings.myExecutionName)) {
      return false;
    }

    if (!Objects.equals(myExternalProjectPath, settings.myExternalProjectPath))
    {
      return false;
    }
    if (!Objects.equals(myExternalSystemIdString, settings.myExternalSystemIdString))
    {
      return false;
    }
    if (!Objects.equals(myTaskNames, settings.myTaskNames)) return false;
    if (StringUtil.isEmpty(myVmOptions) ^ StringUtil.isEmpty(settings.myVmOptions)) return false;
    if (StringUtil.isEmpty(myScriptParameters) ^ StringUtil.isEmpty(settings.myScriptParameters)) return false;
    if (!Objects.equals(myEnv, settings.myEnv)) return false;
    if (myPassParentEnvs != settings.myPassParentEnvs) return false;
    return true;
  }
@Override
  public boolean equals(Object o)