functional knowledge