In the pseudocode below, how would you get the behaviour we want and avoid a spillage for a container that has a capacity of 1000?
Set contents to 100
Set capacity to 1000
Set pigmentamount to 100
Set full to False
Repeat until full is True
Add pigmentamount to contents
Stir
If contents > capacity then set full to True
End repeat