Unbrick / Programming XIAO

While spending many days trying to revive dead XIAOs I came up with the following set-up.
Using one XIAO as a CMSIS-DAP probe and connecting it to the injured XIAO mounted on the DEV board (need to connect SWCLK, SWDIO, Tx and Rx).
Then create an openocd.cfg config file per thereunder and run it by launching Openocd on a terminal window.
CON side is that I am unable to restore a bootloader
PRO side is that I can xfer hex or bin binaries compiled with the Arduino IDE.
Strange thing is that for the app to become active I need to first load app and then laod the bootloader binary from Seeed.
Question : Should the Bootloader be flashed at a specific adress ?
Same for the app should an adress offset ne indicated ?
Thls, Frd

source [find D:/OPENOCD/scripts/interface/cmsis-dap.cfg]
transport select swd
 
set CHIPNAME at91samd21g18
source [find D:/OPENOCD/scripts/target/at91samdXX.cfg]
 
# did not yet manage to make a working setup using srst
#reset_config srst_only
reset_config  srst_nogate
 
adapter srst delay 100
adapter srst pulse_width 100
 
init
targets
reset halt

at91samd bootloader 0

program oled_Display.elf verify
program XIAO_bootloader.bin verify

at91samd bootloader 8192
reset
shutdown