@@ -2622,8 +2622,7 @@ var Dispatcher = function() {
26222622 content.appendChild(Render.render(currentElement));
26232623 var w = document.getElementById('widthChecker').offsetWidth;
26242624 if (w !== window.innerWidth) {
2625− Dispatcher.notify(Elm.Window.dimensions.id,
2626− Value.Tuple(w, window.innerHeight));
2625+ Dispatcher.notify(Elm.Window.dimensions.id, Value.Tuple(w, window.innerHeight));
26272626 }
26282627 program = Elm.Signal.lift(function(value) {
26292628 var content = document.getElementById('content');
@@ -2655,7 +2654,7 @@ var Dispatcher = function() {
26552654 function filterDeadInputs() {
26562655 var temp = [];
26572656 for (var i = inputs.length; i--; ) {
2658− if (isAlive(inputs[i])) { temp.push(inputs[i]); }
2657+ if (isAlive(inputs[i])) temp.push(inputs[i]);
26592658 }
26602659 inputs = temp;
26612660 }
@@ -2940,12 +2939,12 @@ Elm.Mouse = function() {
29402939 var hasListener2 = Dispatcher.notify(clicks.id, Value.Tuple());
29412940 Dispatcher.notify(isClicked.id, false);
29422941 if (!hasListener1 && !hasListener2)
2943− this.removeEventListener('click',arguments.callee,false);
2942+ this.removeEventListener('click',arguments.callee,false);
29442943 });
29452944 Value.addListener(document, 'mousedown', function(e) {
29462945 var hasListener = Dispatcher.notify(isDown.id, true);
29472946 if (!hasListener)
2948− this.removeEventListener('mousedown',arguments.callee,false);
2947+ this.removeEventListener('mousedown',arguments.callee,false);
29492948 });
29502949 Value.addListener(document, 'mouseup', function(e) {
29512950 var hasListener = Dispatcher.notify(isDown.id, false);
@@ -3214,6 +3213,7 @@ Elm.Prelude = function() {
32143213 return {eq : Value.eq,
32153214 id : function(x) { return x; },
32163215 not : function(b) { return !b; },
3216+ xor : function(x) { return function(y) { return x != y; }; },
32173217 fst : function(p) { return p[1]; },
32183218 snd : function(p) { return p[2]; },
32193219 rem : function(x) { return function(y) { return x % y; }; },