import std.stdio;
void main() {
auto a = [1, 2, 3];
auto b = a.dup;
b[] *= 2;
writeln("a = ", a); // [1, 2, 3] // OK
writeln("b = ", b); // [2, 4, 6] // OK
auto c = [[[1, 2, 3], [4, 5, 6, 7, 8]],
[[9, 10], [11, 12, 13]]];
auto d = c.dup;
writeln("d[0][1][1 .. $ - 1] = ",
d[0][1][1 .. $ - 1]);
d[0][1][1 .. $ - 1] *= 3;
writeln("c = ", c);
// [[[1, 2, 3], [4, 15, 18, 21, 8]],
// [[9, 10], [11, 12, 13]]] // wrong
writeln("d = ", d);
// [[[1, 2, 3], [4, 15, 18, 21, 8]],
// [[9, 10], [11, 12, 13]]] // OK
}
aW1wb3J0IHN0ZC5zdGRpbzsKCnZvaWQgbWFpbigpIHsKCglhdXRvIGEgPSBbMSwgMiwgM107CglhdXRvIGIgPSBhLmR1cDsKCgliW10gKj0gMjsKCXdyaXRlbG4oImEgPSAiLCBhKTsgLy8gWzEsIDIsIDNdIC8vIE9LCgl3cml0ZWxuKCJiID0gIiwgYik7IC8vIFsyLCA0LCA2XSAvLyBPSwoKCglhdXRvIGMgPSBbW1sxLCAyLCAzXSwgWzQsIDUsIDYsIDcsIDhdXSwKCQkgIFtbOSwgMTBdLCBbMTEsIDEyLCAxM11dXTsKCglhdXRvIGQgPSBjLmR1cDsKCgl3cml0ZWxuKCJkWzBdWzFdWzEgLi4gJCAtIDFdID0gIiwKCQkgZFswXVsxXVsxIC4uICQgLSAxXSk7CgoJZFswXVsxXVsxIC4uICQgLSAxXSAqPSAzOwoKCXdyaXRlbG4oImMgPSAiLCBjKTsKCS8vIFtbWzEsIDIsIDNdLCBbNCwgMTUsIDE4LCAyMSwgOF1dLAoJLy8gIFtbOSwgMTBdLCBbMTEsIDEyLCAxM11dXSAvLyB3cm9uZwoJd3JpdGVsbigiZCA9ICIsIGQpOwoJLy8gW1tbMSwgMiwgM10sIFs0LCAxNSwgMTgsIDIxLCA4XV0sCgkvLyAgW1s5LCAxMF0sIFsxMSwgMTIsIDEzXV1dIC8vIE9LCn0=
a = [1, 2, 3]
b = [2, 4, 6]
d[0][1][1 .. $ - 1] = [5, 6, 7]
c = [[[1, 2, 3], [4, 15, 18, 21, 8]], [[9, 10], [11, 12, 13]]]
d = [[[1, 2, 3], [4, 15, 18, 21, 8]], [[9, 10], [11, 12, 13]]]