Both functions allow to replace/modify binding context and apply it to unbound nodes. "Unbound" means that my own custom bindings that want to use these useful functions must always return { controlsDescendantNodes: true } in init function.
So I cannot understand what the difference between them?