Is it possible that protocols will be nil here?