Подскажите пожалуйста, что-то не понимаю как так происходит. Почему массив output вроде как не стал новым, а привязался к array1
main() {
List<String> array1 = ["John", "Bob", "Fred", "June", "Tom"];
List<String> array2 = ["House", "Flat", "Bungalow"];
var output = array1;
var array2_new = array2;
output.addAll(array2_new);
print(output);
print("WTF");
array1.addAll(array2);
print(array1);
print(array2);
print(output);
}
В первом выводе output отличается от того, что в последнем