showWArray :: UArray Int Word -> String
showWArray arr = unlines [ show i ++ ":" ++ unwords (map showH row) 
                         | (i,row) <- zip  [0,4..] elRows ]
    where showH w = -- "\t0x" ++ showHex w " "
                    printf "\t0x%08x " w
          elRows = takeEach 4 (elems arr)
showWArray :: UArray Int Word -> String
showWArray arr = unlines [ show i ++ ":" ++ unwords (map showH row) 
                         | (i,row) <- zip  [0,4..] elRows ]
    where showH w = -- "\t0x" ++ showHex w " "
                    printf "\t0x%08x " w
          elRows = takeEach 4 (elems arr)
showWArray arr = unlines [ show i ++ ":" ++ unwords (map showH row) 
                         | (i,row) <- zip  [0,4..] elRows ]
    where showH w = -- "\t0x" ++ showHex w " "
                    printf "\t0x%08x " w
          elRows = takeEach 4 (elems arr)