proposal for double object program -- needs work