overrid subclass valid offend expect type param dm offend aka design materi check argument object dm 