I do not understand why you convert the number to U8, leaving you only 8 elements for the resulting array if you later want to replace element #12.
Whay don't you just remove the "to U8" node, and you'll have 32 booleans in the resulting array to fiddle with. It does not make much sense to create an arbitrary length boolean array from an unsigned integer input with defined width. (If you only need 16 booleans in the array, replace it with "To U16").