added separate add() methods, invoked by build() and contextmoses