with reference delegate version 1