uses System.Generics.Collections;
var
Numbers, Unique: TArray<Integer>;
Seen: TDictionary<Integer, Boolean>;
Number: Integer;
begin
Numbers := [1, 3, 2, 1, 3];
//dictionary keys work as a set
Seen := TDictionary<Integer, Boolean>.Create;
Unique := [];
for Number in Numbers do
if Seen.TryAdd(Number, True) then
Unique := Unique + [Number];
//unique is [1, 3, 2]
for Number in Unique do
Write(Number, ' ');
WriteLn;
end.