protected void flowThrough(Object outValue, Object unit,
            Object inValue)
    {
        FlowSet in  = (FlowSet) inValue;
        FlowSet out = (FlowSet) outValue;
        Stmt    s   = (Stmt)    unit;
        // Copy out to in
        out.copy( in );
        // Take out kill set
        Iterator boxIt = s.getDefBoxes().iterator();
        while( boxIt.hasNext() ) {
            final ValueBox box = (ValueBox) boxIt.next();
            Value value = box.getValue();
            if( value instanceof Local && value.toString().equals("a"))
                myRemove(value, in);
        }

        // Add gen set
        boxIt = s.getUseBoxes().iterator();
        while( boxIt.hasNext() ) {
            final ValueBox box = (ValueBox) boxIt.next();
            Value value = box.getValue();
            if( value instanceof Local && value.toString().equals("a"))
                in.add( value );
        }
    }