making Delegate methods optional