counter uses lock now