Shallow Copy Stops At One Level

import copy

board = [[1, 2], [3, 4]]
shallow = board.copy()
deep = copy.deepcopy(board)

shallow[0].append(99)
deep[1].append(100)

print(board)
print(shallow)
print(deep)

What does this print?

A

[[1, 2], [3, 4, 100]] [[1, 2, 99], [3, 4]] [[1, 2], [3, 4, 100]]

B

[[1, 2, 99], [3, 4]] [[1, 2, 99], [3, 4]] [[1, 2], [3, 4, 100]]

C

[[1, 2, 99], [3, 4, 100]] [[1, 2, 99], [3, 4]] [[1, 2], [3, 4, 100]]

D

[[1, 2], [3, 4]] [[1, 2, 99], [3, 4]] [[1, 2], [3, 4, 100]]