Generic loop in array doesn't give expected result

Hello, i am trying to loop on an array , get all items and put them in a set inside an update.
I have an query which gives me exactly this result:
[
{
“name”: obama,
“size”: 12
},
{
“name”: donald,
“size”: 33
},
{
“name”: biden,
“size”: 16
}
]
let’s name it “result1”
Now i am trying to loop over it to get all items iside array and put them inside another thing like this:

UPDATE country
SET presidents_data = array_append(presidents_data, result1[*])
WHERE true
I expected presidents_data to have this:
[

{
“name”: obama,
“size”: 12
},
{
“name”: donald,
“size”: 33
},
{
“name”: biden,
“size”: 16
}
]
but i got this:
[

{
“name”: [
“obama”,
“donald”,
“biden”
],
“size”: [
12,
33,
16
]
}
]

UPDATE `country`
SET presidents_data = array_CONCAT(presidents_data, result1)
WHERE true