 ! Copyright (C) 2009 Doug Coleman.
 ! See http://factorcode.org/license.txt for BSD license.
 USING: accessors arrays ascii assocs assocs.extras calendar
-calendar.english combinators combinators.smart grouping
-interval-maps io.encodings.utf8 io.files kernel math math.parser
-memoize namespaces sequences sequences.extras sorting splitting
-splitting.extras ;
+calendar.english combinators combinators.short-circuit
+combinators.smart csv grouping interval-maps io.encodings.utf8
+io.files kernel math math.parser memoize namespaces sequences
+sequences.extras sorting splitting splitting.extras ;
+QUALIFIED: sets
 IN: zoneinfo
 
 CONSTANT: zoneinfo-paths

    "vocab:zoneinfo/northamerica"
    "vocab:zoneinfo/pacificnew"
    "vocab:zoneinfo/southamerica"
    "vocab:zoneinfo/etcetera"
    "vocab:zoneinfo/factory"
    "vocab:zoneinfo/leapseconds"
    "vocab:zoneinfo/systemv"
}

SYMBOL: last-zone


        [ 3 tail harvest ]
    } cleave raw-zone boa ;

: parse-zoneinfo-line ( seq -- tuple )
    dup first >lower
    {
        { "rule" [ parse-rule ] }
