+getUs :: UniqSM UniqSupply
+getUs us = (us, panic "getUs: bad supply")
+
+setUs :: UniqSupply -> UniqSM ()
+setUs us old_us = ((), us)
+
+getUniqueUs :: UniqSM Unique
+getUniqueUs us = case splitUniqSupply us of
+ (us1,us2) -> (uniqFromSupply us1, us2)
+
+getUniquesUs :: Int -> UniqSM [Unique]
+getUniquesUs n us = case splitUniqSupply us of
+ (us1,us2) -> (uniqsFromSupply n us1, us2)
+\end{code}