import numpy as np
# Create a 6x3 NumPy array Z with random integers 0 or 1
Z = np.random.randint(0,2,(6,3))
# Convert Z to a contiguous array and view it as a byte array
T = np.ascontiguousarray(Z).view(np.dtype((np.void, Z.dtype.itemsize * Z.shape[1])))
# Find unique rows in T and their indices
_, idx = np.unique(T, return_index=True)
uZ = Z[idx]
print(uZ)