Re-adds proper exception and arg passing