docs: @SuppressWarnings("unchecked")
      static <T extends Type> T decodeStaticArray(
              String input, int offset, TypeReference<T> typeReference, int length) {
  
          BiFunction<List<T>, String, T> function = (elements, typeName) -> {
              if (elements.isEmpty()) {
                  throw new UnsupportedOperationException("Zero length fixed array is invalid type");
              } else {
                  return instantiateStaticArray(typeReference, elements, length);
              }
          };
  
          return decodeArrayElements(input, offset, typeReference, length, function);
      }