placed reset and update rule functions inline, simple fix for needing a dispatcher for ui