It's really weird to keep state here.