withdelegate:adelegateobject