 MIXIN: collector
 GENERIC: adjust-allowances ( salary w4 collector -- newsalary )
 GENERIC: withholding ( salary w4 collector -- x )
-GENERIC: net ( salary w4 collector -- x )
 
 TUPLE: tax-table single married ;
 

M: minnesota withholding ( salary w4 collector -- x )
    [ adjust-allowances ] 2keep marriage-table tax ;

TUPLE: total ;
INSTANCE: total collector

! Totals
M: total net ( salary w4 collector -- x )
    >r dupd r>
    [ withholding ] 3keep
    drop <federal> withholding + - ;

M: total withholding ( salary w4 collector -- x )
    >r >r dup r> r> net - ;

    [ fica-tax ] 2keep
    medicare-tax + + ;


! Minnesota
: minnesota-single ( -- triples )
