UIViewDragDropDelegate optional methods

In protocol declaration of UIViewDragDropDelegate all methods are marked as optional, but these three has to be implemented (are called without checking if implemented):

(void) view:(UIView *)view wasDroppedOnDropView:(UIView *)drop;

(void) draggingDidBeginForView:(UIView*)view;

(void) draggingDidEndWithoutDropForView:(UIView*)view;