Add functional-thinking