let sinit strategy n f =
    let res = screate_fresh strategy n in
    for i = 0 to n - 1 do unsafe_set res i (f i) done; res