anchor.diff:  :# Then extract the first backspace
   set "BS=%DEL:~0,1%"
   
  -:# Define variables for problematic characters, that cause parsing issues
  +:# Define a FF variable containing a Form Feed ('\x0C')
  +for /f %%A in ('cls') do set "FF=%%A"
  +
  +:# Define variables for problematic characters, that cause parsing issues.
   :# Use the ASCII control character name, or the html entity name.
   :# Warning: The excl and hat characters need different quoting depending on context.
   set  "DEBUG.percnt=%%"	&:# One percent sign
  
positive.code: :#                  inside.                                                   #
  :#   2016-11-23 JFL Factored out routine :Prep2ExpandVars, and use it before  #
  :#                  displaying any name or value. Fixes issues with ! and ^.  #
  :#                                                                            #
  :#          Copyright 2016 Hewlett Packard Enterprise Development LP         #
  :# Licensed under the Apache 2.0 license  www.apache.org/licenses/LICENSE-2.0 #
  :##############################################################################
  
  setlocal EnableExtensions EnableDelayedExpansion
  set "VERSION=2016-11-23"
  set "SCRIPT=%~nx0"
  set "SPATH=%~dp0" & set "SPATH=!SPATH:~0,-1!"
  set "ARG0=%~f0"
  set "ARGS=%*"
  
  :# Mechanism for calling subroutines in a second external script instance.
  :# Done by %XCALL% :label [arguments]
  if '%1'=='-call' !ARGS:~1! & exit /b
  set XCALL=call "%ARG0%" -call
  
  :# FOREACHLINE macro. (Change the delimiter to none to catch the whole lines.)
  set FOREACHLINE=for /f "delims=" 
  
  :# Default definitions
  call :PopArg.Init
  call :Macro.Init
  call :Debug.Init
  call :Exec.Init
  goto main
  
  :#----------------------------------------------------------------------------#
  :#                                                                            #
  :#  Function        PopArg                                                    #
  :#                                                                            #
  :#  Description     Pop the first argument from %ARGS% into %ARG% and %"ARG"% #
  :#                                                                            #
  :#  Macros          %POPARG%        Pop one argument                          #
  :#                  %POPSARG%       Faster version, not supporting ! or ^ val.#
  :#                                                                            #
  :#  Input           %ARGS%	    Command line arguments                    #
  :#                                                                            #
  :#  Output          %ARG%           The unquoted argument                     #
  :#                  %"ARG"%         The actual argument, possibly quoted      #
  :#                  %ARGS%	    Remaining command line arguments          #
  :#                                                                            #
  :#  Notes 	    Works around the defect of the shift command, which       #
  :#                  pops the first argument from the %* list, but does not    #
  :#                  remove it from %*.                                        #
  :#                  Also works around another defect with tricky characters   #
  :#                  like ! or ^ being lost when variable expansion is on.     #
  :#                                                                            #
  
negative.code: :#                  If you're sure that NONE of the arguments contain such    #
  :#                  tricky characters, then call :PopSimpleArg.               #
  :#                                                                            #
  :#                  Uses an inner call to make sure the argument parsing is   #
  :#                  done by the actual cmd.exe parser. This guaranties that   #
  :#                  arguments are split exactly as shift would have done.     #
  :#                                                                            #
  