sc' hist state = case terminate hist (stateTagBag state) of
    Stop           -> split (sc hist)  state
    Continue hist' -> split (sc hist') (reduce state)
sc' hist state = case terminate hist (stateTagBag state) of
    Stop           -> split (sc hist)  state
    Continue hist' -> split (sc hist') (reduce state)
sc' hist state = case terminate hist (stateTagBag state) of
    Stop           -> split (sc hist)  state
    Continue hist' -> split (sc hist') (reduce state)