now functional, random testing