------
## 最终结论
```python
def find_free_rows_and_columns(matrix, n, m):
    free_rows = set(range(n))
    free_cols = set(range(m))

    for i in range(n):
        for j in range(m):
            if matrix[i][j] == 1:
                if i in free_rows:
                    free_rows.remove(i)
                if j in free_cols:
                    free_cols.remove(j)

    return list(free_rows), list(free_cols)

def calculate_moves(free_rows, free_cols):
    return min(len(free_rows), len(free_cols))

def determine_winner(moves):
    return "Ashish" if moves % 2 == 1 else "Vivek"

# Read input data
t = int(input().strip())
test_cases = []
for _ in range(t):
    n, m = map(int, input().strip().split())
    matrix = [list(map(int, input().strip().split())) for _ in range(n)]
    test_cases.append((n, m, matrix))

# Process each test case
results = []
for n, m, matrix in test_cases:
    free_rows, free_cols = find_free_rows_and_columns(matrix, n, m)
    moves = calculate_moves(free_rows, free_cols)
    winner = determine_winner(moves)
    results.append(winner)

# Print results
for result in results:
    print(result)
```