adjusted the delegate boilerplate code