make dispatch stuff much simpler