code: protected function fixTree(array $data)/*# : array */
      {
          $result = [];
          foreach ($data as $k => $v) {
              $res = &$this->searchNode($k, $result);
              if (is_array($v) && is_array($res)) {
                  $res = array_replace_recursive($res, $this->fixTree($v));
              } else {
                  $res = $v;
              }
          }
          return $result;
      }
docs: Fix array, convert flat name to tree node name
  
  @param  array $data
  @return array
  @access protected