Hi David, Thanks for the missing attachments, I've tested the system with full assertion checking and indeed the reimplementation I made did fix the postcondition violation, however I had to change the calls to l_ev_viewport_1.set_item_width and height as the values they were passing in were invalid as they were smaller than the minimum size of its item so I passed in the item's minimum size in instead.