anchor.diff:  CALL :message "  -logP"
   ECHO:     Like -log, but also open the logfile after updating.
   CALL :message "  -merge"
  -ECHO:     Merge overrides instead of appending them. One-line comments and
  +ECHO:     Merge overrides instead of appending them. Single-line comments and
   ECHO:     _user.js.parrot lines are appended normally. Overrides for inactive
   ECHO:     user.js prefs will be appended. When -Merge and -MultiOverrides are used
   ECHO:     together, a user-overrides-merged.js file is also generated in the root
  
positive.code: IF /I "%~1"=="-multioverrides" (SET _multi=1)
  IF /I "%~1"=="-merge" (SET _merge=1)
  IF /I "%~1"=="-updatebatch" (SET _updateb=1)
  SHIFT
  GOTO parse
  :endparse
  
negative.code: :merge
  SETLOCAL DisableDelayedExpansion
  (
  	FOR /F tokens^=2^,^*^ delims^=^'^" %%G IN ('FINDSTR /B /R /C:"user_pref.*\)" "%~1"') DO (
  		IF NOT "%%G"=="" (
  			IF NOT "%%H"=="" (SET "%%G=%%H")
  		)
  	)
  	FOR /F "tokens=1,* delims=:" %%I IN ('FINDSTR /N "^" "%~1"') DO (
  		SET "_temp=%%J"
  		SETLOCAL EnableDelayedExpansion
  		IF "!_temp:)=!"=="!_temp!" (
  			ENDLOCAL & ECHO:%%J
  		) ELSE (
  			IF NOT "!_temp:~0,9!"=="user_pref" (
  				ENDLOCAL & ECHO:%%J
  			) ELSE (
  				ENDLOCAL
  				FOR /F tokens^=2^ delims^=^'^" %%K IN ("%%J") DO (
  					IF NOT "_user.js.parrot"=="%%K" (
  						IF DEFINED %%K (
  							SETLOCAL EnableDelayedExpansion
  							FOR /F "delims=" %%L IN ("!%%K!") DO (
  								ENDLOCAL & ECHO:user_pref("%%K"%%L
  								SET "%%K="
  							)
  						)
  					) ELSE (ECHO:%%J)
  				)
  			)
  		)
  