Can anybody help me I am new to javascript. I am not able to understand the below line of code. I spend hours to debug this code but I am not able to rectify.

```
var data = [
    {"name":"123123123123"},
    {"name":"123123123124"},
    {"name":"123123123125"},
    {"name":"123123123126"}
];
var x1 = {}
var basicS = {
    "question":[]
}
data.forEach(function(val,i){
   x1[val.name]=basicS;
});

console.log(x1);
data.forEach(function(val,i){
 x1[val.name].question.push('insert');
});
console.log(x1);

```

Output:

```
{
 123123123123:{
    question:[
      0:"insert"
      1:"insert"
      2:"insert"
      3:"insert"
    ]
},
123123123124:{
    question:[
      0:"insert"
      1:"insert"
      2:"insert"
      3:"insert"
    ]
},
123123123125:{
    question:[
      0:"insert"
      1:"insert"
      2:"insert"
      3:"insert"
    ]
},
123123123126:{
    question:[
      0:"insert"
      1:"insert"
      2:"insert"
      3:"insert"
    ]
}
}

```

Expected Output should be:

```
{
  123123123123:{
    question:[
      0:"insert"
    ]
},
123123123124:{
    question:[
      0:"insert"
    ]
},
123123123125:{
    question:[
      0:"insert"
              ]
},
123123123126:{
    question:[
      0:"insert"
    ]
}
}

```

Not able to understand from where four values are inserted inside the each question array while i am inserting only one in each question 
array object. 

Is there any alternative to solve this type of prblem.

Please help me out. I am totally confused. Thanks in advance.