implement the EM tutorial example