 		return "(*)"
 	}
 	
-	private static func create(blind : A) -> Blind<A> {
-		return Blind(blind)
-	}
-	
 	public static var arbitrary : Gen<Blind<A>> {
-		return A.arbitrary.fmap(Blind.create)
+		return Blind.init <^> A.arbitrary
 	}
 	
 	public static func shrink(bl : Blind<A>) -> [Blind<A>] {
-		return A.shrink(bl.getBlind).map(Blind.create)
+		return A.shrink(bl.getBlind).map(Blind.init)
 	}
 }
 

	
	public var description : String {
		return "\(self.getSet)"
	}
	
	private static func create(set : Set<A>) -> SetOf<A>{
		return SetOf(set)
	}
	
	public static var arbitrary : Gen<SetOf<A>> {

		return "Static( \(self.getStatic) )"
	}
	
	public static var arbitrary : Gen<Static<A>> {
		return Static.init <^> A.arbitrary
	}
}

