s2' = 40692 * (s2 - k' * 52774) - k' * 3791
s2'' = if s2' < 0 then s2' + 2147483399 else s2'
-#ifdef __HUGS__
stdSplit :: StdGen -> (StdGen, StdGen)
stdSplit std@(StdGen s1 s2)
= (left, right)
| otherwise = s2 - 1
StdGen t1 t2 = snd (next std)
-#else
-stdSplit :: StdGen -> (StdGen, StdGen)
-stdSplit std@(StdGen s1 _) = (std, unsafePerformIO (mkStdRNG (fromInt s1)))
-#endif
\end{code}