         return i
       i++
     return -1
-  
+
 
 ## Deffered
 # **internal**


#うーん…
class InternalGroup
  prefix: null #root ? 
  rules: []
  constructor:(prefix, rules)->
    @.prefix = prefix

    if not options
      options = @._changeOptions
    url = @.root + @.fragment.replace(routeStripper, '')
    if not @.options.silent
      if @._hasPushState
        @.history[ if options.replace then 'replaceState' else 'pushState' ]({}, document.title, url)
      else if @._wantChangeHash
        @_updateHash(@.location, fragment, options.replace)
        if @.iframe and (fragment isnt @getFragment(@getHash(@.iframe)))
          if !options.replace
            @.iframe.document.open().close()
          @_updateHash(@.iframe.location, fragment, options.replace)
      else
        return @.location.assign(url)

    #イベントディスパッチ
    @dispatchEvent(new KazitoriEvent(KazitoriEvent.CHANGE, @.fragment, @.lastFragment))
