Before protocol and delegate.