distinguish two functions with different purpose just by there names is not a good idea (see l. 111). I would move these two-liners into the update functions (as one would expect an update function to iterate over all the effected elements).