Changed class names.  Added requirements