protected function getMapSchoolsProgramIds() {
    $map = [];

    $cid = __METHOD__;
    if ($cache = $this->cache->get($cid)) {
      return $cache->data;
    }

    $programs = $this->getAllChildCarePrograms();
    foreach ($programs as $program) {
      $schools = $this->scrapeDaxkoSchoolsByProgram($program->id);
      $schools_data = $schools->each(function ($item) {
        return [
          'name' => $item->text(),
          'id' => $this->getQueryParam('location_id', $item->attr('href')),
        ];
      });

      foreach ($schools_data as $school) {
        $map[$program->id][$school['id']] = $school;
      }
    }

    $this->cache->set($cid, $map);
    return $map;
  }