úÎO6    Ross Meikleham BSD-style RossMeikleham@hotmail.co.uk provisionalportableSafeThe . type encapsulates a value. A value of type  a) either contains a "clean" value of type a (represented as  a,), or it contains a "dirty" value of type a (represented as  a). The „ type is also a monad. Once the "dirty" state has been reached, and clean operations performed themselves create a "dirty" value. Returns  * iff its argument is of the form 'Clean _.Returns  + iff its argument is of the form Dirty _. Extracts from a list of  all the  elements. All the ! elements are extracted in order.Extracts from a list of  all the  elements. All the ! elements are extracted in order.Partitions a list of  into two lists. All the [ elements are extracted, in order, to the first component of the output. Similarly the > elements are extracted to the second component of the output. !Extract the value contained in a  type    Ross Meikleham BSD-style RossMeikleham@hotmail.co.uk provisionalportableSafe is a monad transformed of  Lift a  into an           Taint_EqXsMSp5Pk83dqLBAwiH3j Data.TaintedControl.Monad.Trans.TaintedTaintedDirtyCleanisCleanisDirtycleansdirtyspartitionTaintsTaintedT runTainted hoistTaintedghc-prim GHC.TypesTrue extractTaint$fMonadTainted$fApplicativeTainted$fFunctorTainted$fMonadTransTaintedT$fMonadTaintedT$fApplicativeTaintedT$fFunctorTaintedT