         [ letter? ]
         [ LETTER? ]
         [ digit? ]
-        [ "/_-." member? ]
+        [ "/_-.:" member? ]
     } 1|| ; foldable
 
 <PRIVATE


PRIVATE>

: url-decode ( str -- str )
    [ 0 swap url-decode-iter ] "" make utf8 decode ;

<PRIVATE


PRIVATE>

: url-encode ( str -- encoded )
    [
        [ dup url-quotable? [ , ] [ push-utf8 ] if ] each
    ] "" make ;
