oilshell.org

Side By Side Lines Parsed? Parse Process Time (secs) Translated? Filename
view 202 OK 0.287648 FAIL aequorea
view 163 OK 0.244729 FAIL breezy
view 168 OK 0.246376 FAIL dapper
view 187 OK 0.253573 FAIL edgy
view 190 OK 0.268512 FAIL feisty
view 230 OK 0.310134 FAIL gutsy
view 179 OK 0.289421 FAIL hoary
view 159 OK 0.252717 FAIL hoary.buildd
view 104 OK 0.187898 FAIL potato
view 218 OK 0.31406 FAIL sarge
view 166 OK 0.253247 FAIL sarge.buildd
view 171 OK 0.258994 FAIL sarge.fakechroot
view 214 OK 0.283281 FAIL sid
view 166 OK 0.269407 FAIL warty
view 159 OK 0.260386 FAIL warty.buildd
view 203 OK 0.305415 FAIL woody
view 166 OK 0.252583 FAIL woody.buildd

stderr

Translating aequorea
        Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 358, in <module>
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 301, in main
    return AppBundleMain(argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 272, in AppBundleMain
    return OshCommandMain(main_argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 156, in OshCommandMain
    osh2oil.PrintAsOil(arena, node)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 80, in PrintAsOil
    fixer.DoCommand(node, None, at_top_level=True)  # no local symbols yet
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 572, in DoCommand
    self.DoCommand(child, local_symbols, at_top_level=at_top_level)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 739, in DoCommand
    self.DoCommand(child, new_local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 635, in DoCommand
    self.DoRedirect(r, local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 344, in DoRedirect
    raise AssertionError(node.__class__.__name__)
AssertionError: redir

        
Translating gutsy
        Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 358, in <module>
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 301, in main
    return AppBundleMain(argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 272, in AppBundleMain
    return OshCommandMain(main_argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 156, in OshCommandMain
    osh2oil.PrintAsOil(arena, node)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 80, in PrintAsOil
    fixer.DoCommand(node, None, at_top_level=True)  # no local symbols yet
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 572, in DoCommand
    self.DoCommand(child, local_symbols, at_top_level=at_top_level)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 739, in DoCommand
    self.DoCommand(child, new_local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 635, in DoCommand
    self.DoRedirect(r, local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 344, in DoRedirect
    raise AssertionError(node.__class__.__name__)
AssertionError: redir

        
Translating woody.buildd
        Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 358, in <module>
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 301, in main
    return AppBundleMain(argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 272, in AppBundleMain
    return OshCommandMain(main_argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 156, in OshCommandMain
    osh2oil.PrintAsOil(arena, node)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 80, in PrintAsOil
    fixer.DoCommand(node, None, at_top_level=True)  # no local symbols yet
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 572, in DoCommand
    self.DoCommand(child, local_symbols, at_top_level=at_top_level)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 739, in DoCommand
    self.DoCommand(child, new_local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 635, in DoCommand
    self.DoRedirect(r, local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 344, in DoRedirect
    raise AssertionError(node.__class__.__name__)
AssertionError: redir

        
Translating sarge.fakechroot
        Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 358, in <module>
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 301, in main
    return AppBundleMain(argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 272, in AppBundleMain
    return OshCommandMain(main_argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 156, in OshCommandMain
    osh2oil.PrintAsOil(arena, node)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 80, in PrintAsOil
    fixer.DoCommand(node, None, at_top_level=True)  # no local symbols yet
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 572, in DoCommand
    self.DoCommand(child, local_symbols, at_top_level=at_top_level)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 739, in DoCommand
    self.DoCommand(child, new_local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 635, in DoCommand
    self.DoRedirect(r, local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 344, in DoRedirect
    raise AssertionError(node.__class__.__name__)
AssertionError: redir

        
Translating hoary.buildd
        Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 358, in <module>
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 301, in main
    return AppBundleMain(argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 272, in AppBundleMain
    return OshCommandMain(main_argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 156, in OshCommandMain
    osh2oil.PrintAsOil(arena, node)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 80, in PrintAsOil
    fixer.DoCommand(node, None, at_top_level=True)  # no local symbols yet
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 572, in DoCommand
    self.DoCommand(child, local_symbols, at_top_level=at_top_level)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 739, in DoCommand
    self.DoCommand(child, new_local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 635, in DoCommand
    self.DoRedirect(r, local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 344, in DoRedirect
    raise AssertionError(node.__class__.__name__)
AssertionError: redir

        
Translating warty
        Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 358, in <module>
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 301, in main
    return AppBundleMain(argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 272, in AppBundleMain
    return OshCommandMain(main_argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 156, in OshCommandMain
    osh2oil.PrintAsOil(arena, node)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 80, in PrintAsOil
    fixer.DoCommand(node, None, at_top_level=True)  # no local symbols yet
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 572, in DoCommand
    self.DoCommand(child, local_symbols, at_top_level=at_top_level)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 739, in DoCommand
    self.DoCommand(child, new_local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 635, in DoCommand
    self.DoRedirect(r, local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 344, in DoRedirect
    raise AssertionError(node.__class__.__name__)
AssertionError: redir

        
Translating edgy
        Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 358, in <module>
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 301, in main
    return AppBundleMain(argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 272, in AppBundleMain
    return OshCommandMain(main_argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 156, in OshCommandMain
    osh2oil.PrintAsOil(arena, node)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 80, in PrintAsOil
    fixer.DoCommand(node, None, at_top_level=True)  # no local symbols yet
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 572, in DoCommand
    self.DoCommand(child, local_symbols, at_top_level=at_top_level)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 739, in DoCommand
    self.DoCommand(child, new_local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 635, in DoCommand
    self.DoRedirect(r, local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 344, in DoRedirect
    raise AssertionError(node.__class__.__name__)
AssertionError: redir

        
Translating sid
        Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 358, in <module>
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 301, in main
    return AppBundleMain(argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 272, in AppBundleMain
    return OshCommandMain(main_argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 156, in OshCommandMain
    osh2oil.PrintAsOil(arena, node)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 80, in PrintAsOil
    fixer.DoCommand(node, None, at_top_level=True)  # no local symbols yet
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 572, in DoCommand
    self.DoCommand(child, local_symbols, at_top_level=at_top_level)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 739, in DoCommand
    self.DoCommand(child, new_local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 635, in DoCommand
    self.DoRedirect(r, local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 344, in DoRedirect
    raise AssertionError(node.__class__.__name__)
AssertionError: redir

        
Translating woody
        Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 358, in <module>
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 301, in main
    return AppBundleMain(argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 272, in AppBundleMain
    return OshCommandMain(main_argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 156, in OshCommandMain
    osh2oil.PrintAsOil(arena, node)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 80, in PrintAsOil
    fixer.DoCommand(node, None, at_top_level=True)  # no local symbols yet
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 572, in DoCommand
    self.DoCommand(child, local_symbols, at_top_level=at_top_level)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 739, in DoCommand
    self.DoCommand(child, new_local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 635, in DoCommand
    self.DoRedirect(r, local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 344, in DoRedirect
    raise AssertionError(node.__class__.__name__)
AssertionError: redir

        
Translating breezy
        Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 358, in <module>
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 301, in main
    return AppBundleMain(argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 272, in AppBundleMain
    return OshCommandMain(main_argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 156, in OshCommandMain
    osh2oil.PrintAsOil(arena, node)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 80, in PrintAsOil
    fixer.DoCommand(node, None, at_top_level=True)  # no local symbols yet
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 572, in DoCommand
    self.DoCommand(child, local_symbols, at_top_level=at_top_level)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 739, in DoCommand
    self.DoCommand(child, new_local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 635, in DoCommand
    self.DoRedirect(r, local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 344, in DoRedirect
    raise AssertionError(node.__class__.__name__)
AssertionError: redir

        
Translating sarge.buildd
        Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 358, in <module>
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 301, in main
    return AppBundleMain(argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 272, in AppBundleMain
    return OshCommandMain(main_argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 156, in OshCommandMain
    osh2oil.PrintAsOil(arena, node)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 80, in PrintAsOil
    fixer.DoCommand(node, None, at_top_level=True)  # no local symbols yet
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 572, in DoCommand
    self.DoCommand(child, local_symbols, at_top_level=at_top_level)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 739, in DoCommand
    self.DoCommand(child, new_local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 635, in DoCommand
    self.DoRedirect(r, local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 344, in DoRedirect
    raise AssertionError(node.__class__.__name__)
AssertionError: redir

        
Translating sarge
        Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 358, in <module>
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 301, in main
    return AppBundleMain(argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 272, in AppBundleMain
    return OshCommandMain(main_argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 156, in OshCommandMain
    osh2oil.PrintAsOil(arena, node)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 80, in PrintAsOil
    fixer.DoCommand(node, None, at_top_level=True)  # no local symbols yet
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 572, in DoCommand
    self.DoCommand(child, local_symbols, at_top_level=at_top_level)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 739, in DoCommand
    self.DoCommand(child, new_local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 635, in DoCommand
    self.DoRedirect(r, local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 344, in DoRedirect
    raise AssertionError(node.__class__.__name__)
AssertionError: redir

        
Translating feisty
        Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 358, in <module>
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 301, in main
    return AppBundleMain(argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 272, in AppBundleMain
    return OshCommandMain(main_argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 156, in OshCommandMain
    osh2oil.PrintAsOil(arena, node)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 80, in PrintAsOil
    fixer.DoCommand(node, None, at_top_level=True)  # no local symbols yet
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 572, in DoCommand
    self.DoCommand(child, local_symbols, at_top_level=at_top_level)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 739, in DoCommand
    self.DoCommand(child, new_local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 635, in DoCommand
    self.DoRedirect(r, local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 344, in DoRedirect
    raise AssertionError(node.__class__.__name__)
AssertionError: redir

        
Translating hoary
        Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 358, in <module>
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 301, in main
    return AppBundleMain(argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 272, in AppBundleMain
    return OshCommandMain(main_argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 156, in OshCommandMain
    osh2oil.PrintAsOil(arena, node)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 80, in PrintAsOil
    fixer.DoCommand(node, None, at_top_level=True)  # no local symbols yet
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 572, in DoCommand
    self.DoCommand(child, local_symbols, at_top_level=at_top_level)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 739, in DoCommand
    self.DoCommand(child, new_local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 635, in DoCommand
    self.DoRedirect(r, local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 344, in DoRedirect
    raise AssertionError(node.__class__.__name__)
AssertionError: redir

        
Translating potato
        Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 358, in <module>
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 301, in main
    return AppBundleMain(argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 272, in AppBundleMain
    return OshCommandMain(main_argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 156, in OshCommandMain
    osh2oil.PrintAsOil(arena, node)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 80, in PrintAsOil
    fixer.DoCommand(node, None, at_top_level=True)  # no local symbols yet
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 572, in DoCommand
    self.DoCommand(child, local_symbols, at_top_level=at_top_level)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 739, in DoCommand
    self.DoCommand(child, new_local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 635, in DoCommand
    self.DoRedirect(r, local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 344, in DoRedirect
    raise AssertionError(node.__class__.__name__)
AssertionError: redir

        
Translating warty.buildd
        Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 358, in <module>
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 301, in main
    return AppBundleMain(argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 272, in AppBundleMain
    return OshCommandMain(main_argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 156, in OshCommandMain
    osh2oil.PrintAsOil(arena, node)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 80, in PrintAsOil
    fixer.DoCommand(node, None, at_top_level=True)  # no local symbols yet
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 572, in DoCommand
    self.DoCommand(child, local_symbols, at_top_level=at_top_level)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 739, in DoCommand
    self.DoCommand(child, new_local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 635, in DoCommand
    self.DoRedirect(r, local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 344, in DoRedirect
    raise AssertionError(node.__class__.__name__)
AssertionError: redir

        
Translating dapper
        Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 358, in <module>
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 301, in main
    return AppBundleMain(argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 272, in AppBundleMain
    return OshCommandMain(main_argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 156, in OshCommandMain
    osh2oil.PrintAsOil(arena, node)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 80, in PrintAsOil
    fixer.DoCommand(node, None, at_top_level=True)  # no local symbols yet
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 572, in DoCommand
    self.DoCommand(child, local_symbols, at_top_level=at_top_level)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 739, in DoCommand
    self.DoCommand(child, new_local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 635, in DoCommand
    self.DoRedirect(r, local_symbols)
  File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 344, in DoRedirect
    raise AssertionError(node.__class__.__name__)
AssertionError: redir