object state machin object handl handl state state handl state machin handl transit transit handl state machin invalid object except invalid element except illeg argument object handl 