added multi delegate support