removed user code to let clients handle