Array#split preserving the calling array

Before:
a = [1, 2, 3, 4, 5]
a.split(3) # => [[1, 2], [4, 5]]
puts a # => [] 

Result: #split() does not preserve the original array [1, 2, 3, 4, 5].


After:
a = [1, 2, 3, 4, 5]
a.split(3) # => [[1, 2], [4, 5]]
puts a # => [1, 2, 3, 4, 5]