         t cmwc b>> - 32 bits t!
     ] when
 
-    cmwc [ r>> t - 32 bits dup ] [ i>> ] [ Q>> ] tri set-nth ;
+    cmwc [ r>> t - 32 bits dup ] [ i>> ] [ Q>> ] tri set-nth-unsafe ;
 
 : cmwc-4096 ( -- cmwc )
     4096

M:: cmwc random-32* ( cmwc -- n )
    cmwc dup mod>> '[ 1 + _ bitand ] change-i
    [ a>> ]
    [ [ i>> ] [ Q>> ] bi nth * ]
    [ c>> + ] tri :> t!

    t -32 shift cmwc (>>c)

        swap >>a
        swap [ 1 - >>i ] [ <uint-array> >>Q ] bi
        dup b>> 1 - >>r
        dup Q>> length 1 - >>mod ; inline

: <cmwc-seed> ( Q c -- cmwc-seed )
    cmwc-seed boa ; inline
