hunk.code_window: const MetaProvider: Component<{ tags?: Array<TagDescription> }> = props => {
     const indices = new Map(),
       [state, setState] = createState<{ [k: string]: (string | null)[] }>({});
     onMount(() => {
       const ssrTags = document.head.querySelectorAll(`[data-rh=""]`);
       // `forEach` on `NodeList` is not supported in Googlebot, so use a workaround
       Array.prototype.forEach.call(ssrTags, (ssrTag: Node) => ssrTag.parentNode!.removeChild(ssrTag));
     });
  
hunk.labels: keep keep keep keep keep replace keep keep keep
hunk.after_edit:     const ssrTags = document.head.querySelectorAll(`[data-sm=""]`);
  
hunk.file_path: packages/solid-meta/src/index.tsx
hunk.type: replace
file: import { untrack } from "solid-js";
  
  export function reduceArray<T, U>(
    fn: (memo: U, value: T, i: number) => U,
    seed: U
  ): (list: () => T[]) => () => U;
  export function reduceArray<T, U>(
    list: () => T[],
    fn: (memo: U, value: T, i: number) => U,
    seed: U
  ): () => U;
  export function reduceArray<T, U>(list: any, fn: any, seed?: any): any {
    if (arguments.length < 3) {
      seed = fn;
      fn = list;
      return reducer;
    }
    return reducer(list);
  
    function reducer(list: () => T[]) {
      return () => {
        let newList = list() || [],
          result = seed;
        return untrack(() => {
          for (let i = 0; i < newList.length; i++) {
            result = fn(result, newList[i], i);
          }
          return result;
        });
      };
    }
  }