What does _layoutCandidates mean?
BTW, we don't use `_` for function naming in this file even it is a private function, please keep it consistent.