(List
  (Com {[LIT_OTHER ":"]}  )
  (= scope=<EAssignScope.GLOBAL 1> flags=0 words=[] bindings=[('sanitize_diff_raw', {[SQ <LIT_CHARS "/^:/s/ ">] [DQ [VarSub _x40]] [SQ <LIT_CHARS " ">] [DQ [VarSub _x40]] [SQ <LIT_CHARS " \\([A-Z]\\)[0-9]*\t/ X X \\1#\t/">]})])
  (FunctionDef compare_diff_raw []
    (List
      (Com {[LIT_CHARS sed]} {[LIT_CHARS -e]} {[DQ [VarSub sanitize_diff_raw]]}
        <
        (FilenameRedirectNode filename={[DQ [VarSub 1]]} <REDIR_LESS "<"> 0),
        (FilenameRedirectNode filename={[LIT_CHARS .tmp-1]} <REDIR_GREAT ">"> 1),
        >
      )
      (Com {[LIT_CHARS sed]} {[LIT_CHARS -e]} {[DQ [VarSub sanitize_diff_raw]]}
        <
        (FilenameRedirectNode filename={[DQ [VarSub 2]]} <REDIR_LESS "<"> 0),
        (FilenameRedirectNode filename={[LIT_CHARS .tmp-2]} <REDIR_GREAT ">"> 1),
        >
      )
      (AndOr OP_AND_IF
        (Com {[LIT_CHARS test_cmp]} {[LIT_CHARS .tmp-1]} {[LIT_CHARS .tmp-2]}        )
        (Com {[LIT_CHARS rm]} {[LIT_CHARS -f]} {[LIT_CHARS .tmp-1]} {[LIT_CHARS .tmp-2]}        )
      )
    )
  )
  (= scope=<EAssignScope.GLOBAL 1> flags=0 words=[] bindings=[('sanitize_diff_raw_z', {[SQ <LIT_CHARS "/^:/s/ ">] [DQ [VarSub _x40]] [SQ <LIT_CHARS " ">] [DQ [VarSub _x40]] [SQ <LIT_CHARS " \\([A-Z]\\)[0-9]*$/ X X \\1#/">]})])
  (FunctionDef compare_diff_raw_z []
    (List
      (Pipeline
        (Com {[LIT_CHARS perl]} {[LIT_CHARS -pe]} {[SQ <LIT_CHARS "y/\\000/\\012/">]}
          <
          (FilenameRedirectNode filename={[DQ [VarSub 1]]} <REDIR_LESS "<"> 0),
          >
        )
        (Com {[LIT_CHARS sed]} {[LIT_CHARS -e]} {[DQ [VarSub sanitize_diff_raw_z]]}
          <
          (FilenameRedirectNode filename={[LIT_CHARS .tmp-1]} <REDIR_GREAT ">"> 1),
          >
        )
      )
      (Pipeline
        (Com {[LIT_CHARS perl]} {[LIT_CHARS -pe]} {[SQ <LIT_CHARS "y/\\000/\\012/">]}
          <
          (FilenameRedirectNode filename={[DQ [VarSub 2]]} <REDIR_LESS "<"> 0),
          >
        )
        (Com {[LIT_CHARS sed]} {[LIT_CHARS -e]} {[DQ [VarSub sanitize_diff_raw_z]]}
          <
          (FilenameRedirectNode filename={[LIT_CHARS .tmp-2]} <REDIR_GREAT ">"> 1),
          >
        )
      )
      (AndOr OP_AND_IF
        (Com {[LIT_CHARS test_cmp]} {[LIT_CHARS .tmp-1]} {[LIT_CHARS .tmp-2]}        )
        (Com {[LIT_CHARS rm]} {[LIT_CHARS -f]} {[LIT_CHARS .tmp-1]} {[LIT_CHARS .tmp-2]}        )
      )
    )
  )
  (FunctionDef compare_diff_patch []
    (List
      (Com {[LIT_CHARS sed]} {[LIT_CHARS -e]} {[SQ <LIT_CHARS "\n"> <LIT_CHARS "\t/^[dis]*imilarity index [0-9]*%$/d\n"> <LIT_CHARS "\t/^index [0-9a-f]*\\.\\.[0-9a-f]/d\n"> <LIT_CHARS "    ">]}
        <
        (FilenameRedirectNode filename={[DQ [VarSub 1]]} <REDIR_LESS "<"> 0),
        (FilenameRedirectNode filename={[LIT_CHARS .tmp-1]} <REDIR_GREAT ">"> 1),
        >
      )
      (Com {[LIT_CHARS sed]} {[LIT_CHARS -e]} {[SQ <LIT_CHARS "\n"> <LIT_CHARS "\t/^[dis]*imilarity index [0-9]*%$/d\n"> <LIT_CHARS "\t/^index [0-9a-f]*\\.\\.[0-9a-f]/d\n"> <LIT_CHARS "    ">]}
        <
        (FilenameRedirectNode filename={[DQ [VarSub 2]]} <REDIR_LESS "<"> 0),
        (FilenameRedirectNode filename={[LIT_CHARS .tmp-2]} <REDIR_GREAT ">"> 1),
        >
      )
      (AndOr OP_AND_IF
        (Com {[LIT_CHARS test_cmp]} {[LIT_CHARS .tmp-1]} {[LIT_CHARS .tmp-2]}        )
        (Com {[LIT_CHARS rm]} {[LIT_CHARS -f]} {[LIT_CHARS .tmp-1]} {[LIT_CHARS .tmp-2]}        )
      )
    )
  )
)