Re-implementation using custom binding handler