first pass implementation of linearity...