docs: function (input, controller, controller_property) {
  	return {
  		input      : input,
  		value      : controller[controller_property] = input.invoke(),
  		is_changed : function () {
  			var value = controller[controller_property] = this.input.invoke();
  			if (this.value !== value) {
  				this.value = value;
  				return true;
  			}
  		}
  	};
  }