generalized sources, first step