I'm creating a delegate with weak reference and need to go through the couple of completions(closures) then `delegate` becomes nil. When I remove the `weak` reference it works fine. 

```
weak var contentDelegate: ContentDelegate?

```

Actually is it allow to create a delegate property without `weak` reference in swift best practices? What are the drawbacks?