STM32G030 spare option bytes
I have a small amount of per-device data (e.g. hardware revision, serial number, manufacture date) that I would like to store persistently in an STM32G030 without consuming a 2K flash sector. Obviously one option is OTP, but I'm curious about the Flash Option bytes and have a few questions:
1. What option byte addresses (if any) are available to hold user data. The manual indicates that there are 128 option bytes at 0x1FFF7800, writable as 64-bit double-words. The manual also shows a memory map listing the purposes of bytes 0x1FFF7800..0x1FFF782F, but no information is given about locations 0x1FFF7830..0x1FFF787F and I'm hoping those are available.
This site (https://wiki.segger.com/ST_STM32G0) indicates that the STM32G0x0 only has 96 option bytes from 0x1FFF7800 - 0x1FFF785F rather than 128; I don't see anything about this in the manual; is it true? In that case, the available range might be 0x1FFF7830..0x1FFF785F.
From a stock uC, I note that the words at 0x1FFF7830 and 0x1FFF7870 are set to 0x00000000 (and presumably their complement words are set to 0xFFFFFFFF) are these used for anything? The double words from 0x1FFF7838 to 0x1FFF786F appear unused (all 0xFFFFFFFF) as well as the double word at 0x1FFF7878; are they available to store user data?

2. Is the complement model required for double words or is that just how the system bootloader implements a modicum of data integrity checking? (i.e. do I need to store each double word as a long word and its complement?)
3. Is there an easy way to program OTP or option bytes using off-the-shelf tools such as STM32CubeProgrammer?
