         f -1 f
     ] if* ;
 
+PRIVATE>
+
 : fuzzy ( full short -- indices )
     dup [ length <vector> 0 ] curry 2dip
     [ (fuzzy) ] with all? 2drop ;
+
+<PRIVATE
 
 : (runs) ( runs n seq -- runs n )
     [

    rot [ ch>lower ] [ ch>upper ] bi
    '[ dup _ eq? [ drop t ] [ _ eq? ] if ] find-from drop ;

PRIVATE>

:: (fuzzy) ( accum i full ch -- accum i ? )
    ch i full smart-index-from [
        [ accum push ]

        ] keep pick last push
    ] each ;

PRIVATE>

: runs ( seq -- newseq )
    [ V{ } clone 1vector ] dip [ first ] keep (runs) drop ;

<PRIVATE

: score-1 ( i full -- n )
    {
