 
 		public function map(clazz:Class):GuardsAndHooksMapBinding
 		{
-			_hooksByClazz[clazz] = new GuardsAndHooksMapBinding();
+			_mappingsByClazz[clazz] = new GuardsAndHooksMapBinding();
 			
-			return _hooksByClazz[clazz];
+			return _mappingsByClazz[clazz];
 		}
 		
 		public function mapMatcher(matcher:ITypeMatcher):GuardsAndHooksMapBinding
 		{
 			const filter:ITypeFilter = matcher.createTypeFilter();
-			_hooksByMatcher[filter] = new GuardsAndHooksMapBinding();
+			_mappingsByMatcher[filter] = new GuardsAndHooksMapBinding();
 			
-			return _hooksByMatcher[filter];
+			return _mappingsByMatcher[filter];
 		}
 		
 		public function process(item:*):Boolean


		public function HookMap()
		{
			_hooksByMatcher = new Dictionary();
			_hooksByClazz = new Dictionary();
		}

		/*============================================================================*/

			
			var interested:Boolean = false;
			
			for (var clazz:* in _mappingsByClazz)
			{
				if(item is (clazz as Class))
				{
					interested = true;
					if(!blockedByGuards(_mappingsByClazz[clazz].guards) )
						hooksProcessor.runHooks(injector, _mappingsByClazz[clazz].hooks);
				}
			}
			
			for (var filter:* in _mappingsByMatcher)
			{
				if(itemPassesFilter(item, filter as ITypeFilter))
				{
					interested = true;
					if(!blockedByGuards(_mappingsByMatcher[filter].guards) )
						hooksProcessor.runHooks(injector, _mappingsByMatcher[filter].hooks);
				}
			}
			
