fix program construction