abstract build abstract object supplier object client client classifi supplier classifi illeg argument except supplier client abstract classifi client equal supplier illeg argument except supplier client differ element abstract abstract creat abstract abstract set abstract client add classifi client abstract supplier add classifi supplier abstract 