remove simple delegate and manually delegate