diff --git a/scalacheck-testcases/RedBlackTree.scala b/scalacheck-testcases/RedBlackTree.scala
index 30bbb9222974b553877602740727c2e3febaae8f..1a03cecd9f8b2dbd282a15e3b94bf1c2d51a1c07 100644
--- a/scalacheck-testcases/RedBlackTree.scala
+++ b/scalacheck-testcases/RedBlackTree.scala
@@ -100,16 +100,26 @@ object RedBlackTree {
   def main(args: Array[String]): Unit = {
     val iter = (new Iterator[Tree] {
       private var counter = 0
-      def hasNext : Boolean = true || counter < 10
+      def hasNext : Boolean = counter < 1000
       def next : Tree = { counter += 1; genTree.sample.get }
     })
 
-    val s = scala.collection.mutable.Set[Int]()
-
-    for (t <- iter if isRedBlackTree(t)) {
+    val sizes = scala.collection.mutable.Map[Int, Int]()
+    var totalCount = 0
+    var rbtCount = 0
+
+    for (t <- iter) {
+      totalCount += 1
+      if (isRedBlackTree(t)) {
+        rbtCount += 1
+        val s = size(t)
+        sizes += ((s, sizes.getOrElse(s, 0) + 1))
+      }
       //println("Here is a tree : " + t)
-      s += (size(t))
-      println(s)
     }
+    println("rbt count: " + rbtCount)
+    println("total count: " + totalCount)
+    println("ratio of red-black trees: " + (rbtCount.toDouble / totalCount))
+    println("unique sizes of generated trees: " + sizes)
   }
 }