Write a function that takes two arguments, and returns a new array populated with the elements **that only appear once, in either one array or the other, taken only once**; display order should follow what appears in arr1 first, then arr2: 

```python
hot_singles([1, 2, 3, 3], [3, 2, 1, 4, 5]) # [4, 5]
hot_singles(["tartar", "blanket", "cinnamon"], ["cinnamon", "blanket", "domino"]) # ["tartar", "domino"]
hot_singles([77, "ciao"], [78, 42, "ciao"]) # [77, 78, 42]
hot_singles([1, 2, 3, 3], [3, 2, 1, 4, 5, 4]) # [4,5]
```

SPECIAL THANKS: @JulianKolbe !

Difficulty: introductory

Starter code:

def hot_singles(arr1, arr2):
	

Solutions:
def hot_singles(arr1, arr2):
    a = []
    for x in arr1 + arr2:
        if x in set(arr1) ^ set(arr2) and x not in a: a.append(x)
    return a

from collections import OrderedDict
from itertools import chain


def hot_singles(arr1, arr2):
    diff = set(arr1).symmetric_difference(arr2)
    return [a for a in OrderedDict.fromkeys(chain(arr1, arr2)) if a in diff]

def hot_singles(lst1, lst2):
    return sorted(set(lst1) ^ set(lst2), key=(lst1 + lst2).index)

def ordered(l, arr1,arr2):
    return [l,arr2.index(l) + len(arr1) if l in arr2 else arr1.index(l)]

def hot_singles(arr1, arr2):
    L = [ ordered(l,arr1,arr2) for l in set(arr1) ^ set(arr2)]
    return list(map(lambda l: l[0], sorted(L , key=lambda l: l[1])))

def hot_singles(arr1, arr2):
    vals = arr1 + arr2
    return sorted(set(arr1).symmetric_difference(arr2), key=vals.index)


def hot_singles(arr1, arr2):
    result = []
    for i in arr1:
        if i not in arr2 and i not in result:
            result.append(i)
    for i in arr2:
        if i not in arr1 and i not in result:
            result.append(i)
            
    return result
    #your code here


hot_singles=lambda a,b:sorted(set(a)^set(b),key=(a+b).index)

hot_singles=lambda A,B:sorted(set(A)^set(B),key=(A+B).index)

def hot_singles(arr1, arr2):
    return sorted(set(arr1).symmetric_difference(set(arr2)), key=(arr1+arr2).index)

def hot_singles(arr1, arr2):
    return sorted(set(arr1) ^ set(arr2), key=lambda x: ((arr1+arr2).index(x)))