if you use global in a Function / Method there are actually 2 different possibilities:
Static or Const
If you have global varname = XXX in a line it will end up as const at least on object. The new will not be reexecuted.
If you want the newe to be reexecuted, use global var and the initialization in a different line
Static or Const
If you have global varname = XXX in a line it will end up as const at least on object. The new will not be reexecuted.
If you want the newe to be reexecuted, use global var and the initialization in a different line