add michael's correctness tests