anchor.diff:  
   :: Detect compiler
   cl /? >NUL 2>NUL <NUL
  +if %ERRORLEVEL% == 0 (
  +  goto detect_cmake
  +)
  +PUSHD %CD%
  +
  +CALL :try_call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Auxiliary\Build\vcvars64.bat"
  +IF ERRORLEVEL 1 (
  +  CALL :try_call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
  +)
  +IF ERRORLEVEL 1 (
  +  CALL :try_call "C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Auxiliary\Build\vcvars64.bat"
  +)
  +
  +IF ERRORLEVEL 1 (
  +  CALL :try_call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build\vcvars64.bat"
  +)
  +IF ERRORLEVEL 1 (
  +  CALL :try_call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
  +)
  +IF ERRORLEVEL 1 (
  +  CALL :try_call "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Auxiliary\Build\vcvars64.bat"
  +)
  +
  +IF ERRORLEVEL 1 (
  +  CALL :try_call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64
  +)
  +
  +POPD
  +cl /? >NUL 2>NUL <NUL
   if %ERRORLEVEL% NEQ 0 (
  -  PUSHD %CD%
  -  if exist "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build\vcvars64.bat" (
  -    CALL "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build\vcvars64.bat"
  -    goto check_msvc
  -  )
  -  if exist "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Auxiliary\Build\vcvars64.bat" (
  -    CALL "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
  -    goto check_msvc
  -  )
  -  if exist "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Auxiliary\Build\vcvars64.bat" (
  -    CALL "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Auxiliary\Build\vcvars64.bat"
  -    goto check_msvc
  -  )
  -  if exist "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" (
  -    CALL "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64
  -    goto check_msvc
  -  )
  -:check_msvc
  -  POPD
  -  cl /? >NUL 2>NUL <NUL
  -  if %ERRORLEVEL% NEQ 0 (
  -    set "MSG=Can't detect Microsoft Visial Studio C++ compiler (cl.exe). MSVS 2015/2017 are supported only from standard locations"
  -    goto die
  -  )
  +  set "MSG=Can't detect Microsoft Visial Studio C++ compiler (cl.exe). MSVS 2015/2017/2019 are supported only from standard locations"
  +  goto die
   )
   
   :: Detect CMake
  +:detect_cmake
   cmake --version >NUL 2>NUL
   if %ERRORLEVEL% EQU 0 GOTO :CMAKE_FOUND
   
  
positive.code:   goto die
  )
  if "%VisualStudioVersion%" == "14.0" (
    set CMAKE_GENERATOR="Visual Studio 14 Win64"
    set "PATH=%PATH%;%SCRIPTDIR%\..\..\build\x64\vc14\bin\"
  ) else (
    if "%VisualStudioVersion%" == "15.0" (
      set CMAKE_GENERATOR="Visual Studio 15 Win64"
      set "PATH=%PATH%;%SCRIPTDIR%\..\..\build\x64\vc15\bin\"
    ) else (
      set "MSG=Unsupported MSVS version. VisualStudioVersion=%VisualStudioVersion%"
      goto die
    )
  )
  
  set "BUILD_DIR=%SRC_DIR%\build_%SRC_NAME%"
  call :set_title Create build directory
  if NOT exist "%BUILD_DIR%" ( call :execute md "%BUILD_DIR%" )
  PUSHD "%BUILD_DIR%"
  
negative.code: call :execute copy /Y "%SCRIPTDIR%/CMakeLists.example.in" "%BUILD_DIR%/sample/CMakeLists.txt"
  
  call :set_title Configuring via CMake
  call :execute cmake %CMAKE_GENERATOR% "%BUILD_DIR%\sample" -DEXAMPLE_NAME=%SRC_NAME% "-DEXAMPLE_FILE=%SRC_FILENAME%" "-DOpenCV_DIR=%SCRIPTDIR%\..\..\build"
  if %ERRORLEVEL% NEQ 0 (
    set "MSG=CMake configuration step failed: %BUILD_DIR%"
    goto die
  