code: private function subfieldConflicts(
          array $conflicts,
          $responseName,
          FieldNode $ast1,
          FieldNode $ast2
      ) {
          if (count($conflicts) === 0) {
              return null;
          }
  
          return [
              [
                  $responseName,
                  array_map(
                      static function ($conflict) {
                          return $conflict[0];
                      },
                      $conflicts
                  ),
              ],
              array_reduce(
                  $conflicts,
                  static function ($allFields, $conflict) {
                      return array_merge($allFields, $conflict[1]);
                  },
                  [$ast1]
              ),
              array_reduce(
                  $conflicts,
                  static function ($allFields, $conflict) {
                      return array_merge($allFields, $conflict[2]);
                  },
                  [$ast2]
              ),
          ];
      }
docs: Given a series of Conflicts which occurred between two sub-fields, generate
  a single Conflict.
  
  @param mixed[][] $conflicts
  @param string    $responseName
  
  @return mixed[]|null