anchor.diff:      let rand = new Random()
   
       let excludeNumber n = seq { for i in 1..6 do if i <> n then yield i }
  -
  +    let excludeNumbers ns = seq { for i in 1..6 do if ns |> List.forall (fun x -> x <> i) 
  +                                                   then yield i }
       let removeNth l n = l 
                           |> List.fold (fun (nth, i, acc) elem -> 
                                           let acc' = match nth = i with 
  
positive.code:         }
          g |> Arb.fromGen
  
  type OneOrFiveRollPropertyAttribute () =
      inherit PropertyAttribute (
          Arbitrary = [| typeof<OneOrFiveRoll> |])
  
negative.code:                 n :: (nextDie (rem-1) (removeNth avail i))
          nextDie 6 pool
  
  type ThreeOfAKindWithNoMorePoints =
      static member Roll() =
          let g = gen {
              let! n = Gen.choose (1,6)
              let pool = [n; 1; 5] |> Common.excludeNumbers |> Seq.toList
              let rest = pool @ pool |> Common.randomizeOrder |> Seq.take 3 |> Seq.toList
              let roll = n :: n :: n :: rest |> Common.randomizeOrder
              return (n, roll)
          } 
          g |> Arb.fromGen
  
  
  
  type ZonkRoll = 
      static member Roll() =
          let g = gen {
  