- First point does perfect makes sense.
- Second one: I understand that we need to configure and setting up constraints for the cell in order to be able to tell the auto layout engine what the cell looks like but didn't we already done this in ```tableView:cellForRowAtIndexPath:``` method? I thought that the method for calculating the height (```tableView:heightForRowAtIndexPath```) was able to get what cell is working on from ```indexPath``` argument and then automatically calculate the height for that cell. I thought that we've already configure the cell and its constraints in ```tableView:cellForRowAtIndexPath:``` method and so ```tableView:heightForRowAtIndexPath``` have **already** that cell.

Sorry for all of that, I just trying to understand how it works instead of using code that just works.
Hope to have explained myself.