var destroy = require('../utils/destroy');

module.exports = function(value, cb, scope) {
	scope = scope || null;
	var toBeDestroyed = cb.call(scope, value.value());
	var canceler = value.onChange(function(val) {
		destroy(toBeDestroyed);
		toBeDestroyed = cb.call(scope, val);
	});
	return function() {
		canceler();
		destroy(toBeDestroyed);
	};
};

@@ -1,11 +1,14 @@
-var
+import
  destroy
@@ -12,18 +12,13 @@
 roy 
-= require(
+from 
 '../
@@ -35,28 +35,53 @@
 roy'
-);%0A%0Amodule.exports =
+%0Aimport on from '../utils/on'%0A%0Aexport default
  fun
@@ -202,23 +202,28 @@
 r = 
+on(
 value
-.onC
+, 'c
 hange
-(
+', 
 func

fix bindValueDestroyable