integrated user event hooks and overloaded comparison operators