Refactor functional value