integrated the shape classes