now tracks states by user id