numpyのunique()メソッドの挙動が全く分からず困っています。

import numpy as np
list_with_dupes = [1,5,6,2,5,6,8,3,8,3,3,7,9]
#(array([1, 2, 3, 5, 6, 7, 8, 9])重複が取り除かれたインデックス?を返す
print(np.unique(list_with_dupes, return_index=True))
array_with_dupes = np.array([[1,5,7,3,9,11,23],[2,4,6,8,2,8,4]])
print(np.unique(array_with_dupes))

2つの集合からunique()メソッドを使いprintすると答えとしてこのような値になるようです。

#array([ 0,  3,  7,  1,  2, 11,  6, 12], dtype=int64))
#[ 1  2  3  4  5  6  7  8  9 11 23]

array([ 0, 3, 7, 1, 2, 11, 6, 12], dtype=int64))の答えになる意味がわかないのですが教えていただけないでしょうか?