should be done with object