 	# ここでここまでのチェックを実際に行うなら
 	# loadURL, executeHandler 内で同じチェックは行う必要がないはずなので
 	# それぞれのメソッドが簡潔になるようにリファクタする必要がある
-	_matchCheck:(fragment)->
+	_matchCheck:(fragment, handlers)->
 		matched = []
-		for handler in @.handlers
+		for handler in handlers
 			if handler.rule is fragment
-				matched.push true
-				
-			if handler.test(fragment)
+				matched.push handler
+			else if handler.test(fragment)
 				if handler.isVariable and handler.types.length > 0
 					#型チェック用
 					args = handler._extractParams(fragment)						

		return @

	#URL を読み込む
	loadURL:(fragmentOverride)->
		fragment = @.fragment = @getFragment(fragmentOverride)
		matched = []

		if @.beforeAnytimeHandler or @.beforeHandlers.length > 0
			@._beforeDeffer = new Deffered()
			@._beforeDeffer.queue = []

			return @.location.assign(url)
		#イベントディスパッチ
		@dispatchEvent(new KazitoriEvent(KazitoriEvent.CHANGE, next, prev))
		@loadURL(frag, matched)
		return 

	#中断する
