 							
 							item = []
 							for key in keys
-								specific = $interpolate("{{#{key}}}")(scope)
-								specific ?= attrs[key]
+								
+								specific = scope[key]
+								specific = attr[key] unless specific
 								
 								item.push specific if specific
 							

			directive.candidateKeys ?= []
			directive.candidateKeys.unshift 'id'
			
			candidateHooksInvoked = {}
			
			currentSkinKey = null
			defaultSkinKey = config.get 'packageConfig:shrub-skin:default'
			
			# Proxy link function to add our own directive retrieval and
			# compilation step.
			link = directive.link
			directive.link = (scope, element, attrs, controller) ->
				
				# Save top-level arguments for later calls to link functions.
				topLevelArgs = arguments
				
				# Current template candidate.
				candidate = null
				
				recalculateCandidate = ->
				

					# interpolate candidate keys, and falling back to
					# attribute values, if any. Candidate arrays are
					# joined by single dashes.
					candidateList = do ->
						list = []
						
						for keys in directive.candidateKeys
