add halftone functions