removing use of delegate