One thing that’s horrible about working on a product this long is being deeply aware of every reasonable and hard to handle exception that exits in the real world. Building an accurate domain model that can be broadly applied is devilishly challenging.