printing and non-printing complete