add callbacks directly on object