initial index (from) should lie between 0 and original.length (inclusive).

value at original is placed to the initial element of copy. Except for from == original.length or from == to.

final index (to) should be greater than or equal to from. In some cases it could be greater than original.length in this case 0 is placed in all elements of copy whose index is >= original.length (from).