Optional

tags: Optional

Let's use Optional to fix our method contract.