this bug explains the difference between .copy() and copy.copy()