force delegate implementation