Good catch.

Felkk, the way this is working is that the ModuleSettingsInitialize() initializes the UAVO in system memory. Technically, it doesn't matter where it gets done, so long as it gets done before line 103 is evaluated. However, this is then a race condition. Much better to place ModuleSettingsInitialize as peabody124 suggests.

The question then is, "What happens if I initialize a UAVO in multiple modules?" The answer is nothing happens. Only the first one counts, the rest are ignored. So don't hesitate to initialize all UAVOs in a module, as the redundancy at worst is ignored and at best protects you from unwittingly being dependent on another module.