type Arr = array<u32, 50>;

struct Buf {
  count : u32;
  data : Arr;
}

@group(0) @binding(0) var<storage, read_write> b : Buf;

@stage(compute) @workgroup_size(1)
fn main() {
  var i : u32 = 0u;
  loop {
    if ((i >= b.count)) {
      break;
    }
    let p : ptr<storage, u32, read_write> = &(b.data[i]);
    if (((i % 2u) == 0u)) {
      continue;
    }
    *(p) = 0u;

    continuing {
      *(p) = (*(p) * 2u);
      i = (i + 1u);
    }
  }
  return;
}
