IE Range bug

IE11 implements Ranges, but they cannot end with a newline

HTML

<div>x</div>
		<pre id=result></pre>

JavaScript

var div = document.querySelector('div');
			var pre = document.querySelector('#result');
			var rng = document.createRange();
			rng.selectNodeContents(div);
			var text = '12\n34\n';
			rng.deleteContents();
			rng.insertNode (document.createTextNode(text));
			pre.innerHTML += JSON.stringify(rng.toString())+'<br>';
			rng.setEnd(div.firstChild, 3);
			pre.innerHTML += JSON.stringify(rng.toString())+'<br>';
			rng.setEnd(div.firstChild, 4);
			pre.innerHTML += JSON.stringify(rng.toString())+'<br>';
			var text = '12\r\n34\r\n';
			rng.deleteContents();
			rng.insertNode (document.createTextNode(text));
			pre.innerHTML += JSON.stringify(rng.toString())+'<br>';
			rng.setEnd(div.firstChild, 4);
			pre.innerHTML += JSON.stringify(rng.toString())+'<br>';
			rng.deleteContents();
			rng.insertNode (document.createTextNode('56'));
			rng.selectNodeContents(div);
			pre.innerHTML += JSON.stringify(rng.toString())+'<br>'; // the \r\n were deleted correctly (they were part of the range); it's just toString() that is buggy.